Vivisect
github.com
What it is
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.
Spec sheet
- Purpose
- Vivisect is a static analysis platform, and the related Vdb tool is a cross-platform debugger built on much of the same architecture.Read 8 Oct 2026 · vivisect.readthedocs.io
- Support
- The project directs users to its GitHub issue tracker and the #vivisect room in Synapse Slack for bugs and issues.Read 8 Oct 2026 · github.com
- License
- The GitHub repository identifies its license as Apache-2.0.Read 8 Oct 2026 · github.com
- Analysis
- The project lists pure Python static and dynamic analysis, with built-in static and symbolic analysis.Read 8 Oct 2026 · vivisect.readthedocs.io
- Binary analysis
- Running `vivbin` with a binary file starts auto-analysis and opens the Vivisect UI.Read 8 Oct 2026 · vivisect.readthedocs.io
- Collaboration
- Users can share workspaces between Vivisect instances or run a VivServer to share a directory of workspace files over a network or localhost.Read 8 Oct 2026 · vivisect.readthedocs.io
- Debugging
- Vdb can attach to an existing process by PID or command-line substring, or start a process and attach to it.Read 8 Oct 2026 · vivisect.readthedocs.io
- Distributed analysis
- The feature list names distributed analysis via cobra.Read 8 Oct 2026 · vivisect.readthedocs.io
- Extensibility
- The project lists an extendible UI and scripts, plus an API.Read 8 Oct 2026 · vivisect.readthedocs.io
- GUI
- Installing the `gui` extra adds the PyQt5 dependencies needed to run the Vivisect UI.Read 8 Oct 2026 · vivisect.readthedocs.io
- Headless mode
- The base pip installation supports headless use, including bulk analysis that saves a workspace as a .viv file.Read 8 Oct 2026 · vivisect.readthedocs.io
- Headless use
- Vivisect supports headless processing and can run bulk analysis from the command line.Read 8 Oct 2026 · vivisect.readthedocs.io
- Installation
- The documentation says Vivisect supports Python 3.6 and up and can be installed with pip.Read 8 Oct 2026 · vivisect.readthedocs.io
- Python requirement
- The current package documentation specifies Python 3.6 and up; it says the older 0.2.x line is available for Python 2.Read 8 Oct 2026 · vivisect.readthedocs.io
- Remote updates
- The documentation says workspace events propagate between connected clients and the server as they are added.Read 8 Oct 2026 · vivisect.readthedocs.io
- Workspace updates
- The documentation says connected workspaces update within seconds when actions are redirected to a remote server or workspace.Read 8 Oct 2026 · vivisect.readthedocs.io
Plans and prices
Strong points and limits
Strong points
- Free under Apache-2.0
- Static, dynamic, and symbolic analysis
- Headless bulk analysis from the command line
- Distributed analysis through cobra
- Supports firmware analysis and many architectures
Limits
- No decompiler is listed
- Requires Python 3.6 or newer
- GUI requires the separate gui extra
- Support is directed to community channels
Who it suits
Vivisect suits reverse engineers and developers needing scriptable, headless, or graphical binary analysis on supported systems. It also fits users who need shared workspaces or process debugging.
Verdict
Vivisect provides a flexible Python-based analysis and debugging environment with headless, distributed, and collaborative options. Its missing decompiler and Python-centered installation are important considerations for tool selection.
Where Specifiction places it
- Reverse Engineering Tools#35 of 737.6