Configurações incorretas, vulnerabilidades conhecidas e sem correção e segurança de aplicações cloud native
17 de maio de 2021
0 minutos de leituraHá duas semanas, publicamos nosso relatório anual State of Cloud Native Application Security. Se você ainda não conferiu, aqui vai um resumo. Entrevistamos quase 600 desenvolvedores e profissionais de segurança para entender como a mudança para cloud native (transformação digital) alterou a postura de segurança deles. Em seguida, analisamos os resultados, extraímos insights valiosos e os reunimos em uma página interativa.
Os resultados trouxeram várias conclusões interessantes. Estas são algumas que, na minha opinião, se conectam muito bem:
Quase todos os entrevistados concordaram que, à medida que a adoção de cloud native aumenta, a segurança precisa ser incorporada por padrão.
Os entrevistados com pipelines altamente automatizados tinham o dobro de probabilidade de incluir testes de segurança em todo o ciclo de vida do desenvolvimento.
Os desenvolvedores se veem como parte essencial da segurança.
Esses pontos mostram um caminho claro para o DevSecOps, em que o sucesso da segurança depende do envolvimento dos desenvolvedores e da automação dos processos. Infelizmente, um indício de que muitas organizações ainda não chegaram lá aparece como complemento ao ponto 1: Mesmo concordando que a segurança precisa ser padrão, mais da metade dos entrevistados sofreu com uma configuração incorreta ou vulnerabilidades conhecidas e sem correção em suas aplicações cloud native.
Para detalhar melhor, os dois tipos de incidente mais comuns — com ampla vantagem — foram configurações incorretas (45%) e vulnerabilidades conhecidas e sem correção (38%). Somando os dois, 56% dos entrevistados passaram por um incidente envolvendo uma configuração incorreta ou uma vulnerabilidade conhecida e sem correção em suas aplicações cloud native. Esse número é ainda maior: 18% dos entrevistados não responderam à pergunta por ela ser delicada. Considerando a taxa de resposta de 82% a essa pergunta, 69% tinham uma configuração incorreta ou uma vulnerabilidade conhecida e sem correção em suas aplicações cloud native.
Com base nessas descobertas importantes, parece que, embora os desenvolvedores estejam assumindo mais responsabilidades (de segurança e operações), eles não conseguem gerenciar adequadamente as responsabilidades cada vez mais ligadas à infraestrutura. Isso não significa que os desenvolvedores não sejam capazes, mas sim que a carga de trabalho aumentou e as exigências de especialização se ampliaram. É hora de reavaliar esse novo cenário para quem desenvolve em cloud native.
"Com erros de configuração e vulnerabilidades conhecidas entre as principais preocupações e causas de incidentes, precisamos repensar como as equipes de desenvolvimento devem priorizar o trabalho de segurança. Quando o desenvolvedor é responsável por proteger toda a aplicação nativa da nuvem, muitas vezes é mais importante resolver essas questões básicas de segurança do que as vulnerabilidades no código personalizado da aplicação, por onde a maioria dos programas de segurança começa."

Guy Podjarny
Founder, Snyk
Não poderia ter dito melhor, Guy. Felizmente, esses dois problemas podem ser resolvidos com a implementação de ferramentas de segurança voltadas para desenvolvedores que possam: 1) identificar vulnerabilidades de segurança de forma abrangente em todas as etapas do ciclo de vida do desenvolvimento; e 2) fornecer contexto e ajudar a priorizar as vulnerabilidades.
As vulnerabilidades não podem ficar isoladas em silos e, mais do que isso, não podem ser priorizadas com base no silo em que estão. Configurações incorretas na infraestrutura podem deixar uma aplicação totalmente exposta a ataques, mesmo que o código esteja bem protegido. Os desenvolvedores precisam de ferramentas que encontrem todas as vulnerabilidades e configurações incorretas no código, nas dependências, nos contêineres e na infraestrutura e, em seguida, apresentem uma lista completa e priorizada.
Priorizar significa avaliar a gravidade da vulnerabilidade, o nível de sofisticação dos ataques e a exposição a atacantes. Se uma vulnerabilidade pode ser grave, mas só fica acessível depois que os atacantes ultrapassam várias outras camadas de segurança, reduza sua prioridade. Se uma única atualização da imagem base puder corrigir 100 vulnerabilidades, aumente a prioridade. Não há como um desenvolvedor corrigir todas as vulnerabilidades; por isso, é preciso saber no que se concentrar.
As ferramentas de segurança precisam oferecer esse contexto completo, porque não podemos esperar que todo desenvolvedor seja especialista em segurança — essa expectativa simplesmente não é razoável. Em vez disso, as ferramentas de segurança voltadas para desenvolvedores devem atuar como especialistas de confiança, sempre à mão na caixa de ferramentas de cada desenvolvedor. É preciso reduzir ao máximo as barreiras à segurança para manter aplicações e infraestruturas cloud protegidas.
Enfim, esse foi um mergulho em apenas um dos temas abordados no relatório State of Cloud Native Application Security. Se você já trabalha com cloud native ou está pensando em fazer essa transição, recomendo muito que confira o relatório. Você também pode ouvir Guy e eu analisarmos o relatório em um episódio recente do podcast The Secure Developer. Se você ler o relatório (ou ouvir o podcast) e quiser contextualizar e priorizar a segurança das suas aplicações cloud native, crie uma conta gratuita na Snyk.