Need help with community-plugins?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

Vector35
251 Stars 17 Forks MIT License 247 Commits 1 Opened issues

Description

Repository for community provided Binary Ninja plugins

Services available

!
?

Need anything else?

Contributors list

Binary Ninja Plugins

| PluginName | Author | Last Updated | License | Type | Description | |------------|--------|--------------|---------|----------|-------------| |Annotate Functions|B.Kerler with code from John Levy and @carstein|2019-07-09|MIT|binaryview|A plugin that annotates function arguments.| |Auto Utils|404'd|2020-12-12|MIT|helper|Various auto analysis utilities| |AVR Architecture Plugin|Kevin Hamacher|2021-03-11|MIT|architecture, binaryview|AVR architecture plugin + lifter.| |BD Viewer|Linus S. (aka PistonMiner)|2020-12-16|MIT|helper, ui|View BinDiff results and port symbols| |binja_sigmaker|apekros and Alex3434|2020-08-19|MIT|architecture, binaryview, core, ui|Generate and find signatures.| |BinRida|Andrea Ferraris|2019-09-26|MIT|helper|This plugin allows to stalk, dump and instrument a process using Frida functionalities.| |bn-riscv|Katharina Utz|2021-01-18|Apache-2.0|architecture|RISC-V architecture plugin.| |bn-uefi-helper|Brandon Miller (zznop)|2021-04-25|MIT|helper|Helper plugin for analyzing UEFI firmware| |bncov|Mark Griffin|2020-12-18|MIT|helper|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)|2020-07-16|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|2021-04-07|MIT|ui|Callgraph generator for called or calling funcs| |CHIP-8 ROM Loader|uafio|2020-08-15|MIT|architecture, binaryview, core, helper, ui|Load and disassemble CHIP-8 ROM.| |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.| |cryptoscan|Ben Pottier|2020-08-02|MIT|binaryview, ui|A plugin to detect several common crypto constructs and magic vars.| |DeGObfuscate|Jamie Hankins|2020-12-02|MIT|helper|De-obfuscates strings inside of obfuscated Go binaries| |Delphi VMT Analyzer|ImNotAVirus|2020-10-02|MIT|helper|Find Delphi VMTs and generate their structures| |Dependency analyzer|Shiz|2020-05-24|MIT|helper|Analyze dependencies and resolve obfuscated imports| |devi|@_murks|2020-11-04|MIT|helper, ui|devi - DEvirtualize VIrtual calls in C++ binaries| |Discord Rich Presence Integration|xitan|2021-03-25|MIT|helper|Enables Discord Rich Presence Integration for Binary Ninja| |Division and Modulo Deoptimizer|Nathan Peercy|2020-05-11|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| |Emotet API+string deobfuscator|Francesco Muroni|2020-09-21|MIT|helper|Deobufscate API calls and strings in unpacked Emotet samples.| |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-21|BSD-0-clause|ui|A plugin that adds a GUI for changing function ABI.| |Game Boy Loader and Architecture Plugin|Hugo Porcher (@icecr4ck)|2020-11-17|MIT|architecture, binaryview|A loader and diassembler for Game Boy ROMs.| |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|2020-12-17|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 Symbol Restore|Daniel Weber|2020-10-19|MIT|helper|Binary Ninja plugin for restoring function names from stripped Golang binaries| |hexfiles|toolCHAINZ|2020-10-03|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| |iBoot64 Loader|Blackwing Intelligence|2020-10-01|MIT|binaryview|Binary View for loading iBoot, SecureROM, etc. firmware| |IDC Importer|SpecterDev|2020-03-26|MIT|helper|Allows users to import idc database dumps from IDA into Binary Ninja.| |Improved Gameboy Architecture|Carl Svensson (@zetatwo)|2021-01-23|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|2020-05-17|BSD-0-clause|analysis|A plugin providing an analysis for Itanium C++ ABI.| |JMPscare|Lukas Seidel|2021-03-01|MIT|binaryview, core, helper, ui|Fuzzing Introspection for use with the JMPscare Toolkit.| |JNIAnalyzer|Terry Chia (Ayrx)|2021-03-26|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|2021-04-09|Unlicense|helper, ui|Remake of keypatch plugin for Binary Ninja| |logrn|catnip|2021-03-09|MIT|helper|binary ninja plugin for abusing logging functions| |Motorola 68k Architecture Plugin|Alex Forencich|2020-12-30|MIT|architecture|A disassembler and lifter for the Motorola 68k architecture.| |msp430 Architecture|Josh Watson|2019-09-06|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| |Obfuscation Detection|Tim Blazytko|2021-03-05|GPL-2.0|helper|Automatically detect control-flow flattening and other state machines| |Opaque Predicates Detective|Yu-Jye Tung|2021-04-09|MIT|helper|detect opaque predicates| |peutils|404'd|2020-12-12|MIT|helper|Binary Ninja plugin providing various niche utilities for working with PE binaries| |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.| |revsync|lunixbochs|2020-05-13|MIT|ui|Realtime IDA Pro and Binary Ninja sync plugin| |Rust Demangle|inspier|2021-01-06|MIT|helper|Demangles Rust symbols.| |Screenshot Ninja|jonpalmisc|2021-03-27|MIT|helper|Easily capture Binary Ninja screenshots in ultra-high resolution| |SENinja|Luca Borzacchiello|2020-10-27|2-Clause BSD|helper|Symbolic execution plugin for BinaryNinja| |SEPROM Loader|matteyeux|2021-01-05|MIT|binaryview|Binary View for loading 32 bits and 64 bits Apple SEPROM| |Sourcery Pane|mechanicalnull|2019-07-14|MIT|helper, ui|Synchronized source code pane for debug binaries| |SVD Memory Map Parser|Mitchell Johnson (@ehntoo)|2020-10-13|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|2020-11-25|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-11|Apache-2.0|helper|Tags functions using emoji for a number of interesting characteristics| |VMNDH-2k12 Architecture Plugin|verylazyguy|2019-07-10|MIT|architecture|A disassembler and lifter for the VMNDH-2k12 architecture.| |VTIL Plugin|Layle|2020-07-04|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-07|MIT|helper|Find IRP dispatch routines and valid IOCTLs in a Windows kernel driver| |YARA Scan|trib0r3|2020-05-26|MIT|binaryview, core|YARA signatures|

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:

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

  1. Create a new repository (Optionally, just copy it from the sample plugin)
  2. Fill out a
    plugin.json
    . Optionally you can use the
    generate_plugininfo.py -i
    to interactively walk you through setting the required fields. The
    plugin.json
    must pass all the checks when run through
    generate_plugininfo.py -v plugin.json
    .
    generate_plugininfo.py
    can also generate your
    README.md
    and your
    LICENSE
    file with the
    -r
    ,
    -l
    , or
    -a
    (all) options. Below is a list of the required and recommended fields.
  3. 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.
  4. File an issue with a link to your repo and the tag name of the release.
  5. To update your plugin repeat the two previous steps.

Required Fields

To be displayed in the plugin loader, your

plugin.json
MUST have the following fields:
  • pluginmetadataversion
    - The current version is the integer
    2
  • 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. Though we support
    python2
    and
    python3
    we highly recommend plugin authors support
    python3
    as
    python2
    support will be dropped as some time in the near future.
  • license
    - A json object with
    name
    and
    text
    keys.
  • description
    - This is a short (<50 character) description of the plugin.
  • longdescription
    - A longer Markdown formatted description of the plugin including hyperlinks and images as needed.
  • version
    - Version string
  • minimumBinaryNinjaVersion
    - An integer build number so instead of
    1.1.555
    use
    555
    .
  • platforms
    - A list of strings one for each supported platform. Valid platforms are
    Darwin
    ,
    Linux
    , and
    Windows

Recommended Fields

  • type
    - A list of strings of the following types:
    core
    ,
    ui
    ,
    architecture
    ,
    binaryview
    , and
    helper
    .
    • 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 in
    platforms
    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.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.