7 dicas de AppSec do diretor de segurança de produto da Snowflake
Brian Piper
31 de agosto de 2023
0 minutos de leituraNa AWS re:Invent deste ano, Mic McCully, Field CTO da Snyk, conversou com Jacob Salassi, diretor de segurança de produto da Snowflake. Eles falaram sobre como a Snowflake superou vários desafios de segurança com a combinação certa de processos, mudanças na cultura da empresa e parceiros de ferramentas (incluindo a Snyk!). Leia para conhecer as práticas que Jacob e sua equipe estabeleceram para criar um programa de segurança de aplicações bem-sucedido.
Como a Snowflake estabeleceu as melhores práticas de AppSec
Como empresa regulamentada que trabalha com dados confidenciais e clientes de alto perfil — incluindo órgãos governamentais —, a equipe da Snowflake sabia que proteger suas aplicações era fundamental. Para isso, porém, Jacob e sua equipe precisavam superar vários desafios, como conquistar o apoio dos desenvolvedores e estabelecer processos consistentes. Durante a conversa com Mic na AWS re:Invent, Jacob compartilhou várias dicas para superar esses desafios, com base em sua experiência com a equipe da Snowflake.
Comece com empatia
Antes de tudo, um programa de segurança de aplicações depende do envolvimento dos desenvolvedores. Afinal, as equipes de desenvolvimento conhecem suas aplicações melhor do que ninguém e podem implementar as melhores práticas de segurança desde as primeiras etapas do ciclo de desenvolvimento.
Para conquistar o apoio dos desenvolvedores, a equipe da Snowflake começou pela empatia: buscou entender como funciona o desenvolvimento e quais são as oportunidades e os desafios que os desenvolvedores enfrentam no dia a dia. Nas palavras de Jacob: “Acho que o mais importante para mim sempre foi abordar [AppSec] pela perspectiva de um desenvolvedor.”
Estabeleça um ciclo de feedback
Para tornar eficaz a relação entre desenvolvimento e segurança, a equipe de Jacob sabia que precisava criar um espaço dedicado ao diálogo. Eles organizaram atividades de engajamento, como encontros semanais, pesquisas, conversas individuais e iniciativas para fortalecer a comunidade. Jacob descreveu a postura da equipe em relação ao feedback: “Você sempre tem a responsabilidade de demonstrar que ouviu.”
Priorize a excelência em engenharia
A equipe de Jacob também decidiu criar um programa de Security Champions. Primeiro, porém, definiu com clareza o que os desenvolvedores podiam fazer e o que deveria ficar a cargo de outras pessoas.
Jacob disse: “Algo muito importante na nossa abordagem é que falamos sobre excelência em engenharia e tentamos falar menos sobre segurança. Quando você ultrapassa a fronteira entre excelência em engenharia e segurança, é hora de se perguntar: ‘Devo pedir a um desenvolvedor que faça isso? Ou devo chamar um engenheiro de segurança?’ Acho que uma das coisas em que realmente nos concentramos é: ‘Até onde podemos levar um desenvolvedor sem ultrapassar essa fronteira? E onde ela termina?’”
Promova a responsabilidade
Outra dica de Jacob: capacite as pessoas a corrigir problemas de segurança no próprio trabalho, indo além da proteção do código próprio e de terceiros. Com isso em mente, a equipe começou a defender uma abordagem de infraestrutura como código (IaC).
Nas palavras dele: “Acho que todo mundo aqui entende que os desenvolvedores são responsáveis pelos bugs nos repositórios. Mas quantas pessoas acham que os desenvolvedores são responsáveis pelos bugs no servidor? Eu acho. E provavelmente muitos de vocês já passaram por situações em que operações de segurança ou outros engenheiros de segurança mexem em servidores de produção que não tiveram nada a ver com a criação. Você não sabe o que é aquilo, não construiu aquilo e, agora, precisa mexer no ambiente de produção e alterar pacotes… por isso, um dos nossos grandes focos é: como colocar tudo isso no código?”
Crie treinamentos direcionados
Jacob também destacou a importância de oferecer treinamentos periódicos e específicos para cada equipe. Ele disse: “O treinamento deve ser baseado nas funções e contextualizado. Não espere obter muito valor apresentando os mesmos slides para todas as equipes.”
Planeje toda a experiência de segurança
A equipe de Jacob também se concentrou em criar uma experiência de segurança integrada para os desenvolvedores, facilitando ao máximo a realização de atividades de segurança. Para isso, adotou uma estratégia ágil de fornecedores, que inclui as correções automatizadas de PR da Snyk para código próprio e o gerenciamento de projetos com JIRA.
Nas palavras de Jacob: “Passamos muito tempo garantindo que todas as informações necessárias estejam bem à vista e que as pessoas não precisem sair do ambiente em que estão ou do que já conhecem para resolver aquele problema específico.”
Documente, documente, documente
Para concluir, Jacob ressaltou a importância de documentar todas as atividades de segurança de aplicações para embasar conversas e decisões futuras. Ele disse: “Uma falha da AppSec que sempre me incomodou foi não preservar os próprios registros... esses são dados valiosos que você deve organizar e manter.”
Como a Snyk ajuda a Snowflake a alcançar esses objetivos
Alcançar esses objetivos não era tarefa fácil, então a equipe de segurança de produto da Snowflake trouxe a Snyk para suas iniciativas de segurança de aplicações. A Snyk ofereceu ferramentas para ajudar a equipe a ter sucesso, incluindo:
Ferramentas pensadas para desenvolvedores e integradas aos fluxos de trabalho que eles já usam
Correção de código próprio e de terceiros diretamente nas CLIs dos desenvolvedores
Integração simples com outras ferramentas, incluindo JIRA
Detecção de vulnerabilidades em dependências de imagens base e comandos do Dockerfile
Para saber mais sobre a parceria entre a Snowflake e a Snyk, assista à conversa completa de Jacob e Mic na AWS re:Invent 2023.




