wlingze / project2cpg

Code Property Graph (CPG) frontend for binary applications and libraries. (base on ghidra project)

Home Page:https://joern.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ghidra2cpg

This is a CPG frontend based on Ghidra.

Build Status Maven Central

Setup

Requirements:

Quickstart

  1. Clone the project
  2. Build the project sbt stage
  3. Create a CPG ./ghidra2cpg.sh ${ProjectPath}!${ProjectName}!${ProgramName} -o /path/to/cpg.bin
  4. Download joern with
    wget https://github.com/joernio/joern/releases/download/v1.1.164/joern-cli.zip
    unzip joern-cli.zip
    cd joern-cli
    
  5. Copy cpg.bin into the joern directory
  6. Start joern with ./joern.sh
  7. Import the cpg with importCpg("cpg.bin")
  8. Now you can query the CPG

Known issues

varags are not handled properly: NationalSecurityAgency/ghidra#234

About

Code Property Graph (CPG) frontend for binary applications and libraries. (base on ghidra project)

https://joern.io/

License:Apache License 2.0


Languages

Language:Scala 96.2%Language:Assembly 2.8%Language:C 0.9%Language:Shell 0.2%