テック技報最新号へ →
セキュリティ

Ghidra を AI から操作する(GhidraMCP)

Ghidra 拡張+ブリッジで MCP 経由にデコンパイル・xref・名前/型/コメント編集を公開し、AI エージェントにマルウェア等の静的解析を補助させる。

@MalwareBibleJP · 2026-10-12
#malware-analysis#ghidra#mcp#ai-agent#reverse-engineering

何を解決するか / いつ使うか

  • Ghidra で開いたバイナリに対し、関数一覧・相互参照・構造体付けをエージェントに手伝わせたいとき。
  • IDA データベースを SQL/AI エージェントで解析する(IDASQL) が IDA 向けなのに対し、Ghidra ユーザー向けの同様の橋渡しが欲しいとき。
  • 試験用プレリリース(例: 7.0.0-rc.2)で、編集系ツールまで含めた MCP 面を試したいとき。

手順の概要

  1. 配布を確認する
    投稿時点で紹介された試験用プレリリースは GhidraMCP 7.0.0-rc.2(MCP ツール約 209)。メンテの中心は bethington/ghidra-mcp(旧 LaurieWired 系からの移行先)。Ghidra 本体の版と拡張 ZIP のスタンプ版が一致していないと読み込めない。
  2. Ghidra に拡張を入れる
    • File → Install Extensions → + でリリースの GhidraMCP-*.zip を選ぶ。
    • Ghidra を再起動し、CodeBrowser 側で GhidraMCP プラグインを有効化する。
    • HTTP サーバーはプラグイン有効時に起動する(既定は localhost)。ポートは Edit → Tool Options → GhidraMCP HTTP Server で変更可。
  3. ブリッジ(MCP サーバー)を入れる
    sh
    uv tool install ./ghidra_mcp_bridge-7.0.0-py3-none-any.whl
    bridge-mcp-ghidra

    (pip install の wheel、または python -m bridge_mcp_ghidra でも可)

  4. MCP クライアントに登録する
    Claude Code / Cursor 等の MCP 設定で、ブリッジを指す。Ghidra 側に解析対象プログラムを開いた状態で、デコンパイル結果・xref の取得に加え、名前・型・コメント付与や構造体作成などの編集をエージェントから実行できる。
  5. 解析の使い方の例
    不審 API の呼び出し元洗い出し、文字列参照の順位付け、構造体候補の命名など。AI エージェント向け RE スキル集を入れる前に確認する(reverse-skill) と同様、隔離環境で悪性バイナリを扱う前提にする。

注意点

  • プレリリースはテスト用途。本番解析フローに載せる前に、使う Ghidra 版との組み合わせと安定版の有無を確認する。
  • 待ち受けは localhost 前提。エージェント接続は IDA データベースを SQL/AI エージェントで解析する(IDASQL) と同様、外部公開しない・ホスト FW で閉じる。
  • AI に編集まで任せるため、注釈の誤りや過剰なリネームがあり得る。重要な結論は人手で再確認する。
  • 解析対象は隔離 VM 等で扱い、ホストの本物シークレットや社内リポジトリには繋がない。

出典

X の元の投稿を開く