FirmWire
The facts below are what the maker publishes about FirmWire, checked and dated. Our editors have not written about it yet.
The facts
Each one read from FirmWire's own pages, with the date it was checked.
What it does
- Emulation
- Its emulation core uses PANDA for emulation and avatar2 to orchestrate emulator execution.checked 8 Oct 2026
- External tools
- Documented tooling includes Docker, QEMU/PANDA, avatar2, GDB, Ghidra, and AFL++.checked 8 Oct 2026
- Firmware loading
- FirmWire can recognize a firmware image, unpack it, and select a loader and machine automatically.checked 8 Oct 2026
- Fuzzing
- The command-line interface supports AFL fuzz tasks, test case input, triage, persistent fuzzing, crash logs, and coverage collection.checked 8 Oct 2026
- Ghidra requirement
- MediaTek firmware analysis requires custom patches to Ghidra, while Shannon firmware uses the ShannonLoader with custom or upstream Ghidra.checked 8 Oct 2026
- Installation
- The recommended setup builds and runs FirmWire in its supplied Docker environment; the documentation also describes a VS Code devcontainer and manual installation.checked 8 Oct 2026
- Interactive debugging
- Users can connect GDB to the emulated baseband to set breakpoints, inspect or modify memory, and steer execution.checked 8 Oct 2026
- Known limitations
- The documentation says MediaTek snapshotting is hacky, Panda may segfault after snapshotting, and Ctrl+C does not work in console mode.checked 8 Oct 2026
- License and commercial use
- FirmWire is BSD-3 licensed, and its makers state that the license permits commercial use such as private baseband vulnerability research and bug bounties.checked 8 Oct 2026
- Modkit
- The modkit lets users create and compile C modules and tasks for injection into emulated baseband firmware.checked 8 Oct 2026
- Purpose
- FirmWire is a full-system baseband firmware analysis and emulation platform for fuzzing, debugging, and root-cause analysis.checked 8 Oct 2026
- Python console
- An IPython/Jupyter console exposes FirmWire’s API and machine abstraction for interacting with the emulated baseband.checked 8 Oct 2026
- Research context
- The project describes itself as the result of a multi-year, cross-university research effort and links an NDSS 2022 paper.checked 8 Oct 2026
- Research preview
- The documentation says the public release is a preview that omits some functionality described in the research paper.checked 8 Oct 2026
- Snapshots
- FirmWire saves emulation state in QEMU qcow2 images along with auxiliary state for Python peripherals, and supports restoring snapshots.checked 8 Oct 2026
- Support and services
- The makers invite contact through public issues or private email or Signal and say team members may provide consulting, training, or custom extensions.checked 8 Oct 2026
- Supported images
- The documentation lists Samsung A10s and A41 MediaTek images, plus selected Samsung Galaxy S7 through S10 and Moto One Vision Shannon images.checked 8 Oct 2026
- Supported vendors
- It supports a subset of MediaTek MTK and Samsung Shannon firmware images.checked 8 Oct 2026
Alternatives to FirmWire
- 1

Binary Ninja
Free planWebAPILinuxmacOS7.8$199 one-time - 2
Frida
Free planOpen sourceAndroidiOSAPILinux7.7Free plan - 3

rev.ng
Free planOpen sourceWebAPILinuxmacOS7.7Free plan - 4

JEB
Free planAPILinuxmacOSSelf-hosted7.6From $1,200 a year - 5
Ghidra
Free planOpen sourceAPIExtensionLinuxmacOS7.3Free plan - 6

IDA Pro
Free planLinuxmacOSWindows7.0From $1,099 a year
