BAP (Binary Analysis Platform) vs Vivisect
BAP (Binary Analysis Platform)
binaryanalysisplatform.github.ioVivisect
github.comSide by side
| Figure | BAP (Binary Analysis Platform) | Vivisect |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Reverse Engineering Tools | 8.7 (#3) | 7.6 (#35) |
| Extensibility | BAP is a plugin-based framework whose plugins can add analyses or change existing functionality without recompiling BAP. | The project lists an extendible UI and scripts, plus an API. |
| Installation | Prebuilt packages are provided for Debian and Red Hat derivatives, with tgz archives for other distributions; source installation through opam is recommended for OCaml development. | The documentation says Vivisect supports Python 3.6 and up and can be installed with pip. |
| License | The GitHub repository identifies the project license as MIT. | The GitHub repository identifies its license as Apache-2.0. |
| Purpose | BAP is a suite of utilities and libraries for analyzing binary programs. | Vivisect is a static analysis platform, and the related Vdb tool is a cross-platform debugger built on much of the same architecture. |
| Support | The installation instructions direct users who encounter missing system dependencies to the project's chat for help. | The project directs users to its GitHub issue tracker and the #vivisect room in Synapse Slack for bugs and issues. |
Plans
In their own words
BAP (Binary Analysis Platform)
BAP (Binary Analysis Platform) has no write-up on Specifiction yet; its figures are above.
Vivisect
Vivisect is a free, Apache-2.0 static analysis platform for binaries, with the related Vdb tool providing cross-platform debugging. Its pure-Python tools perform static and dynamic analysis, including built-in static and symbolic analysis, in a hybrid workflow. Analysis can run through an extensible UI, scripts, an API, or headlessly; command-line bulk processing can save a .viv workspace. Distributed analysis is available through cobra. Vivisect runs on Linux, macOS, and Windows, and lists i386, amd64, ARMv7, Thumb16, Thumb, AArch64, MSP430, and H8 architectures. Python 3.6 and newer are supported and installation is available through pip. The gui extra adds PyQt5 dependencies. Workspaces can be shared between instances or served over a network or localhost, with connected updates propagating as events arrive. Vdb can attach by process ID or command-line substring, or start and attach to a process.