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つのモードで動作可能です:

  1. GUIモード:実行中のIDA Proインターフェースに接続します。
  2. ヘッドレスモードidalib を使用してデータベースワーカーを分離プロセスとして管理し、可視GUIなしで自動解析を実行できます。

対象ユーザー

リバースエンジニアやセキュリティ研究者が、LLMを活用してバイナリ解析の面倒な部分(関数のドキュメント化、パターンの特定、デコンパイルコードの整備など)を自動化したい場合に最適です。

特徴

  • 包括的なツールセット:デコンパイル、ディアセンブリ、クロスリファレンス、メモリ読み取り、パッチ適用のためのツールを提供。
  • データベース管理:複数の同時データベースセッションをサポートし、ヘッドレスワーカーを管理するスーパーバイザーを備えています。
  • インタラクティブなデバッグ:ブレークポイント、レジスタの確認、メモリ書き込みを含むデバッガー制御用のオプション拡張機能を備えています。
  • 直接的な修正:変数名の変更、型の宣言、コメントの追加などにより、LLMがIDAデータベースを積極的に改善できます。
  • 高度な検索:正規表現による文字列検索とバイトパターンマッチングをサポート。
  • Python統合py_eval ツールにより、IDAコンテキスト内で任意のPythonコードを実行できます。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト