Cutter plugins — authorized ecosystem overview
Cutter (cutter.re) is the Qt GUI for Rizin. Its plugin system lets labs extend the UI with Python or C++ modules without forking the whole IDE. Install only plugins you trust on binaries you are authorized to examine.
Snapshot
| Field | Value |
|---|---|
| Host | Cutter (GPL-3.0 ecosystem; see getting started) |
| Plugin kinds | Python (python/) and native C++ (native/) |
| Discovery UI | Edit → Preferences → Plugins |
| Curated list | rizinorg/cutter-plugins |
| Peers | rz-ghidra, Cutter vs Ghidra, r2/rizin/Cutter |
Allowed framing
- Teaching a course plugin that docks a widget and calls documented
cutter.cmd/cutter.cmdjhelpers on lab samples. - Installing maintained community plugins (YARA helpers, coverage importers, decompiler integrations) under your org's license review.
- Choosing Rizin plugins when the goal is a new loader/arch rather than a Cutter dock widget.
Scope we will not cover
- No crack/keygen / license-bypass “plugins.”
- No exploit PoC plugins framed as tutorials.
- No claiming every cutter-plugins README entry is still maintained — check commit dates yourself.
- No shipping malware decryptor scripts as BinBench “how to attack” content — community malware-analysis scripts stay case-by-case under authorization.
Beginner path (authorized only)
- Open Cutter → Edit → Preferences → Plugins; note the plugins directory path.
- Read cutter.re/docs/plugins and the Python getting-started page; copy an official example into
python/. - Restart Cutter; confirm the plugin appears in Preferences before trusting it on casework.
- Prefer JSON command variants (
cmdj) when parsing structured data — docs warn plain text command output is not a stable API. - For format/arch support, follow Rizin plugin docs instead of forcing a Cutter-only hack.
- Use Cutter plugins to extend authorized lab UI with Python/native modules.
- Prefer Rizin plugins for loaders and architectures.
- Refuse crack and exploit plugin framing.
For legal, authorized and educational use only.
FAQ
What plugin languages does Cutter support?
Official docs cover Python and native C++ plugins. Upstream strongly suggests starting with Python for a simpler workflow. Official GitHub Release builds since 1.8.0 ship with Python plugin support enabled.
Where do plugins load from?
An OS-dependent user-level plugins directory (see Edit → Preferences → Plugins). It contains native and python subdirectories created by Cutter.
New file format or architecture — Cutter plugin or Rizin plugin?
Docs state Cutter plugins are the wrong place for new formats/architectures — implement a Rizin plugin instead, then use it from Cutter.
What is cutter-plugins on GitHub?
rizinorg/cutter-plugins is a curated community list (decompilers, YARA, coverage, etc.). Treat each entry's license and maintenance status separately before installing in a lab.
Does this teach malware weaponization or cracking via plugins?
No. Authorized extension and education only — BinBench will not supply crack plugins, DRM bypasses or exploit PoCs.