Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais atualizadas, acesse a documentação em inglês.

Sobre a varredura de código com CodeQL

Você pode usar CodeQL para identificar vulnerabilidades e erros no seu código. Os resultados são exibidos como alertas de code scanning em GitHub.

A Code scanning está disponível para os repositórios pertencentes à organização do GitHub Enterprise Server. Esse recurso exige uma licença do GitHub Advanced Security. Para obter mais informações, confira "Sobre a Segurança Avançada do GitHub".

Observação: o administrador do site precisa habilitar o code scanning para o sua instância do GitHub Enterprise Server a fim de que seja possível usar esse recurso. Para obter mais informações, confira "Configurar a varredura de código para o seu aparelho".

Sobre a code scanning com o CodeQL

CodeQL é o mecanismo de análise de código desenvolvido por GitHub para automatizar verificações de segurança. Você pode analisar seu código usando CodeQL e exibir os resultados como alertas de code scanning.

Existem duas maneiras principais de usar CodeQL análise para code scanning:

No GitHub Enterprise Server 3.6, a ação CodeQL usa a CodeQL CLI versão 2.9.4 por padrão. Recomendamos que você use a mesma versão da CodeQL CLI para executar a análise em um sistema de CI externo.

Sobre o CodeQL

O CodeQL trata o código como dados, permitindo que você encontre possíveis vulnerabilidades em seu código com maior confiança do que os analisadores estáticos tradicionais.

  1. Você gera um banco de dados de CodeQL para representar a sua base de código.
  2. Em seguida, você executa consultas de CodeQL nesse banco de dados para identificar problemas na base de código.
  3. Os resultados da consulta são exibidos como alertas de code scanning em GitHub Enterprise Server quando você usa CodeQL com code scanning.

O CodeQL dá suporte a linguagens compiladas e interpretadas e pode encontrar vulnerabilidades e erros no código escrito nas linguagens compatíveis.

  • C/C++
  • C#
  • Go
  • Java
  • JavaScript/TypeScript
  • Python
  • Ruby

Observações:

  • A análise do CodeQL para o Ruby está em versão beta. Durante a versão beta, a análise do Ruby será menos abrangente do que a análise do CodeQL de outros idiomas.
  • Use javascript para analisar o código escrito em JavaScript, TypeScript ou ambos.

Para obter mais informações, confira a documentação no site do CodeQL: "Linguagens e estruturas compatíveis".

Sobre consultas de CodeQL

GitHub especialistas, pesquisadores de segurança e contribuidores da comunidade escrevem e mantêm as consultas padrão de CodeQL usadas por code scanning. As consultas são regularmente atualizadas para melhorar a análise e reduzir quaisquer resultados falso-positivos. As consultas são código aberto, ou seja, você pode visualizar as consultas e contribuir com elas no repositório github/codeql. Para obter mais informações, confira CodeQL no site do CodeQL. Você também pode escrever suas consultas. Para obter mais informações, confira "Sobre as consultas do CodeQL na documentação do CodeQL.

Se estiver verificando seu código com a configuração avançada ou com um sistema de CI externo, você poderá executar consultas adicionais como parte da análise. As consultas que você deseja executar devem pertencer a um pacote do QL em um repositório. As consultas só devem depender das bibliotecas-padrão (ou seja, as bibliotecas referenciadas por uma instrução import LANGUAGE na sua consulta), ou bibliotecas no mesmo pacote do QL em que está a consulta.