- ghidraMCP は、大規模言語モデル(LLM)がアプリケーションを自律的にリバースエンジニアリングできるよう支援する Model Context Protocol (MCP) サーバー
- Ghidra の中核機能を MCP クライアントに公開し、LLM が分析ツールを直接活用できるようにする
- 既存の手動分析プロセスを自動化することで、リバースエンジニアリングの速度と効率の向上に貢献
- AI ベースのセキュリティ分析、マルウェア解析、バイナリデバッグなど、さまざまな分野で活用可能
主な機能
- MCP サーバーおよび Ghidra プラグイン構成
- LLM と Ghidra 間の接続インターフェースを提供
- Ghidra の機能を API 形式で MCP プロトコルに公開
- バイナリのデコンパイルと解析
- Ghidra を通じて ELF、PE などさまざまな形式の実行ファイルをデコンパイルし、解析を実行
- メソッド名およびデータ名の自動命名
- 難読化されている、または名前のないメソッドやデータに意味のある名前を自動付与
- コードの可読性と解析速度を向上
- コード構造の参照機能
- メソッド、クラス、import および export の一覧を抽出
- コードフローおよび依存関係の分析に有用
1件のコメント
Hacker Newsの意見
いつか、あらゆるプロプライエタリなバイナリをソースコードに変換できるツールが生まれてほしいという意見がある。すべてのゲームの「オープンソース」版を持てたら面白そうだ
LLMがコードを扱うにはASTネイティブであるべきだと思う。コードはツリー構造なのに、私たちはそれを線形のままモデルに入力している
現在MCPを呼び出せるツールについての質問がある。ClaudeのデスクトップアプリケーションがMCPをローカルで使えることを知った
GhidraとLLMの以前の統合に関する良い動画があった
radare2に関する情報もある
GhidraからLLMへコピー&ペーストするだけの体験はうまくいかなかった。この種のものについてベンチマークがあるとよい
MCPサーバーに、プログラムの任意読み取りや書き込みのような、より多くの機能があるとよいという意見がある
すべてのバイナリを即座に完全リバースエンジニアリングできるとしたら、セキュリティがどう変わるかという思考実験がある
MCPサーバーの「カタログ」を作っている人がいるのか気になっている。GitHubで検索するのは、これを見つける最善の方法ではない