Tool
BinExport
The exporter component of BinDiff: plugins for IDA Pro and Binary Ninja and an extension for Ghidra that write an analyzed disassembly to the Protocol Buffer format BinDiff requires. The BinExport2 schema covers instructions with their operands and expressions, basic blocks, flow graphs, the call graph, sections, strings, comments and data references; the exporter can also write a statistics text file or a text dump for debugging. Exports can be scripted through IDC or IDAPython in IDA and through a BinExport.java script that also runs in Ghidra's headless analyzer.
Requirements and limitations
- Latest release at review: v12-20240417-ghidra_11.0.3, published 2024-04-17, with Linux, macOS and Windows plugin archives and a Ghidra 11.0.3 extension; the release notes say its artifacts are not code-signed. The reviewed main commit is 111 commits ahead of that release, and its README requires IDA Pro 9.4 or later and drops the 8.x series, so the current README describes plugins that no release yet provides.
- Requires a separately licensed IDA Pro or Binary Ninja installation, or Ghidra; Binary Ninja integration is minimal and the Ghidra extension is described as experimental. Users supply their own binaries and analysis databases, and BinDiff itself is a separate tool.
- Native builds need CMake 3.20+, Boost 1.83+ (a partial copy is bundled), GCC 15 or recent Clang on Linux and macOS or Visual Studio 2022 with the Windows 11 SDK, and download Abseil, GoogleTest, Protocol Buffers and the IDA and Binary Ninja SDKs; Debian 11 is the preferred Linux build environment. The Ghidra extension builds with OpenJDK 21+, Gradle 8.7+ and Ghidra 11.0.3.
- Apache-2.0. The README states that it is not an official Google product. No binaries were exported or diffed for this entry.
About this entry
- Type
- Tool
- Category
- Binary comparison tools
- Relationship
- Foundation tool
- Targets
- Binary
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · google/binexport · Revision 1fc1d73
- README.md#L26-L60 GitHub · google/binexport · Revision 1fc1d73
- README.md#L242-L262 GitHub · google/binexport · Revision 1fc1d73
- binexport2.proto GitHub · google/binexport · Revision 1fc1d73
- java/README.md GitHub · google/binexport · Revision 1fc1d73
- LICENSE GitHub · google/binexport · Revision 1fc1d73
- https://github.com/google/binexport/releases/tag/v12-20240417-ghidra_11.0.3