Paul Krill
Editor at Large

GitHub makes CodeQL free for research and open source

news
Nov 15, 20192 mins

CodeQL is a semantic code analyzer and query tool that can be used to find security vulnerabilities in codebases

Binary code / magnifying lens / inspection / analysis
Credit: Andreus / Getty Images

CodeQL, a semantic code analysis engine and query tool for finding security vulnerabilities across a codebase, has been made available for free by GitHub for anyone to use in research or to analyze open source code.

CodeQL queries code as if it were data. Developers can use CodeQL to write a query that finds all variants of a vulnerability, and then share that query with other developers. For example, a developer could create a query that mimics a bug class for cross-site scripting, then use that query to find any bug class. CodeQL also can be used to find zero days, variants of critical vulnerabilities, and defects such as buffer overflows or SQL injection issues.

CodeQL was developed several years ago by Semmle, which was acquired by GitHub in September. Prior to making CodeQL available for free for open source code, Semmle provided it as a commercially available service. It is still available under a commercial license for private code repositories.

Features of CodeQL include:

  • Libraries for control and data flow analysis, taint tracking, and threat model exploration. Languages supported include C/C++, C#, Java, JavaScript, Python, and others. One language currently not supported is Rust.
  • CodeQL plug-ins to IDEs.
  • The LGTM query console, which can be used to write CodeQL in a browser and query a portfolio for vulnerabilities.
  • The ability to run out-of-the-box queries or custom queries on multiple codebases.

How to access CodeQL

CodeQL can be tried out in the LGTM query console at LGTM.com.         

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author