Binary Ninja Plugins
PluginName | Author | Last Updated | License | Type | Description |
---|---|---|---|---|---|
0CD | b0bb | 2022-02-17 | MIT | helper | Quality of life utilities for obsessive compulsive CTF enthusiasts. |
Add GoReSym Info | Xusheng | 2023-07-04 | MIT | helper | Add information recovered by tool GoReSym into the binary view |
Add XFG Xref | Xusheng | 2023-06-11 | MIT | helper | Add xref from caller to callee based on XFG hashes |
AMD-SP/PSP Loader | dayzerosec | 2023-01-29 | MIT | binaryview | Loader for AMD-SP or PSP firmware binaries. |
Annotate Functions | B.Kerler with code from John Levy and @carstein | 2019-07-09 | MIT | binaryview | A plugin that annotates function arguments. |
Ariadne | Mark Griffin (@seeinglogic) | 2023-05-24 | MIT | helper, ui | Browser-based interactive graph for viewing callgraph, static analysis, and coverage information |
Auto Utils | 404'd | 2020-12-12 | MIT | helper | Various auto analysis utilities |
BD Viewer | Linus S. (aka PistonMiner) | 2022-07-26 | MIT | helper, ui | View BinDiff results and port symbols |
Binary Ninja Type Manager | Terry Chia | 2021-01-30 | MIT | helper | Manage custom type libraries. |
Binja IPython console | skr0x1c0 | 2022-12-12 | MIT | binaryview, core, helper, ui | IPython console widget for Binary Ninja |
binja_sigmaker | apekros and Alex3434 | 2023-01-29 | MIT | architecture, binaryview, core, ui | Generate and find signatures. |
BinRida | Andrea Ferraris | 2021-05-19 | MIT | helper | This plugin allows to stalk, dump and instrument a process using Frida functionalities. |
BinSync | BinSync Team | 2023-07-04 | BSD 2-clause | core, ui | Adds support for cross-decompiler collab in the BinSync supported decompilers. |
Blackfin Architecture Plugin | sen | 2022-05-28 | GPL-3.0 | architecture | A Binary Ninja architecture plugin for the AD Blackfin architecture |
BN KConfig Recover | Brandon Miller | 2022-01-14 | MIT | helper | Recover Linux kernel build configurations |
bn-riscv | Katharina Utz | 2021-01-18 | Apache-2.0 | architecture | RISC-V architecture plugin. |
bn-uefi-helper | Brandon Miller (zznop) | 2023-04-28 | MIT | helper | Helper plugin for analyzing UEFI firmware |
bncov | Mark Griffin | 2023-02-15 | MIT | helper | Scriptable code coverage analysis and visualization plugin |
BNHook | Grant Orndorff | 2021-03-29 | MIT | core, ui | Insert custom hooks |
bnida | zznop | 2020-07-22 | MIT | helper | Transfer analysis data between Binary Ninja and IDA |
BNIL Instruction Graph | Ryan Stortz (@withzombies) | 2023-05-13 | Apache-2.0 | ui | A plugin to graph BNIL instruction trees |
Call Shellcode | lwerdna | 2021-04-03 | Unlicense | helper | Add "call shellcode" menu option which executes highlighted bytes. |
Callgraph | Josh Watson / Jordan Wiens | 2022-04-20 | MIT | ui | Callgraph generator for called or calling funcs |
Calltree | Eric Biazo | 2023-03-07 | MIT | binaryview, helper, ui | Generates calltree. Alternative view for callgraph |
Char Arrays | elbee | 2023-01-18 | MIT | binaryview, helper | Displays char arrays by analyzing their use in functions |
CHIP-8 ROM Loader | uafio | 2020-08-15 | MIT | architecture, binaryview, core, helper, ui | Load and disassemble CHIP-8 ROM. |
ClassyPP | CyShell | 2023-06-06 | MIT | binaryview | Parse and extract class information from MSVC x86 32\64 bit C++ binaries. |
Clean Tricks | Jan Beck | 2020-06-08 | MIT | architecture, binaryview, core, helper, ui | This plugin removes some simple known obfuscation techniques to cut down on the tedium. |
Comments Viewer | matteyeux | 2022-05-27 | MIT | ui | Binary Ninja comments viewer |
cryptoscan | Ben Pottier | 2020-08-02 | MIT | binaryview, ui | A plugin to detect several common crypto constructs and magic vars. |
DBG Loader | Gamozo Labs, LLC | 2021-11-15 | MIT | helper | Load old COFF .dbg files as well as CAB-ed .db_ files! |
decomp2dbg | Zion Basque (@mahaloz) | 2023-06-11 | BSD 2-clause | core | Adds support for Binary Ninja decompilation in your debugger, curently only supports GDB |
DeGObfuscate | Jamie Hankins | 2020-12-02 | MIT | helper | De-obfuscates strings inside of obfuscated Go binaries |
Delphi VMT Analyzer | ImNotAVirus | 2022-02-21 | MIT | helper | Find Delphi VMTs and generate their structures |
Dependency analyzer | Shiz | 2020-05-25 | MIT | helper | Analyze dependencies and resolve obfuscated imports |
devi | @_murks | 2020-11-04 | MIT | helper, ui | devi - DEvirtualize VIrtual calls in C++ binaries |
dewolf Decompiler | fkie-cad | 2023-05-04 | LGPL-2.1 | helper, ui | Research Decompiler to generate a C-like function representation |
Division and Modulo Deoptimizer | Nathan Peercy | 2020-05-12 | MIT | binaryview, helper, ui | Deoptimize Divisions and Modulos in Binary Ninja. |
DUMB | toolCHAINZ | 2020-03-01 | MIT | architecture, binaryview | DUMB: An Example Architecture for Binary Ninja |
Dyld Shared Cache Processor | cynder (kat) | 2022-03-01 | MIT | architecture, binaryview, core, helper, ui | Processing for Apple's dyld_shared_cache format. |
Emotet API+string deobfuscator | Francesco Muroni | 2020-09-21 | MIT | helper | Deobufscate API calls and strings in unpacked Emotet samples. |
ethersplay Ethereum Architecture Plugin | Trail of Bits | 2022-11-03 | AGPL-3.0-only | architecture | A disassembler and lifter for the Ethereum architecture. |
Explain Instruction | Eric Hennenfent | 2021-10-10 | Apache 2 | helper, ui | Displays a window that explains in simple English what an assembly instruction does |
FIXED Discord Rich Presence | duck | 2022-08-11 | MIT | helper | Enables Discord Rich Presence Integration for Binary Ninja |
Format String Analysis | Nick Shipp | 2023-03-08 | MIT | helper | Script to automatically annotate variadic printf functions |
Format String Finder | jofra | 2019-07-15 | MIT | helper | Finds format string vulnerabilities |
Frida | Chame1eon | 2020-06-01 | MIT | helper | A plugin to integrate the Frida dynamic instrumentation toolkit into Binary Ninja. |
Function ABI | whitequark | 2019-11-22 | BSD-0-clause | ui | A plugin that adds a GUI for changing function ABI. |
Fuzzable | ex0dus-0x | 2023-03-25 | MIT | ui | Framework for Automating Fuzzable Target Discovery with Static Analysis |
Game Boy Loader and Architecture Plugin | Hugo Porcher (@icecr4ck) | 2020-11-17 | MIT | architecture, binaryview | A loader and diassembler for Game Boy ROMs. |
GameCube DOL | Linus S. (aka PistonMiner) | 2021-07-08 | MIT | binaryview | GameCube DOL file BinaryView |
GameCube symbol map loader | Linus S. (aka PistonMiner) | 2021-07-08 | MIT | helper | GameCube symbol map loader |
GEF-Binja | hugsy | 2020-05-18 | MIT | helper, ui | Interface Binary Ninja with GDB-GEF easily. |
genesis | zznop | 2019-07-23 | MIT | patch | SEGA Megadrive/Genesis ROM Hacking Toolkit |
Ghinja | Martin Petran | 2022-06-08 | Apache-2.0 | ui | Plugin to embed Ghidra Decompiler into Binary Ninja |
GO Loader Assist | Michael Rodler | 2021-02-02 | MIT | ui | Short script that parses go symbol table and renames/creates functions. |
GoLang binary parser | Jacopo Ferrigno | 2023-01-05 | MIT | ui | BinaryNinja plugin to parse GoLang binaries and restore some information, like function names and type information |
Golang Symbol Restore | Daniel Weber | 2020-10-19 | MIT | helper | Binary Ninja plugin for restoring function names from stripped Golang binaries |
Golang Symbol Restore 1.18+ | Spencer Merrill | 2022-09-08 | MIT | helper | Binary Ninja plugin for restoring function names from stripped Golang binaries |
HashDB | Cindy Xiao | 2023-04-08 | 3-Clause BSD | helper, ui | Plugin for interacting with the OALabs HashDB service. |
Hex Integers in Python Console | Glenn Smith | 2023-01-16 | MIT | helper | Makes your integers print as hex in the python console. |
hexfiles | toolCHAINZ | 2023-05-24 | MIT | binaryview | A simple loader for Motorola SREC, Intel HEX, and TI-TXT files. |
HLIL Dump | atxsinn3r | 2020-06-07 | BSD-3-Clause | helper | Dumps HLIL code to a directory |
Hyara | Hyun Yi | 2022-09-03 | MIT | ui | YARA rule making tool for Binary Ninja, Cutter, and IDA |
iBoot64 Loader | Blackwing Intelligence | 2020-10-01 | MIT | binaryview | Binary View for loading iBoot, SecureROM, etc. firmware |
iBootLoader | EliseZeroTwo | 2023-02-24 | ISC | binaryview, helper | iBoot/SecureROM Loader |
IDC Importer | SpecterDev | 2022-10-13 | MIT | helper | Allows users to import idc database dumps from IDA into Binary Ninja. |
ilhierarchy | Fabian Freyer | 2022-02-06 | MIT | core, ui | Show current IL instruction hierarchy in sidebar |
Improved Gameboy Architecture | Carl Svensson (@zetatwo) | 2022-01-30 | MIT | architecture, binaryview | A loader and diassembler for Game Boy ROMs. |
Instruction Slicer | Andrea Ferraris | 2020-11-25 | MIT | helper | Forward and backward instruction slicer |
Intel 8086 Architecture | whitequark | 2019-09-04 | BSD-0-clause | arch | A plugin providing the 16-bit Intel architecture. |
Itanium C++ ABI | whitequark | 2023-03-01 | BSD-0-clause | analysis | A plugin providing an analysis for Itanium C++ ABI. |
JMPscare | Lukas Seidel | 2022-12-07 | MIT | binaryview, core, helper, ui | Fuzzing Introspection for use with the JMPscare Toolkit. |
JNIAnalyzer | Terry Chia (Ayrx) | 2022-03-27 | MIT | helper | Analysis scripts for Binary Ninja to work with Android NDK libraries. |
Jump table branch editor | jofra | 2019-07-06 | MIT | core, ui | A plugin that eases fixing jump table branches |
kallsyms | zznop | 2020-07-22 | MIT | helper | Parses output from /proc/kallsyms and applies symbols to the corresponding kernel BN database |
keypatch | lwerdna | 2023-01-05 | Unlicense | helper, ui | Remake of keypatch plugin for Binary Ninja |
Lighthouse | Markus Gaasedelen | 2021-08-10 | MIT | helper | A Coverage Explorer for Reverse Engineers |
logrn | catnip | 2021-03-09 | MIT | helper | binary ninja plugin for abusing logging functions |
Motorola 68k Architecture Plugin | Galen Williamson | 2022-06-10 | MIT | architecture | A disassembler and lifter for the Motorola 68k architecture. |
msp430 Architecture | Josh Watson | 2022-02-02 | MIT | architecture | MSP430 Architecture Plugin for Binary Ninja |
MSVC | Brick | 2019-07-12 | MIT | helper | Parses MSVC structures to improve analysis |
Nampa | Paolo Montesel (https://github.com/thebabush) | 2020-05-27 | LGPL v3 | binaryview, core | FLIRT for (binary) ninjas |
Native SigScan | rikodot | 2023-05-04 | MIT | helper | Find and create signatures |
Notepad | Jon Palmisciano | 2021-04-19 | MIT | None | A notepad for taking notes inside Binary Ninja. |
Obfuscation Detection | Tim Blazytko | 2023-06-29 | GPL-2.0 | helper | Automatically detect obfuscated code and other interesting code constructs |
Opaque Predicates Detective | Yu-Jye Tung | 2021-04-10 | MIT | helper | detect opaque predicates |
OpenAI GPT3 | Sean Deaton (@WhatTheFuzz) | 2022-12-29 | MIT | helper | Queries OpenAI's GPT3 to determine what a given function does. |
pd-ninja | lockbox | 2023-03-01 | MIT | helper | Playdate Console RE utilities |
peutils | 404'd | 2020-12-12 | MIT | helper | Binary Ninja plugin providing various niche utilities for working with PE binaries |
Pseudo C Dump | Asher Davila L. | 2023-01-28 | Apache-2.0 | helper | Binary Ninja plugin to dump the Pseudo C generated by Binja into a folder. |
Python bytecode | NjΓΆrd | 2023-04-03 | MIT | architecture, binaryview | Python bytecode (.pyc) support for Binary Ninja |
recursion | zznop | 2020-07-22 | MIT | helper | Locate and annotate direct and indirect recursion |
Renesas M16C Architecture | whitequark | 2020-01-19 | BSD-0-clause | architecture | A plugin providing the Renesas M16C architecture. |
Renesas V850 architecture plugin | Tomonori Izumida [email protected] | 2022-11-07 | MIT | architecture | An architecture plugin for Renesas V850 series |
ret-sync | Alexandre Gazet | 2022-01-21 | MIT | helper | Helper plugin to synchronize Binary Ninja with a debugging session |
revsync | lunixbochs | 2020-05-14 | MIT | ui | Realtime IDA Pro and Binary Ninja sync plugin |
ripr | Patrick Biernat | 2022-07-08 | MIT | helper | Package binary code as a Python class backed by Unicorn-Engine |
Rust Demangle | inspier | 2023-07-09 | MIT | helper | Demangles Rust symbols. |
Rust Type Layout Helper | Cindy Xiao | 2023-04-27 | MIT | helper | An extremely experimental Binary Ninja importer for the type layout information emitted by the -Zprint-type-sizes flag of the Rust compiler. |
Screenshot Ninja | jonpalmisc | 2023-06-17 | MIT | helper | Easily capture Binary Ninja screenshots in ultra-high resolution |
SEH Helper | EliseZeroTwo | 2022-02-19 | MIT | helper, ui | Helper for exploring structured exception handlers in PEs |
SENinja | Luca Borzacchiello | 2023-06-01 | 2-Clause BSD | helper | Symbolic execution plugin for BinaryNinja |
SEPROM Loader | matteyeux | 2023-06-14 | MIT | binaryview | Binary View for loading 32 bits and 64 bits Apple SEPROM |
Sourcery Pane | mechanicalnull | 2019-07-15 | MIT | helper, ui | Synchronized source code pane for debug binaries |
SVD Memory Map Parser | Mitchell Johnson (@ehntoo) | 2021-12-30 | MIT or Apache 2.0 | helper | A parser for the CMSIS System View Description format |
Switch Loader | EliseZeroTwo | 2020-07-22 | ISC | binaryview, helper | Loader for common Nintendo Switch binaries |
Symgrate2 Plugin | Travis Goodspeed | 2021-09-11 | MIT | helper | This is a client plugin for recovering symbols using the Symgrate2 server. |
Syscaller | Michal Melewski | 2019-07-15 | MIT | helper | Decorate encountered syscalls with details like name and arguments |
Tag Team | psifertex | 2021-03-12 | Apache-2.0 | helper | Tags functions using emoji for a number of interesting characteristics |
TypeLib Exporter | SmoothHacker | 2022-10-15 | MIT | binaryview, helper, ui | This plugin compiles exported functions and its corresponding types into a type library. Type libraries can also be applied to existing bndbs through this plugin. |
VMNDH-2k12 Architecture Plugin | verylazyguy | 2019-07-10 | MIT | architecture | A disassembler and lifter for the VMNDH-2k12 architecture. |
VTIL Plugin | Layle | 2020-07-05 | BSD-3-Clause | architecture, binaryview | Integrates the VTIL (Virtual-machine Translation Intermediate Language) Project with Binary Ninja |
VulnFanatic | Martin Petran | 2021-01-07 | Apache-2.0 | helper | Assistant plugin for vulnerability research. |
WASM Plugin | Meador Inge | 2020-06-30 | MIT | architecture, binaryview | This is a plugin for disassembling and lifting WASM images.. |
Windows Driver Analyzer | shareef12 | 2019-08-08 | MIT | helper | Find IRP dispatch routines and valid IOCTLs in a Windows kernel driver |
XNU Sysctl Hunter | actae0n | 2021-07-22 | MIT | helper | XNU Sysctl Hunter is a tool for analyzing Kexts that will automatically identify, type, and tag sysctl OIDs, as well as correct the prototypes of their OID handler functions. It contains a Binary Ninja plugin action, as well as a headless script for cli use. |
Xtensa Architecture and ESP8266 Loader | Zack Orndorff | 2021-08-17 | MIT | architecture, binaryview | Xtensa Architecture and ESP8266 Image Loader |
YARA Scan | trib0r3 | 2020-05-26 | MIT | binaryview, core | YARA signatures |
ΞΌBlaze Architecture Plugin | amtal | 2022-05-29 | MIT | architecture | Configurable soft core for Xilinx FPGAs. |
Binary Ninja Community Plugins
Plugins in this repository are provided by the community. Vector 35, Inc. makes no guarantees to the quality, safety or efficacy of the plugins herein.
Official Plugins
This repository tracks third-party plugins, but many official plugins are provided by Vector 35 that offer additional functionality:
- Example Plugins are included with all installs of Binary Ninja and can be installed from there
- Official Samples a fully formed repository of official plugins
- Sample Plugin if you're looking for a template to build a new plugin from
Installing Plugins
To install plugins, you can either use the Plugin Manager in the UI or clone the repositories linked here in into your plugin folder.
Contributing Plugins
- Create a new repository (Optionally, just copy it from the sample plugin)
- Fill out a
plugin.json
. Optionally you can use thegenerate_plugininfo.py -p
to interactively walk you through setting the required fields. Theplugin.json
must pass all the checks when run throughgenerate_plugininfo.py -v plugin.json
.generate_plugininfo.py
can also generate yourREADME.md
and yourLICENSE
file with the-r
,-l
, or-a
(all) options. Below is a list of the required and recommended fields. - Create and push a git tag with the version of your plugin (e.g.
v1.1
). Create a release, optionally attaching build artifacts as required. We recommend using our release helper which simplifies this process. - File an issue with a link to your repo.
- To update your plugin, simply do a new release! For future updates we'll automatically detect and add the new release to the plugin manager for you! (This previously was a manual step that has been since automated)
Required Fields
To be displayed in the plugin loader, your plugin.json
MUST have the following fields:
pluginmetadataversion
- The current version is the integer2
name
- Good names do not use "Binary Ninja" or "Binja" neither do they use the words "plugin" or "extension". So instead of "Binja 6502 Architecture Plugin" simply use "6502 Architecture"author
- Your name, handle, or company name.api
- A list of supported architectures. Currently onlypython3
is supported.license
- A json object withname
andtext
keys.description
- This is a short (<50 character) description of the plugin.version
- Version stringminimumBinaryNinjaVersion
- An integer build number so instead of1.1.555
use555
.platforms
- A list of strings one for each supported platform. Valid platforms areDarwin
,Linux
, andWindows
Recommended Fields
longdescription
- A longer Markdown formatted description of the plugin including hyperlinks and images as needed. This will be shown in the plugin preview in the plugin manager and images are highly recommended. If not specified or if empty, the README file from your repository will be automatically used instead.type
- A list of strings of the following types:core
,ui
,architecture
,binaryview
, andhelper
.helper
- Plugin that adds some base functionality to Binary Ninja. Most plugins will be of this type.ui
- The plugin extends the UI is some way.architecture
- The plugin adds an architecture (e.g.x86
,ARM
,MIPS
).binaryview
- The plugin adds a new BinaryView (e.g.PE
,MachO
,ELF
).core
- Plugin that extends the core's analysis. Your plugin probably isn't one of these.
installinstructions
- A json object with keys for each supported platform listed inplatforms
and text Markdown formatted.
License
Note that content contained in the root of this repository itself is Copyright 2016, Vector 35, Inc. and available under an MIT license, but each individual plugin may be released under a different license.