mrexodia/ida-pro-mcp
AI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
何を解決するか
このプロジェクトは、IDA Proディスアセンブラおよびデコンパイラを大規模言語モデル(LLM)に接続するモデルコンテキストプロトコル(MCP)サーバーを提供します。これにより、「バイブリバース」が可能になり、AIエージェントがIDA Pro内のバイナリデータベースをインタラクティブに分析・リネーム・コメント・変更することで、リバースエンジニアリング作業を支援できます。
動作方法
サーバーは、MCP互換クライアント(Claude、Cursor、VS Codeなど)とIDA Proの間のブリッジとして機能します。主に2つのモードで動作します:
- GUIモード:実行中のIDA Pro GUIインスタンスに接続します。
- ヘッドレスモード:
idalibを使用してデータベースワーカーを分離プロセスとして管理し、GUIなしでLLMがバイナリを開いて分析できるようにします。
LLMに包括的なツールセットを提供しており、デコンパイル、ディスアセンブリ、クロスリファレンス、メモリ読み取り、アセンブリのパッチ適用、さらにはデバッガ制御も可能です。また、IDBメタデータ、セグメント、型情報の閲覧に使える読み取り専用リソースも提供します。
対象ユーザー
変数のリネーム、関数ロジックのドキュメント化、オブスカレートコード内のパターンの特定など、バイナリ解析の面倒な部分をLLMで自動化したいリバースエンジニアやセキュリティ研究者。
特徴
- 包括的なツールセット:デコンパイル、パッチ適用、型宣言、高度な制御フローアナリシスのためのツールを含む。
- ヘッドレス分析:
idalibのサポートにより、スケーラブルでバックグラウンドでのバイナリ分析が可能。 - デバッガ統合:ステップ実行、ブレークポイント、レジスタの確認など、IDAデバッガを制御するオプション拡張機能。
- pyridazine対応API:強力な型指定とバッチ優先設計により、複数操作を効率的に処理し、カーソルベースのページネーションでトークンオーバーフローを低減。
- Python実行:
py_evalを介して、LLMがIDAコンテキスト内で任意のPythonコードを実行可能。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト