CodeQL

A semantic code analysis engine from GitHub that lets you query source code to find vulnerabilities.

These buttons open the developer's own site, repository or store listing in a new tab. wares.gg does not host downloads.

About CodeQL

CodeQL treats code as data. You build a CodeQL database from a project, then write queries that trace patterns such as tainted user input reaching an unsafe deserialization call. Once a query finds one bug, it can find every variant of it across the whole codebase, and you can share the query with others.

You can work with it through the CodeQL extension for Visual Studio Code or the CodeQL CLI. Databases for many open source projects on GitHub can be downloaded and analysed directly.

Strengths

  • Queries follow data flow from source to sink across a codebase
  • Finds every variant of a known bug pattern
  • Visual Studio Code extension and a CLI
  • Ready-made databases for many open source projects

Limitations

  • Free use is limited to research and open source code
  • Writing custom queries means learning the QL language
  • The analysis engine itself is not open source

Details

Pricing
FreemiumFree for research and open source code; other use falls under GitHub's CodeQL terms.
License
Proprietary (GitHub CodeQL Terms and Conditions)
Developer
GitHub
Platforms
Command line
How it runs
Downloadable app
Best suited for
Security researchers and developers hunting vulnerability patterns in source code
Last verified
Added
Provenance
Facts checked against the developer's own pages and store listings, 1 sources on file.

Alternatives to CodeQL

Compare all

Software that can replace CodeQL for an important use case, and what changes if you switch.

  • Semgrep

    Find code patterns and potential problems with static analysis.

    Semgrep runs custom or shared static analysis rules in development workflows and is open source, with rule quality and language support affecting coverage.

  • SonarQube

    A static code analysis platform that flags bugs, maintainability issues and security vulnerabilities.

    SonarQube is a self-hosted or cloud code analysis platform tracking bugs, technical debt and security issues with CI/CD and IDE integration.

  • Snyk

    A hosted developer security platform that scans code and applications for vulnerabilities.

    FreemiumProprietaryWeb

    Snyk is a hosted platform scanning code, dependencies and containers with a free starter plan, though direction is aimed mainly at enterprises.

  • Bandit

    A command-line static analyser that finds common security issues in Python code.

    Bandit is an open-source command-line analyser focused only on security issues in Python code, narrower than CodeQL's multi-language querying.

Similar software

Related functionality, not necessarily a direct replacement.

Report a wrong fact or a dead link on this listing