mrexodia/ida-pro-mcp
AI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
何を解決するか
このプロジェクトは、大規模言語モデル(LLM)がIDA Pro(プロフェッショナルなディアセンブラーおよびリバースエンジニアリングツール)と直接対話できるようにすることで、「バイブリバース」を可能にします。AIアシスタントと複雑なバイナリ解析環境の間のギャップを埋め、ユーザーが手動でデータをコピー&ペーストする必要なく、コードのデコンパイル、変数名の変更、制御フローの分析などのタスクをAIが実行できるようにします。
動作方法
Model Context Protocol (MCP) サーバーを実装し、IDA Proの内部機能をMCP互換クライアント(Claude、Cursor、VS Codeなど)向けのツールとリソースとして公開します。以下の2つのモードで動作可能です:
- GUIモード:実行中のIDA Proインターフェースに接続します。
- ヘッドレスモード:
idalibを使用してデータベースワーカーを分離プロセスとして管理し、可視GUIなしで自動解析を実行できます。
対象ユーザー
リバースエンジニアやセキュリティ研究者が、LLMを活用してバイナリ解析の面倒な部分(関数のドキュメント化、パターンの特定、デコンパイルコードの整備など)を自動化したい場合に最適です。
特徴
- 包括的なツールセット:デコンパイル、ディアセンブリ、クロスリファレンス、メモリ読み取り、パッチ適用のためのツールを提供。
- データベース管理:複数の同時データベースセッションをサポートし、ヘッドレスワーカーを管理するスーパーバイザーを備えています。
- インタラクティブなデバッグ:ブレークポイント、レジスタの確認、メモリ書き込みを含むデバッガー制御用のオプション拡張機能を備えています。
- 直接的な修正:変数名の変更、型の宣言、コメントの追加などにより、LLMがIDAデータベースを積極的に改善できます。
- 高度な検索:正規表現による文字列検索とバイトパターンマッチングをサポート。
- Python統合:
py_evalツールにより、IDAコンテキスト内で任意のPythonコードを実行できます。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト