Criando uma linguagem para segurança com Adam Jacob, da Chef
Hayley Denbraver
27 de novembro de 2019
0 minutos de leituraCom a chegada do fim de 2019, vamos relembrar alguns episódios incríveis do nosso podcast The Secure Developer. Confira a primeira publicação aqui e a segunda aqui.
O podcast The Secure Developer faz parte da nossa comunidade de educação em segurança independente de fornecedores, MyDevSecOps. A comunidade, que também já foi conhecida como The Secure Developer, se reúne virtualmente pelo nosso grupo no Slack e em eventos online, além de presencialmente nos eventos DevSecCon pelo mundo.
Sobre nosso convidado
Adam Jacob é cofundador e CTO da Chef, anteriormente conhecida como Opscode, onde criou o projeto de aplicações automatizadas e de código aberto Habitat. Antes disso, Adam fundou a HJK Solutions, uma consultoria de infraestrutura automatizada. Recentemente, ele participou do podcast The Secure Developer para conversar sobre:
o universo de DevOps
a criação de uma linguagem para falar sobre segurança
os benefícios de um sistema contínuo no monitoramento de vulnerabilidades
Vamos à conversa.
DevOps: ferramentas ou pessoas?
O consenso geral do setor é que DevOps tem mais a ver com pessoas, mas Adam destaca que, necessariamente, também envolve ferramentas. Qualquer pessoa pode dizer que quer criar uma boa cultura de DevOps. Mas, no fim das contas, isso não passa de palavras. Segundo ele, “geralmente, é a tecnologia que reforça esses comportamentos culturais”.
Esse raciocínio também se aplica à segurança. Qualquer pessoa pode dizer que quer trabalhar com mais segurança, mas, sem a combinação certa de sistemas, equipes e tecnologia, você não alcançará seus objetivos.
Você precisa tanto das ferramentas quanto da capacitação das pessoas. Se você tem as ferramentas, mas as pessoas não sabem usá-las ou não entendem para que servem, nunca alcançará seus objetivos de segurança.
Criando uma linguagem para falar sobre segurança
Quando o assunto é segurança, o contexto é fundamental. Adam e sua equipe trabalharam nisso na Chef desenvolvendo o InSpec, que é, essencialmente, uma linguagem para que os membros da equipe descrevam a postura de segurança e o código. Outro desafio é que muitos aspectos da segurança são “invisíveis”: se você não tem como falar sobre eles ou acompanhá-los, não terá sucesso.
A segurança deve estar integrada ao processo desde o primeiro dia. Poder gerar relatórios contínuos de vulnerabilidades com ferramentas como o InSpec traz benefícios duradouros e leva a mudanças rápidas e mensuráveis.
Encontrar uma forma de os desenvolvedores falarem sobre segurança na linguagem do código é valioso, pois permite que mais pessoas participem do processo de segurança. Além disso, especialistas em segurança podem auditar o código, em vez de a documentação, e incorporar tudo isso como parte viva do modelo de implantação. Adam acredita que esse processo — também conhecido como SecDevOps — acaba garantindo um nível mais alto de segurança.
Implantação contínua x entrega contínua
A implantação contínua de alto nível, integrada ao código de toda a infraestrutura, permite alcançar previsibilidade. No entanto, a própria ideia de “contínuo” é que você precisa continuar a implantação. Em outras palavras, é possível pausar, mas nunca parar. Já a entrega contínua, segundo Adam, permite fazer pausas.
Na entrega contínua, a ideia é fazer a entrega quando fizer sentido e sempre que o negócio exigir. Isso contrasta com a implantação contínua, em que a ideia é entregar a cada vez que você faz um commit. Por isso, Adam acredita que a entrega contínua dá bastante espaço para dizer: “Este projeto precisa passar por uma revisão de segurança para ser entregue”, e ainda assim manter o processo contínuo. É uma diferença sutil, mas que pode ajudar muitas equipes a repensar de forma positiva a relação entre desenvolvimento e segurança.
Adam também destaca que um dos benefícios da entrega e da implantação contínuas é permitir que as equipes identifiquem erros quando ainda são pequenos. Essa proposta de valor é especialmente convincente em segurança. Se você está procurando uma falha de segurança, poder examinar apenas um trecho com cerca de 100 linhas de código que precisam ser alteradas, em vez de analisar as 100 mil ou 100 milhões de linhas existentes, é muito valioso.
A MyDevSecOps tem o compromisso de trazer palestrantes excelentes, como Jeff McAffer, para nossas sessões virtuais e para nosso podcast, The Secure Developer. Se você quer aprender mais sobre todos os aspectos da segurança, considere participar da comunidade.
