Tool

BinAbsInspector

Static vulnerability scanner from Tencent Keen Lab that runs as a Ghidra extension or headless script and applies abstract interpretation to Ghidra's P-code rather than to assembly, covering x86, x64, ARMv7 and AArch64 binaries. Its flow- and context-sensitive interprocedural analysis, with configurable value-set size and call-string depth, optional Z3 constraint solving and models of external functions, feeds checkers for 13 CWE classes, including command injection, buffer overflows and out-of-bounds access, format strings, integer overflow, double free, use-after-free and NULL dereference. Warnings list the instruction address and its call context, in the Ghidra console or as JSON.

Requirements & limits

  • The only release, v0.1 from 2022-04-20, is an extension ZIP built for Ghidra 10.1.2. The reviewed main commit is 20 commits ahead; its Dockerfile and CI workflows use Ghidra 10.4 with JDK 17, and the last commit dates from 2024-05-14, so compatibility with current Ghidra releases is not documented. Source builds use Gradle 7.x (tested with 7.4) against a local Ghidra installation.
  • Z3 is required (tested version 4.8.15): the README suggests replacing the Java bindings bundled in lib/ with a matching package and installing the native library separately, not from Linux distribution packages. Runs use Ghidra's headless analyzer, the Script Manager after default auto-analysis in the GUI, or the provided Dockerfile, which builds Z3 from source and defaults to an Ubuntu mirror in China that the UBUNTU_MIRROR argument overrides.
  • Binaries are supplied by the user. Warnings are leads for manual review, not confirmed vulnerabilities; Keen Lab's release article reports its own Juliet test-suite comparison with cwe_checker on x86, x64 and ARMv7 for four CWE classes, scored by true and false positives and negatives.
  • GPL-3.0. Nothing was built and no binaries were analyzed.

About this entry

Type
Tool
Category
Native analysis 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.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · KeenSecurityLab/BinAbsInspector · Revision 658b413
  2. README.md#L5-L23 GitHub · KeenSecurityLab/BinAbsInspector · Revision 658b413
  3. README.md#L25-L81 GitHub · KeenSecurityLab/BinAbsInspector · Revision 658b413
  4. Dockerfile GitHub · KeenSecurityLab/BinAbsInspector · Revision 658b413
  5. .github/workflows/integration_test.yml GitHub · KeenSecurityLab/BinAbsInspector · Revision 658b413
  6. LICENSE GitHub · KeenSecurityLab/BinAbsInspector · Revision 658b413
  7. https://github.com/KeenSecurityLab/BinAbsInspector/releases/tag/v0.1
  8. https://keenlab.tencent.com/zh/2022/04/20/2022-BinAbsInspector-public-release/

More in Native binaries

All 74 entries in Native binaries