Communitygithub.com

binary-ninja-reverse

Binary Ninja での正規バイナリ解析に使用します。HLIL/MLIL/LLIL の調査、文字列/インポート/エクスポート、相互参照、型、パッチレビュー、Python API 自動化、オプションの Binary Ninja MCP または localhost HTTP 統合を含みます。

binary-ninja-reverse とは?

このスキルは、Binary Ninja を使用したバイナリ解析ワークフローを提供します。ユーザーが明示的に Binary Ninja を選択した場合や、その中間言語 (IL) がデータフロー解析に役立つ場合、または IDA/Ghidra/radare2 の結果を独立して相互検証する必要がある場合に使用します。対応する統合方法は、GUI または Python API(推奨)、コミュニティ製の MCP ブリッジ(`fosdickio/binary_ninja_mcp`)、および Binary Ninja が利用できない場合のフォールバックとしての Ghidra、IDA、radare2 です。解析ワークフローでは、バイナリの状態取得、インポート/エクスポート/文字列の列挙、HLIL/MLIL/LLIL を用いた関数の逆コンパイルとデータフロー解析、相互参照の追跡、型やコメントの適用、バイトパッチなどの変更操作を安全に行うための手順が定義されています。出力時には、具体的なアドレス、関数名、IL レベル、証拠となる文字列やインポート、信頼度、再現手順を報告し、証拠→発見→パスのチェーンを維持することを推奨します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/binary-ninja-reverse

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Binary Ninja リバースエンジニアリング

ユーザーが明示的に Binary Ninja を選択した場合、その中間言語 (IL) がデータフロー解析に実質的に役立つ場合、または IDA/Ghidra/radare2 の結果を独立して相互検証する必要がある場合に Binary Ninja を使用します。

安全に始める

  1. 対象に対してアクションを起こす前に、リポジトリのケーススコープの準備ができていることを確認します。
  2. skills/tool-index.md で binaryninja を確認します。Binary Ninja は商用ソフトウェアであり、有効な Vector 35 ライセンスを使用して手動でインストールする必要があります。
  3. パッチを適用したりデータベースの変更を保存する場合は、コピーに対して作業します。
  4. 発見事項を報告する前に、インポート/エクスポート、エントリポイント、アーキテクチャ、ファイルハッシュを記録します。

統合方法を選択する

  • GUI または Python API: Binary Ninja が既に開いている場合、またはユーザーが直接的な対話型解析を希望する場合に推奨します。
  • コミュニティ MCP ブリッジ: 明示的に要求された場合のみ、かつサードパーティプラグインの境界を確認した後に使用します。Binary Ninja HTTP リスナーは 127.0.0.1:9009 に保ち、デフォルトでネットワーク公開を有効にしないでください。
  • フォールバック: Binary Ninja が利用できない場合、またはそのライセンス/API で対象を開けない場合は、ghidra-reverse、ida-reverse、radare2 を使用します。

レビュー済みのコミュニティ統合は fosdickio/binary_ninja_mcp です。GPL-3.0、プラグインメタデータバージョン 1.1.0、最小 Binary Ninja ビルド 4000。このリポジトリは Vector 35 の公式コンポーネントではありません。このスキルは 2026-09-03 にコミット 8c5134ee46e2bf44f9a4d846bd971c3e39b3e306 に対して確認されました。

Binary Ninja 側は、プラグインマネージャーまたはレビュー済みのソースからインストールします。MCP stdio ブリッジには、無制限のパッケージではなく、公開済みのブリッジバージョンを固定してください。

npx -y [email protected] --host 127.0.0.1 --port 9009

そのコマンドは、ユーザーが選択した MCP クライアントでのみ登録します。Binary Ninja が実行中で、バイナリが開かれ、localhost プラグインエンドポイントが応答するまで、ブリッジは準備完了になりません。

解析ワークフロー

  1. 開かれているバイナリを列挙し、目的のビューを選択します。
  2. バイナリの状態、エントリポイント、セグメント、インポート、エクスポート、代表的な文字列を取得します。
  3. 関数を単独で解釈する前に、コールサイトと相互参照を追跡します。
  4. 読みやすいロジックには HLIL、データフローには MLIL SSA、リフティングによって命令レベルの動作が失われる場合は LLIL/逆アセンブリを使用します。
  5. 名前、コメント、型を段階的に適用し、元のアドレスを証拠として保持します。
  6. バイトパッチ、プロトタイプ変更、ファイル保存の書き込みを変更操作として扱います。要求された場合のみ実行し、元のアーティファクトを保存します。
  7. 影響の大きい結論は、第二の証拠源または別の逆アセンブラで相互検証します。

有用な MCP 機能ファミリには、バイナリ/ビュー選択、list_imports、list_exports、list_strings、decompile_function、get_il、呼び出し元/呼び出し先、相互参照、型、コメント、名前変更、バイトパッチなどがあります。すべての上流関数が存在すると仮定せず、実際のツールリストを発見してください。

出力

具体的なアドレス、関数名、IL レベル、裏付けとなる文字列/インポート、信頼度、再現手順を報告します。リポジトリの他の部分で使用される「証拠→発見→パス」のチェーンを維持します。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

go-rust-reverse

Use for reverse engineering stripped Go and Rust binaries including runtime recognition, pclntab/moduel data recovery, panic strings, and idiomatic decompilation recovery.

関連スキル