Joern is a platform for analyzing source code, bytecode, and binary executables. It generates code property graphs (CPGs), a graph representation of code for cross-language code analysis. Code property graphs are stored in a custom graph database. This allows code to be mined using search queries formulated in a Scala-based domain-specific query language. Joern is developed with the goal of providing a useful tool for vulnerability discovery and research in static program analysis.

Features

  • Joern allows importing code even if a working build environment cannot be supplied or parts of the code are missing
  • Joern creates semantic code property graphs from the fuzzy parser output and stores them in an in-memory graph database
  • SCPGs are a language-agnostic intermediate representation of code designed for query-based code analysis
  • Joern provides a taint-analysis engine that allows the propagation of attacker-controlled data in the code to be analyzed statically
  • Joern offers a strongly-typed Scala-based extensible query language for code analysis based on Gremlin-Scala
  • Code property graphs are multi-layered, offering information about code on different levels of abstraction

Project Samples

Project Activity

See All Activity >

License

Apache License V2.0

Follow Joern

Joern Web Site

Other Useful Business Software
Earn up to 15% annual interest with Nexo. Icon
Earn up to 15% annual interest with Nexo.

Access competitive interest rates on your digital assets.

Generate interest, borrow against your crypto, and trade a range of cryptocurrencies — all in one platform. Geographic restrictions, eligibility, and terms apply.
Get started with Nexo.
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Joern!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Java

Related Categories

Java Source Code Analysis Tool

Registered

2023-08-22