re-binaryninja
Installation
SKILL.md
Binary Ninja 逆向工作流
何时使用 / 何时不用
- 用:需要 MLIL 中间语言(比裸反汇编可读得多)阅读函数逻辑;Python 脚本自动化标注/批处理;按预算选型(个人版/商业版)
- 用:需要 DFG 数据流图(寄存器/常量传播路径可视化)追踪单条数据的流向(密钥、标志位)
- 用:多架构目标(x86/ARM/MIPS/RISC-V/PowerPC 等常见架构均支持,移动/嵌入式目标可直接分析)
- 用:
RE_DECOMPILER=binaryninja场景下作为反编译器 - 不用:已有 Ghidra/IDA 工作流且无选型动机(按
RE_DECOMPILER会话变量,[[re-ghidra]] 默认) - 不用:纯命令行快速分析([[re-radare2]] 更轻);无头批处理最简场景([[re-ghidra]] analyzeHeadless 生态更成熟)
- 不用:动态调试为主的目标(BN 内置调试器处于实验阶段——调试走 [[re-gdb]] / [[re-x64dbg]] / [[re-lldb]])
- 不用:个人版做大规模无头自动化(headless 是商业版能力,见 [[gotchas]])
工具准备
参考 [[re-analyze/platform-tips]]——Binary Ninja 静态分析免沙箱;脚本触发动态执行时默认沙箱内。