Como a Voltos usa a Snyk para proteger seu próprio produto de segurança
Glenn Gillen
22 de fevereiro de 2017
0 minutos de leituraEste é um artigo convidado de Glenn Gillen. Glenn é um dos cofundadores da Voltos, um serviço que ajuda você a gerenciar com segurança os apps e as credenciais de serviço, e coautor do curso online Tiny Security Wins: Quick steps to secure your dev environment. Antes, ele liderava o ecossistema de complementos da Heroku e hoje investe ativamente em startups de ferramentas para desenvolvedores em estágio inicial.
A maioria das empresas afirma publicamente que “leva muito a sério a segurança dos clientes”, principalmente porque dizer o contrário pega mal. Para qualquer empresa que desenvolve um produto voltado à segurança, esse é um mantra que toda a equipe precisa colocar em prática. Afinal, não fazer isso acaba corroendo a confiança dos clientes e pode nos levar à falência.
Na Voltos, ajudamos desenvolvedores a gerenciar e compartilhar as credenciais e configurações de seus apps com a equipe e em toda a infraestrutura. Perder o foco em segurança compromete nossos clientes e a nós, então não estamos dispostos a correr riscos. Algumas das primeiras lições que aprendi sobre segurança da informação foram: não presuma que você é a pessoa mais inteligente, não ache que sabe todas as respostas, não suponha que cobriu todos os flancos e, acima de tudo, não tenha medo de pedir ajuda.
Conte com a Snyk para proteger você
Fazemos um bom trabalho para acompanhar os anúncios mais recentes de CVEs, aplicar correções rapidamente, testar e levar as mudanças para produção. Mas quem já tentou fazer isso sabe que dá bastante trabalho. E, com um ecossistema enorme de dependências aninhadas trazidas pelas comunidades de Node, React e Ruby, o esforço só aumenta. Some a isso o fato de que ninguém na empresa — nem uma pessoa nem uma equipe — se dedica exclusivamente a essa tarefa, e fica fácil imaginar como algo pode passar despercebido.
E algumas coisas passaram mesmo, como a vulnerabilidade de exposição remota de memória de severidade média mostrada acima.

Esse fluxo também pressupõe que acompanhar todos os CVEs é suficiente para garantir a máxima segurança. A verdade é que cerca de 85% das vulnerabilidades de npm/Node no banco de dados da Snyk não tinham um CVE anunciado!
Levamos menos de cinco minutos para criar uma conta na Snyk, executar uma análise nos nossos apps mais críticos e encontrar um problema. Com um único clique, foi possível criar um pull request (com instruções para resolver o problema!). Ficamos convencidos na hora.
Integrada perfeitamente ao fluxo de trabalho
As melhores ferramentas são aquelas que se encaixam discretamente no seu fluxo de trabalho ou que melhoram tanto sua produtividade que fazem você adaptar esse fluxo. Quem já tentou usar PGP no e-mail sabe o que uma ferramenta focada em segurança costuma significar para o fluxo de trabalho: uma enorme dor de cabeça.
O que mais gostamos na Snyk é que ela passa despercebida.

Cada pull request é verificado automaticamente em busca de vulnerabilidades, graças à integração nativa com o GitHub. Como abrimos PRs logo no início para discutir novos recursos, possíveis vulnerabilidades potenciais são identificadas assim que surgem. Não uma semana depois, quando queremos fazer o deploy e precisamos correr para encontrar alternativas. Nem depois que o código já foi para produção. Nem em uma auditoria de segurança trimestral, quando os clientes já ficaram expostos por três meses.
Nossos repositórios também são analisados regularmente, independentemente de alterações no código, e o Slack nos envia notificações por e-mail sobre vulnerabilidades descobertas desde nosso último commit. Isso é ótimo para bases de código mais estáveis e com menos atividade de desenvolvimento: é muito fácil deixar passar o que continua funcionando silenciosamente e pode representar um grande risco.
Análises sob demanda
Às vezes, não queremos seguir nosso fluxo habitual de PRs no GitHub para analisar a segurança do código. Pode ser um projeto paralelo, um teste em uma nova branch que ainda não estamos prontos para compartilhar ou simplesmente uma análise em uma linguagem de programação diferente da que configuramos como padrão no repositório. A ferramenta de CLI da Snyk nos permite fazer essa análise quando precisamos, sem nos obrigar a usar um único fluxo de trabalho para todas as situações.
Pratique o que você prega

Sem dúvida, contar com uma terceira parte para nos ajudar a identificar vulnerabilidades traz muito valor. Mas, para mim, um dos aspectos mais valiosos é o reforço sutil de uma cultura que mostra que valorizamos a segurança.
Cada pull request aberto recebe aquele pequeno sinal verde. É um lembrete constante de que tudo o que você desenvolve precisa levar a segurança em consideração, sempre.
Comece a jogar Capture the Flag
Aprenda a resolver desafios de Capture the Flag assistindo à gravação sob demanda do nosso workshop virtual introdutório.


