In this article
Security Champions e seu papel
Como criar seu programa de Security Champions
Um programa de Security Champions reúne profissionais que geralmente são desenvolvedores da equipe de engenharia, com conhecimento especializado em determinadas áreas. Eles são responsáveis por coordenar, acompanhar e relatar problemas de segurança em suas equipes e têm autonomia para tomar decisões, sem serem os únicos responsabilizados por problemas de segurança. Eles trabalham em estreita colaboração com as equipes de segurança e AppSec em estratégias de mitigação, ajudam na garantia de qualidade e nos testes e até contribuem para o desenvolvimento de ambientes de CI (integração contínua).
Um bom Security Champion costuma ser um desenvolvedor com grande interesse por segurança. O modelo mais eficaz geralmente conta com um Security Champion por equipe de desenvolvimento ou grupo de equipes. Assim, fica claro a quem recorrer para obter ajuda com segurança. Alguns programas permitem que vários desenvolvedores de cada equipe participem, o que pode reduzir gargalos, mas tornar a comunicação menos simples.
Security Champions voluntários
O ideal é que o desenvolvedor se torne um Security Champion por vontade própria, e não porque foi obrigado a assumir essa função. Muitas empresas que querem ter representantes em todas as equipes de desenvolvimento exigem que cada equipe participe do programa. Ainda assim, cabe à equipe e aos desenvolvedores decidir quem vai participar.
Você pode sugerir que tipos de desenvolvedores se encaixariam bem no programa, considerando as atividades e o nível de autonomia necessários. Em nossas conversas, algumas organizações exigiam a participação de um desenvolvedor sênior, enquanto outras incentivavam desenvolvedores de qualquer nível de experiência a participar. Contar apenas com voluntários tende a atrair pessoas que realmente querem fazer parte do grupo, mas pode deixar algumas áreas da organização sem cobertura.
Representação da equipe de segurança
A equipe de segurança também participa como coach ou mentor. Um coach de segurança costuma trabalhar com vários Security Champions, de acordo com sua área de responsabilidade na organização. Esses coaches dão suporte aos participantes e promovem relacionamentos importantes para que o programa funcione bem.
Um desafio antigo é promover o entendimento entre desenvolvedores e equipes de segurança. Integrar profissionais de segurança às equipes de desenvolvimento e fazer com que desenvolvedores trabalhem com as equipes de segurança pode gerar empatia e simplificar processos. A colaboração entre áreas ajuda cada equipe a entender os desafios das outras e traz novas perspectivas que beneficiam a todos.
Treinamento e desenvolvimento profissional
Oferecer um bom treinamento aos Security Champions é essencial para o sucesso. Os desenvolvedores devem aprender sobre segurança pela perspectiva de um invasor, por meio de exercícios práticos de hacking, modelagem de ameaças, programação segura, conceitos de vulnerabilidade e priorização. Métodos tradicionais, como cursos online e aulas com instrutor, são valiosos, mas vale considerar formatos mais envolventes, como gamificação e desafios de segurança, para aumentar a participação. Conferências, programas internos de certificação e certificações do setor também têm seu papel.
O treinamento de segurança não deve se limitar aos Security Champions ou à equipe de segurança: deve envolver toda a organização para criar uma cultura de conscientização sobre segurança. Programas de conscientização, sessões de aprendizado durante o almoço, simulações de resposta a incidentes e encontros internos sobre segurança podem reforçar o treinamento formal.
Gestão do programa
A frequência dos encontros dos Security Champions varia, mas é comum fazer reuniões mensais. Antes da COVID, encontros presenciais semestrais ou anuais eram populares tanto para reconhecer a participação quanto para compartilhar conhecimento. As reuniões devem ter uma estrutura e um planejamento bem definidos para serem produtivas.
A falta de gestão do programa é um problema comum. Em organizações maiores, pode ser necessário ter um gerente dedicado; nas menores, alguém ainda precisa cuidar da logística, da prestação de contas e das reuniões regulares. Essa função envolve organizar os participantes, as responsabilidades e as recompensas.
Atividades bem definidas
Um aspecto fundamental de um programa bem-sucedido é definir com clareza as funções, responsabilidades e atividades. Os Security Champions não precisam necessariamente executar o trabalho de segurança, mas devem garantir que a equipe siga as práticas e os procedimentos de segurança. Entre suas atribuições podem estar a modelagem de ameaças, a criação de testes (de testes unitários a testes de integração), o alinhamento do monitoramento e dos logs com problemas no código e a atualização sobre ameaças e defesas de segurança, muitas vezes com recursos como o OWASP Top 10.
Manter tudo simples é essencial. Comece com apenas uma ou duas atividades bem definidas para os Security Champions e amplie o escopo à medida que o programa amadurecer. É fundamental documentar o que se espera dos participantes e de suas equipes.
Recompensas e reconhecimento
Cada pessoa tem uma ideia diferente do que significa receber uma boa recompensa ou reconhecimento por participar de um programa de Security Champions. Algumas não querem nada em troca: só querem ampliar seus conhecimentos ou fazer parte de um grupo de Security Champions (conhecimento é a melhor recompensa). Outras veem a segurança como uma possível carreira, e essa é uma boa forma de dar os primeiros passos nessa área. A maioria valoriza outras vantagens, como encontros presenciais, mencionados anteriormente, ou ingressos para conferências de segurança, como DefCon ou Black Hat. O reconhecimento interno também pode divulgar o programa, seja por meio de menções feitas pelo vice-presidente e vistas pela liderança, seja em uma conferência interna da empresa. Por fim, às vezes tudo o que as pessoas querem é uma camiseta ou um moletom que demonstre seu vínculo com o grupo. Converse com sua equipe para descobrir a melhor forma de demonstrar apreço pela participação de cada pessoa.
Metas mensuráveis
Os programas de capacitação mais comuns combinavam treinamentos internos e externos com compartilhamento de conhecimento, além de um sistema de níveis representados por faixas. Você pode definir KPIs e expectativas sobre quantas pessoas que atuam em áreas críticas do desenvolvimento de aplicações devem alcançar cada nível. Por exemplo, se você tem um serviço essencial para os negócios que lida intensamente com dados confidenciais, pode ser importante ter um Security Champion com nível marrom ou preto nessa equipe. Já em áreas de risco muito baixo, talvez não seja tão importante que os Security Champions e as equipes tenham níveis mais avançados de treinamento em segurança. As faixas são concedidas com base em certificações, conclusão de treinamentos, horas dedicadas à segurança, defesa de projetos e compartilhamento de resultados com a equipe, entre outros critérios.
Reforço do sucesso
Você pode incentivar a adesão com reforço positivo e gamificação. Recompensas simples, reconhecimento e uma metodologia estruturada, adaptada aos objetivos da organização, podem fazer uma grande diferença. Entender o que combina com a cultura da empresa e o que motiva a equipe ajuda a criar um programa bem-sucedido e envolvente.
Segurança de IaC pensada para quem desenvolve
A Snyk protege sua infraestrutura como código do ciclo de vida do desenvolvimento de software até a execução na nuvem, com um mecanismo unificado de políticas como código para que todas as equipes possam desenvolver, implantar e operar com segurança.