Proteja as suas aplicações Java com a modernização do GitHub Copilot

Modernizar a sua aplicação Java não é um evento pontual. Novos CVEs são publicados todos os dias, novas conclusões de CWE surgem à medida que o seu código evolui e as dependências saem da conformidade. Manter a aplicação segura significa detetar e corrigir continuamente a dívida de garantia – a forma intemporânea de pensar na segurança da aplicação.

A modernização do GitHub Copilot ajuda-o com duas funcionalidades:

  • Avaliação de segurança - analisa o seu código em busca de conclusões de CWE guiadas pela ISO/IEC 5055 e de vulnerabilidades CVE nas suas dependências diretas e transitivas.
  • Remediação de código - gera um plano de execução para corrigir os problemas selecionados e aplica as correções por ti.

Pode encontrar estas capacidades em:

  • Visual Studio Code - varredura e correção interativa, abordada neste artigo.
  • Modernize CLI – a segurança é um dos domínios de avaliação em lote, por isso podes analisar um portefólio de aplicações numa única execução.

Analisar e resolver problemas de segurança no Visual Studio Code

Siga estes passos para avaliar e remediar problemas de segurança num só fluxo.

1. Iniciar a varredura de segurança

No painel modernização do GitHub Copilot, abra a vista Quick Start e selecione Analisar e resolver problemas de segurança.

Captura de ecrã de Visual Studio Code que mostra a vista de Início Rápido com os botões Scan e Resolver Problemas de Segurança.

O Copilot realiza uma avaliação de domínio de segurança sobre o seu projeto. A análise abrange:

  • Um conjunto selecionado de regras CWE alinhadas com a ISO/IEC 5055, agrupadas em seis categorias: Segurança de Ficheiros e Caminhos, Ataques por Injeção, Segurança de Memória, Qualidade do Código, Credenciais & Segredos, e Concorrência & Sincronização.
  • Descobertas de CVE nas suas dependências diretas e transitivas, obtidas a partir da base de dados GitHub Security Advisories.

Para o catálogo completo das regras CWE e os detalhes da cobertura CVE, consulte Compreender a cobertura de avaliação.

Observação

As verificações de CVE funcionam sem autenticação do GitHub, mas as chamadas anónimas estão sujeitas a limitação de taxa. Para projetos grandes, inicia gh auth login sessão para evitar limitações.

2. Rever o relatório

Quando a análise termina, o Relatório de Avaliação começa com as conclusões de segurança.

Captura de ecrã do Relatório de Avaliação em Visual Studio Code que mostra as conclusões do CWE e CVE.

Para controlar quais CVEs aparecem, defina Segurança: Severidade Mínima da CVE na configuração da avaliação. Os valores aceites são critical, high, medium e low; o valor predefinido é high.

3. Escolher os problemas a resolver e criar um plano

Seleciona as categorias de problemas que queres resolver. O botão de ação atualiza-se para mostrar a contagem — por exemplo, Criar Plano (3). Selecione-o para gerar um plano de execução.

Captura de ecrã do Relatório de Avaliação com as categorias de problemas de segurança selecionadas e o botão Criar Plano destacado.

4. Rever o plano

O Copilot escreve o plano de execução como um ficheiro Markdown e abre-o no painel de pré-visualização para que possas lê-lo antes de qualquer correção ser aplicada. O plano descreve como o Copilot agrupa e aborda as questões selecionadas. Agrupa os problemas CVE por dependência e os resultados CWE por ficheiro. Se quiseres alterar o âmbito ou a ordem, edita diretamente o ficheiro Markdown.

Captura de ecrã do plano de execução de segurança aberto na pré-visualização Visual Studio Code Markdown.

5. Executar o plano

Quando estiveres satisfeito com o plano, diz ao Copilot no chat para o executar. O Copilot resolve os problemas selecionados grupo a grupo, constrói o projeto para validar cada alteração e reporta o progresso no chat. Reveja as diferenças resultantes e faça commit das alterações que pretende manter.

Mantém-te sempre atual

A dívida de segurança reaparece à medida que são publicados novos CVEs e que a sua aplicação muda. Execute novamente Scan & Resolve Problemas de Segurança como parte da sua cadência regular de modernização — por exemplo, em cada ramificação de lançamento — para detetar e corrigir problemas continuamente, em vez de os acumular numa grande atualização.

Passos seguintes