About code scanning with CodeQL

You can use CodeQL to identify vulnerabilities and errors in your code. The results are shown as escaneo de código alerts in GitHub.

El Escaneo de código se encuentra disponible para todos los repositorios públicos y para los privados que pertenecen a organizaciones en donde se habilitó la GitHub Advanced Security. Para obtener más información, consulta la sección "Acerca de GitHub Advanced Security".

About escaneo de código with CodeQL

CodeQL es el motor de análisis de código que desarrolló GitHub para automatizar las verificaciones de seguridad. Puedes analizar tu código utilizando CodeQL y mostrando los resultados como alertas del escaneo de código.

There are two main ways to use CodeQL analysis for escaneo de código:

About CodeQL

CodeQL treats code like data, allowing you to find potential vulnerabilities in your code with greater confidence than traditional static analyzers.

  1. You generate a CodeQL database to represent your codebase.
  2. Then you run CodeQL queries on that database to identify problems in the codebase.
  3. The query results are shown as escaneo de código alerts in GitHub when you use CodeQL with escaneo de código.

CodeQL supports both compiled and interpreted languages, and can find vulnerabilities and errors in code that's written in the supported languages.

  • 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."

About CodeQL queries

GitHub experts, security researchers, and community contributors write and maintain the default CodeQL queries used for escaneo de código. The queries are regularly updated to improve analysis and reduce any false positive results. The queries are open source, so you can view and contribute to the queries in the github/codeql repository. For more information, see CodeQL on the GitHub Security Lab website. You can also write your own queries. For more information, see "About CodeQL queries" in the CodeQL documentation.

You can run additional queries as part of your code scanning analysis. These queries must belong to a published CodeQL query pack (beta) or a QL pack in a repository. CodeQL packs (beta) provide the following benefits over traditional QL packs:

  • When a CodeQL query pack (beta) is published to the GitHub Registro de contenedores, all the transitive dependencies required by the queries and a compilation cache are included in the package. This improves performance and ensures that running the queries in the pack gives identical results every time until you upgrade to a new version of the pack or the CLI.
  • QL packs do not include transitive dependencies, so queries in the pack can depend only on the standard libraries (that is, the libraries referenced by an import LANGUAGE statement in your query), or libraries in the same QL pack as the query.

For more information, see "About CodeQL packs" and "About QL packs" in the CodeQL documentation.

Nota: La funcionalidad de administración de paquetes de CodeQL, incluyendo los paquetes de CodeQL, se encuentra actualmente en beta y está sujeta a cambios.

¿Te ayudó este documento?

Política de privacidad

¡Ayúdanos a hacer geniales estos documentos!

Todos los documentos de GitHub son de código abierto. ¿Notas algo que esté mal o que no sea claro? Emite una solicitud de cambios.

Haz una contribución

O, aprende cómo contribuir.