Skip to main content

Executando uma campanha de segurança para corrigir alertas em escala

Inicie uma campanha de segurança focada para corrigir uma classe específica de alertas de segurança, como XSS (script entre sites), em toda a sua organização.

Quem pode usar esse recurso?

Organizações no GitHub Team com o GitHub Secret Protection or GitHub Code Security habilitado

Iniciando sua primeira campanha

Neste tutorial, você planejará e executará sua primeira campanha de segurança em toda a organização focada em alertas XSS. Ao longo do caminho, você aprenderá a selecionar os alertas certos, preparar os desenvolvedores para o sucesso e estruturar uma campanha que impulsione melhorias significativas em sua postura de segurança.

Imagine que você identificou um padrão recorrente de vulnerabilidades XSS em vários repositórios. Em vez de abordar alertas um a um, você decide executar uma campanha coordenada que reduz o risco, ajudando os desenvolvedores a criar confiança na codificação segura.

1. Definir uma meta focada

Ao executar uma campanha em escala, é tentador direcionar todos os alertas urgentes ao mesmo tempo. Se os desenvolvedores já tiverem uma base forte na codificação segura e na capacidade disponível, isso poderá funcionar.

No entanto, se sua meta for reduzir o risco e melhorar as práticas de codificação seguras, uma campanha focada geralmente será mais eficaz. Escolher um único tipo de vulnerabilidade, como cross-site scripting, permite que os desenvolvedores reconheçam padrões, apliquem o aprendizado em várias correções e ganhem impulso.

Para esta campanha, você decide se concentrar em alertas XSS em toda a sua organização, dentro dos limites de quantos alertas uma única campanha pode incluir.

2. Selecione alertas para sua campanha

Na página de alertas de segurança, comece filtrando alertas de script entre sites. Você também pode usar um modelo de campanha predefinido, como script entre sites (CWE-79) para definir rapidamente o escopo. Para obter informações sobre como filtrar alertas, consulte Visão geral da filtragem de alertas na segurança.

Observação

As campanhas de segurança podem incluir até 1.000 alertas. Se sua organização tiver mais de 1.000 alertas XSS, restrinja seus filtros (por exemplo, por repositório, gravidade ou idioma) até que o número de alertas correspondentes esteja dentro desse limite ou planeje várias campanhas para cobrir os alertas restantes.

Se Autofixo do Copilot estiver disponível para sua campanha, você poderá refinar ainda mais o escopo usando o autofix:supported filtro. Isso permite que os desenvolvedores aproveitem as sugestões de correção geradas por IA para corrigir alertas com mais eficiência.

Antes de iniciar a campanha, você também prepara materiais educacionais de apoio. Por exemplo:

  • Crie um repositório com diretrizes sobre como evitar vulnerabilidades XSS.
  • Link para recursos da OWASP Foundation, como Cross Site Scripting (XSS).
  • Forneça exemplos de padrões de codificação seguros e abordagens de teste.

Você incluirá links para esses recursos na descrição da campanha para que os desenvolvedores possam referenciá-los enquanto trabalham por meio de seus alertas atribuídos.

3. Atribuir gerentes de campanha e definir canais de comunicação

Antes de iniciar a campanha, decida quem dará suporte aos desenvolvedores durante todo o processo de correção.

Ao criar uma campanha de segurança, você deve atribuir um ou mais gerentes de campanha. Os gerentes de campanha devem ser:

  • Um usuário com a função de proprietário da organização ou a função de gerenciador de segurança ou
  • Um membro de uma equipe com uma dessas funções

Escolha os gerentes que podem:

  • Responder perguntas sobre vulnerabilidades XSS
  • Examinar solicitações de pull para correções
  • Ajudar a resolver casos de borda ou cenários de correção complexos

Como os gerentes de campanha são visíveis para os desenvolvedores que participam da campanha, essa também é uma oportunidade para estabelecer uma comunicação clara. Ao criar a campanha, inclua um link de contato, como um link para um thread GitHub Discussions ou outro canal de comunicação, para que os desenvolvedores saibam onde fazer perguntas.

Ao definir as expectativas antecipadamente e tornar o suporte visível, você aumenta a confiança e melhora as taxas de correção.

4. Criar e publicar a campanha

Agora você está pronto para criar a campanha.

Ao definir a campanha:

  • Use seu filtro ou modelo XSS para selecionar os alertas.
  • Adicione uma descrição clara explicando a meta da campanha.
  • Inclua links para os recursos educacionais que você preparou anteriormente.
  • Defina uma data de conclusão realista com base no número de alertas e na capacidade de correção esperada.

Se você não tiver certeza sobre o escopo, crie uma campanha de rascunho primeiro. Um rascunho permite que você examine os alertas que serão incluídos e colaborem internamente antes da publicação.

5. Habilitar o acompanhamento de problemas para aumentar a visibilidade

Para ajudar os desenvolvedores a acompanhar seu trabalho e dar visibilidade aos gerentes, você pode optar por criar automaticamente um problema em cada repositório incluído na campanha. Isso permite que os desenvolvedores gerenciem seu trabalho de correção dentro de seus fluxos de trabalho e placas de projeto existentes.

Quando você habilita a criação de tíquetes, o "Resumo", o "Link de contato" e a data de vencimento da campanha são incluídos automaticamente no corpo do tíquete. Se você atualizar a breve descrição, o link de contato ou a data de conclusão, essas alterações serão refletidas nos problemas. Além disso, quando a campanha atinge sua data de conclusão ou é fechada, um comentário é feito em cada tópico para notificar os desenvolvedores. Essa integração ajuda a manter a comunicação clara e mantém a campanha organizada em vários repositórios.

6. Suporte para desenvolvedores durante a correção

Depois que a campanha estiver ativa, sua função mudará de organizador para habilitador. Os desenvolvedores começarão a revisar e corrigir alertas XSS em seus repositórios. Para ajudá-los a se mover com eficiência e confiança:

  • Verifique se os gerentes de campanha estão disponíveis para revisar pull requests e responder a perguntas.
  • Incentivar os desenvolvedores a usar Chat Copilot para entender melhor por que o código é vulnerável e como validar as correções.
  • Se houver suporte, incentive os desenvolvedores a revisar e testar as sugestões Autofixo do Copilot antes de mesclar as alterações.

Se você preparou recursos educacionais anteriormente, faça referência a eles em discussões e revisões de pull requests. O reforço das diretrizes compartilhadas reduz as perguntas repetidas e ajuda a criar hábitos de codificação seguros a longo prazo.

Mantendo-se visível e responsivo durante a campanha, você reforça que este é um esforço colaborativo, não apenas um exercício de conformidade.

7. Definir um prazo realista

Você define uma data de conclusão ao criar a campanha. À medida que a campanha progride, verifique se a linha do tempo permanece alcançável.

Ao definir ou ajustar o prazo, considere:

  • O número de alertas incluídos na campanha
  • A capacidade de correção esperada dos desenvolvedores (por exemplo, quanto tempo eles podem dedicar para corrigir alertas junto com seu trabalho regular)
  • Quaisquer prazos ou feriados futuros da empresa que possam afetar a disponibilidade

A menos que a correção de alerta seja uma iniciativa dedicada, a maioria dos desenvolvedores equilibrará esse trabalho junto com o desenvolvimento de recursos. Definir uma linha do tempo realista aumenta a participação e impede o desânimo.

Se necessário, você pode executar várias campanhas focadas ao longo do tempo em vez de tentar resolver todos os tipos de alerta ao mesmo tempo.

8. Feche a campanha e itere

À medida que o prazo se aproxima, monitore o progresso e colabore em quaisquer correções complexas restantes.

Quando a campanha é fechada:

  • Os problemas do repositório são atualizados automaticamente.
  • Os desenvolvedores resolveram um conjunto focalizado de vulnerabilidades.
  • Sua organização reduziu o risco de maneira mensurável.

Mais importante, os desenvolvedores ganharam experiência prática reconhecendo e corrigindo uma classe específica de vulnerabilidade.

A partir daqui, você pode repetir o processo com outro conjunto de alertas direcionado, como injeção de SQL, desserialização insegura ou segredos expostos, para melhorar constantemente a postura de segurança da sua organização ao longo do tempo.

Próximas etapas

Pronto para iniciar sua campanha? Para criar e gerenciar sua campanha de segurança, consulte Criando e gerenciando campanhas de segurança.