Sichere lokale REST-, CLI-, MCP- und Agent-Bridge für IDA Pro 9.x
Autonome KI- & MCP-Kontrollschicht für IDA Pro 9.x
Verwandeln Sie IDA Pro in eine agentische Reverse-Engineering-Powerhouse. Verbinden Sie Claude Desktop, Cursor, Antigravity oder benutzerdefinierte LLM-Agenten über das Model Context Protocol (MCP) oder eine leistungsstarke REST-API.
┌─────────────────────────────────────────────────────────┐
│ IDA Pro 9.x │
│ ph4ntom_ida_bridge.py (102 REST Endpoints) │
│ 127.0.0.1:13370 (Bearer Token Protected) │
└────────────────────────────┬────────────────────────────┘
│ REST / JSON / SSE
┌────────────────────────────────┼───────────────────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ MCP Server │ │ CLI / SDK │ │ AI Agents │
│ 54 Tools │ │ `ph4ntom-ida`│ │ Multi-LLM │
│ Claude │ │ Automation │ │ Gemini │
│ Cursor │ │ Headless │ │ Ollama │
│ Antigravity │ │ Testing │ │ Claude / GPT │
└───────────────┘ └───────────────┘ └───────────────┘
ph4ntom IDA Bridge ist eine Steuerungsebene ausschließlich für localhost für IDA Pro 9.x. Es kombiniert ein eigenständiges IDA-Plugin, eine JSON-REST-API, einen Python-Client, eine CLI, 54 native MCP-Tools und optionale eigenständige KI-Backends.
Version 6.2.0 bringt vollständige IDA 9.3-Kompatibilität, atomare Datenbankmutationen, konstante Token-Authentifizierung, SSE-Cursor-Tracking und vollständige Testsuite-Abdeckung.
Verbinden Sie Claude Desktop, Cursor oder einen beliebigen MCP-Client in 60 Sekunden mit Ihrer laufenden IDA Pro-Instanz:
git clone https://github.com/ph4ntom-rev/ph4ntom-ida-bridge.git
cd ph4ntom-ida-bridge
python -m pip install -e ".[mcp]"
python cli.py install-plugin --ida-dir "C:\Program Files\IDA Professional 9.0"
(Oder kopieren Sie ida_plugin/ph4ntom_ida_bridge.py und api_schema.json direkt in Ihr IDA-plugins/-Verzeichnis).
Bearbeiten Sie %APPDATA%\Claude\claude_desktop_config.json (Windows) oder ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"ida-bridge": {
"command": "python",
"args": [
"C:/path/to/ph4ntom-ida-bridge/mcp_server.py"
]
}
}
}
Zu .cursor/mcp.json oder Cursor Settings → MCP hinzufügen:
{
"mcpServers": {
"ida-bridge": {
"command": "python",
"args": ["-m", "mcp_server"],
"cwd": "C:/path/to/ph4ntom-ida-bridge"
}
}
}
Starten Sie IDA Pro, drücken Sie Ctrl+Shift+A, um den Server umzuschalten, und fordern Sie Ihren KI-Assistenten auf:
"Untersuche die Funktion bei 0x140001000. Verfolge Querverweise, analysiere den Microcode, dekompiliere zu C-Pseudocode und benenne verschleierte Variablen in aussagekräftige Namen um."
| Funktion | ph4ntom IDA Bridge | Gepetto / IDAGPT | Hex-Rays Copilot |
|---|---|---|---|
| Architektur | Bidirektionales MCP + REST + CLI | Einzelner Prompt-Wrapper | Proprietäres UI-Plugin |
| Tool-Anzahl | 54 granulare MCP-Tools | 1 (Decompile-Prompt) | Feste Prompt-Aktionen |
| AST & Kontrollfluss | Vollständiger ctree-AST + Microcode-IR (0-7) | Nur Pseudocode-Text | Nur Pseudocode-Text |
| Sichere Mutationen | Atomare Batch-Mutationen mit Rollback | Nur Kommentareinfügung | Vorschläge in der UI |
| Live-Debugger | Register, Stack, Speicher, Breakpoints | Nein | Nein |
| Dynamische Ausführung | IDAPython-Ausführungsengine zur Laufzeit | Nein | Nein |
| Unterstützte LLMs | Jeder MCP-Client / Claude / GPT / Gemini / Ollama | Nur OpenAI API | Proprietäre Cloud |
| Sicherheit & Authentifizierung | Nur localhost, 256-Bit-Token, Owner-DACL | Offengelegter Klartext-API-Schlüssel | Proprietär |
| IDA Pro 9.3-Unterstützung | Verifiziert & vollständig getestet | Defekt ab IDA 9+ | Offiziell |
Der MCP-Server stellt 54 zweckgebundene Tools über 7 Reverse-Engineering-Domänen bereit:
| Kategorie | Tools | Beschreibung |
|---|---|---|
| 🔍 Binärdateien & Segmente | ping, get_binary_info, list_segments, read_bytes, read_vtable | Binärmetadaten, Bitness, Berechtigungen, vtable-Extraktion |
| 🧩 Dekompilierung & AST | decompile, get_disassembly, get_ctree, get_microcode, get_local_variables, get_function_details | Hex-Rays C-Pseudocode, AST-ctree-JSON, Microcode-IR (0=PREOPT bis 7=LVARS), Prototypinformationen |
| 🕸️ Callgraphs & Xrefs | get_xrefs_to, get_xrefs_from, get_callers, get_callees, get_call_graph, get_basic_blocks, get_strings_used | Querverweise, rekursive Caller-Bäume, Kontrollfluss von Basisblöcken |
| 🔎 Suche & Exploration | search_function, search_bytes, search_text, list_strings, list_names, list_imports, list_exports | Wildcard-Byte-Suche (??), importierte DLL-Funktionen, Exporte, String-Filterung |
| 🏷️ Typen & Structs | list_structs, get_struct, list_enums, list_types, get_type, create_type, create_struct | Parsen von C-Deklarationen, Strukturdefinitionen, Inspektion von Enum-Membern |
| ✏️ Datenbank-Mutation | rename_function, comment_function, set_inline_comment, rename_variable, set_variable_type, set_function_type, patch_bytes, batch_mutations, undo, redo, save_database, navigate_to | Verifiziertes Umbenennen, Typisierung lokaler Variablen, Binär-Patching, atomares Rollback |
| 🐞 Live-Debugger | dbg_start, dbg_set_breakpoint, dbg_continue, dbg_step_into, dbg_step_over, dbg_get_registers, dbg_read_memory, dbg_get_stack | Prozessausführungssteuerung, Hardware-Breakpoints, Live-Register- und Speicherauszug |
| ⚡ Dynamisches IDAPython | execute_idapython | Echtzeit-IDAPython-Ausführung mit strukturierter result-Erfassung |
| 📦 MCP-Ressourcen | ida://info, ida://schema | Echtzeit-Binärmetadaten und vollständiges OpenAPI-Schema |
Die Bridge läuft innerhalb von IDA Pro und gewährt mächtige Fähigkeiten. Version 6 implementiert Defense-in-Depth-Standardeinstellungen: