Skip to main content

Sobre a digitalização 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 Varredura de código em GitHub.

Varredura de código is available for organization-owned repositories in GitHub Enterprise Server. This feature requires a license for Segurança Avançada GitHub. For more information, see "GitHub's products."

Observação: O administrador do site deve habilitar Varredura de código para your GitHub Enterprise Server instance antes de usar este recurso. Para obter mais informações, consulte "Configurar o Varredura de código para seu aplicativo ".

Sobre Varredura de código com 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 Varredura de código.

Existem duas maneiras principais de usar CodeQL análise para Varredura de código:

Em GitHub Enterprise Server 3.4, a ação de CodeQL usa a versão de CodeQL CLI 2.7.6 por padrão. Recomendamos que você use a mesma versão do CodeQL CLI se você executar a análise em um sistema CI externo.

Sobre o CodeQL

O CodeQL trata o código como dados, permitindo que você encontre possíveis vulnerabilidades no 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 Varredura de código em GitHub Enterprise Server quando você usa CodeQL com Varredura de código.

O CodeQL é compatível com linguagens compiladas e interpretadas e é capaz de encontrar vulnerabilidades e erros no código escrito nas linguagens compatíveis.

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

Note: CodeQL analysis for Ruby is currently in beta. During the beta, analysis of Ruby will be less comprehensive than CodeQL analysis of other languages.

For more information, see the documentation on the CodeQL website: "Supported languages and frameworks."

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 Varredura de código. As consultas são regularmente atualizadas para melhorar a análise e reduzir quaisquer resultados falso-positivos. As consultas são de código aberto. Portanto, você pode ver e contribuir para as consultas no repositório github/codeql. Para obter mais informações, consulte CodeQL no site CodeQL. Você também pode escrever suas próprias consultas. Para obter mais informações, consulte "Sobre as consultas de CodeQL " na documentação do CodeQL.

Você pode executar consultas adicionais como parte da sua análise de digitalização de código. As consultas que você deseja executar devem pertencer a um pacote QL em um repositório. As consultas só devem depender das bibliotecas-padrão (ou seja, as bibliotecas referenciadas por uma declaração de LINGUAGEM de importação na sua consulta), ou bibliotecas no mesmo pacote QL da consulta. Para obter mais informações, consulte "Sobre os pacotes de QL.