Skip to main content

Como criar e acompanhar campanhas de segurança

Você pode gerenciar campanhas de segurança diretamente na visão geral de segurança da sua organização.

Quem pode usar esse recurso?

Proprietários da organização, gerentes de segurança e membros da organização com a função de administrador

Organizações no GitHub Enterprise Cloud com o GitHub Advanced Security habilitado

Note

Atualmente, as campanhas de segurança estão em versão prévia pública e sujeitas a alterações.

Como criar uma campanha de segurança

As campanhas de segurança são criadas e gerenciadas por meio da guia Segurança da sua organização. Você escolhe os alertas a serem incluídos em uma campanha selecionando um modelo de campanha na barra lateral do dashboard “Visão geral” ou filtrando os alertas mostrados na exibição de alertas da code scanning da sua organização.

Para obter mais informações sobre como filtrar alertas, confira “Melhores práticas para corrigir alertas de segurança em escala” e “Visão geral da filtragem de alertas na segurança”.

Como criar uma campanha com base em um modelo

Os modelos de campanha contêm filtros para as seleções de alerta mais comuns. Todos eles também incluem o requisito de que há suporte para o GitHub Copilot Autofix em todos os tipos de alerta incluídos (ou seja, autofix:supported).

  1. Em GitHub, acesse a página principal da organização.

  2. No nome da organização, clique em Segurança do .

    Captura de tela da barra de navegação horizontal para uma organização. Uma guia, rotulada com um ícone de escudo e "Segurança", tem um contorno laranja.

  3. Na barra lateral esquerda, ao lado de “Campanhas”, selecione o ícone para começar a criar uma campanha.

  4. Selecione um dos modelos de filtro predefinidos para abrir uma caixa de diálogo “Nova campanha com base no modelo TEMPLATE_NAME”.

  5. Se a mensagem “Essa parece ser uma campanha grande” for exibida, selecione Voltar para filtros para ver a exibição de alertas da code scanning com o filtro de modelo de campanha mostrado.

    1. Adicione mais filtros para reduzir o número de alertas mostrados, por exemplo, filtrando por “Equipe” ou por propriedade personalizada.
    2. Quando houver menos de 1.000 alertas em 100 repositórios, selecione Criar campanha para reexibir a caixa de diálogo “Nova campanha”.

    Como alternativa, você pode selecionar Continuar criando uma campanha e criar a campanha. Os alertas serão omitidos até que haja menos de 1.000 alertas em menos de 100 repositórios restantes. Os alertas nos repositórios com pushes recentes são priorizados para inclusão na campanha.

  6. Edite o “Nome da campanha” e a “Descrição curta” de acordo com as necessidades da campanha e para vinculá-los a todos os recursos que dão suporte à campanha.

  7. Defina uma “Data de conclusão da campanha” e selecione um “Gerente da campanha” como o contato principal da campanha (um proprietário ou gerente de segurança desta organização).

  8. Quando estiver pronto para criar a campanha, selecione Criar campanha.

A campanha de segurança será criada e a página de visão geral da campanha será exibida.

Como criar uma campanha usando filtros personalizados

  1. Em GitHub, acesse a página principal da organização.

  2. No nome da organização, clique em Segurança do .

    Captura de tela da barra de navegação horizontal para uma organização. Uma guia, rotulada com um ícone de escudo e "Segurança", tem um contorno laranja.

  3. Na barra lateral esquerda, em “Alertas”, selecione Code scanning para mostrar a exibição de alertas.

  4. Adicione filtros para selecionar um subconjunto de alertas para sua campanha. Quando tiver escolhido menos de 1.000 alertas, distribuídos entre menos de 100 repositórios, você estará pronto para criar uma campanha.

  5. Acima da tabela de alertas, selecione Criar campanha para começar a criar uma campanha.

  6. Se a mensagem “Essa parece ser uma campanha grande” for exibida, selecione Voltar para filtros para ver a exibição de alertas da code scanning com os filtros existentes.

    1. Adicione mais filtros para reduzir o número de alertas mostrados, por exemplo, filtrando por “Equipe” ou por propriedade personalizada.
    2. Quando houver menos de 1.000 alertas em 100 repositórios, selecione Criar campanha para reexibir a caixa de diálogo “Nova campanha”.

    Como alternativa, você pode selecionar Continuar criando uma campanha e criar a campanha. Os alertas serão omitidos até que haja menos de 1.000 alertas em menos de 100 repositórios restantes. Os alertas nos repositórios com pushes recentes são priorizados para inclusão na campanha.

  7. Edite o “Nome da campanha” e a “Descrição curta” de acordo com as necessidades da campanha e para vinculá-los a todos os recursos que dão suporte à campanha.

  8. Defina uma “Data de conclusão da campanha” e selecione um “Gerente da campanha” como o contato principal da campanha (um proprietário ou gerente de segurança desta organização).

  9. Quando estiver pronto para criar a campanha, selecione Criar campanha.

Exemplos de filtros úteis

Todos os filtros de modelo incluem os seguintes filtros úteis:

  • is:open inclui apenas os alertas abertos no branch padrão.
  • autofilter:true inclui apenas os alertas que parecem estar no código do aplicativo.
  • autofix:supported inclui apenas os alertas referentes às regras com suporte para GitHub Copilot Autofix.

Depois que você incluir esses filtros básicos, o ideal será adicionar um filtro para limitar os resultados a uma severidade, uma tag ou um nome de regra específico. Por exemplo:

  • is:open autofilter:true autofix:supported rule:java/log-injection para mostrar apenas os alertas para injeção de log no código Java.
  • is:open autofilter:true autofix:supported tag:external/cwe/cwe-117 para mostrar apenas os alertas para “CWE 117: Neutralização de saída inadequada para logs”. Isso inclui a injeção de log em Java e em outras linguagens.
  • is:open autofilter:true autofix:supported severity:critical para mostrar apenas os alertas com severidade de segurança crítica

Tip

Quando você insere uma palavra-chave seguida de dois-pontos no campo de pesquisa, uma lista de todos os valores válidos é exibida, por exemplo, tag:.

Para obter mais informações sobre as regras executadas pelo CodeQL e sobre o suporte à correção automática, confira “Listas de consultas para conjuntos de consultas padrão”.

Como iniciar uma campanha de segurança

Quando você cria uma campanha, todos os alertas são enviados automaticamente para a GitHub Copilot Autofix de modo a serem processados conforme a capacidade permitir. Isso garante que as sugestões de alertas encontrados em pull requests não sejam atrasadas por uma nova campanha. Na maioria dos casos, você descobrirá que todas as sugestões que podem ser criadas ficam prontas em até uma hora. Nos horários mais movimentados do dia ou para alertas particularmente complexos, isso levará mais tempo.

Como os desenvolvedores sabem que uma campanha de segurança foi iniciada

Todos com acesso de gravação em um repositório incluído na campanha são notificados sobre a campanha, de acordo com as respectivas preferências de notificação.

Note

Durante a versão prévia pública, as notificações só são enviadas aos usuários que têm a notificação por email habilitada.

Além das notificações automáticas enviadas, a nova campanha é mostrada na barra lateral da guia “Segurança” para cada repositório incluído. Para obter mais informações sobre a experiência do desenvolvedor, confira “Como corrigir alertas em uma campanha de segurança”.

Como aumentar a participação na campanha de segurança

A melhor maneira de aumentar a participação em uma campanha é publicá-la para as equipes com as quais você deseja colaborar para corrigir os alertas. Por exemplo, você pode trabalhar com gerentes de engenharia para escolher um período de desenvolvimento mais tranquilo a fim de realizar uma série de campanhas de segurança, cada uma voltada para um tipo diferente de alerta, com sessões de treinamento associadas. Para ter mais ideias, confira “Melhores práticas para corrigir alertas de segurança em escala”.

Como acompanhar as campanhas de segurança

Quando você cria uma campanha, a exibição de acompanhamento de campanha é mostrada e a campanha é listada na barra lateral da guia Segurança da organização. Você pode reexibir a exibição de acompanhamento de campanha a qualquer momento selecionando-a na barra lateral em “Campanhas”.

Captura de tela da exibição de acompanhamento de campanha em “Como testar campanhas para o CodeQL”. O progresso da campanha está contornado em laranja-escuro.

Status de alertas da campanha de segurança

O resumo na parte superior da exibição de campanha relata o número de alertas fechados, em aberto e em andamento.

  • Em andamento: quando pelo menos um branch ou uma pull request é criada para corrigir o alerta por meio da exibição de campanha ou da página de alerta.
  • Fechado: quando o alerta é corrigido ou ignorado, mesmo que o trabalho de desenvolvimento tenha sido feito fora da estrutura da campanha.

Exibições da campanha de segurança

Você pode explorar os repositórios e os alertas da campanha para ver as áreas de participação das equipes na campanha e os pontos em que as equipes podem precisar de um incentivo extra para participar.

  • Detalhes do repositório: expanda qualquer repositório para mostrar o progresso na correção de alertas.
  • Detalhes do alerta: defina a opção “Agrupar por” como Nenhum para mostrar uma lista de todos os alertas.

Você pode filtrar essas duas exibições para se concentrar em um subconjunto de repositórios ou alertas. Todos os alertas em andamento são listados primeiro.

Como editar os detalhes da campanha de segurança

Você pode editar o nome, a descrição, a data de conclusão e o gerente de uma campanha. Isso será particularmente útil se o gerente de campanha atual estiver de licença e você precisar definir um novo contato para os desenvolvedores.

  1. Em GitHub, acesse a página principal da organização.

  2. No nome da organização, clique em Segurança do .

    Captura de tela da barra de navegação horizontal para uma organização. Uma guia, rotulada com um ícone de escudo e "Segurança", tem um contorno laranja.

  3. Na barra lateral, em “Campanhas”, selecione o nome da campanha para mostrar a exibição de acompanhamento da campanha.

  4. Na linha de título da campanha, selecione e escolha Editar campanha.

  5. Na caixa de diálogo “Editar campanha”, faça as alterações e selecione Salvar alterações.

As alterações serão feitas imediatamente.

Como fechar ou excluir campanhas de segurança

Há um limite de dez campanhas ativas. Quando uma campanha for concluída ou se você quiser pausá-la, será preciso fechá-la. Quando você fecha uma campanha, ela deixa de ser exibida para os desenvolvedores na guia Segurança do repositório, mas você ainda pode ver a exibição de acompanhamento de campanha para desenvolver melhores práticas. Além disso, você pode reabrir uma campanha fechada por meio da exibição “Campanhas fechadas”, que pode ser acessada na barra lateral, na guia Segurança da organização.

Caso você abra uma campanha para teste, talvez prefira excluir a campanha. Isso excluirá a campanha e todos os dados associados por completo.

  1. Em GitHub, acesse a página principal da organização.

  2. No nome da organização, clique em Segurança do .

    Captura de tela da barra de navegação horizontal para uma organização. Uma guia, rotulada com um ícone de escudo e "Segurança", tem um contorno laranja.

  3. Na barra lateral, em “Campanhas”, selecione o nome da campanha para mostrar a exibição de acompanhamento da campanha.

  4. Na linha de título da campanha, selecione e escolha a opção necessária:

    • Fechar campanha, para removê-la da lista de campanhas ativas e mostrá-la na exibição “Campanhas fechadas”.
    • Excluir campanha, para excluir a campanha permanentemente. Na caixa de diálogo “Excluir campanha”, selecione Excluir para confirmar que deseja excluir a campanha.