GhidraMCP:讓AI大模型能夠自主操作Ghidra進行逆向工程的開源項目
GhidraMCP 是什么?
GhidraMCP是一個通過MCP 協議,讓 ai 大模型(如 Claude)能夠自主操 Ghidra 進行逆向工程的開源項目。它將 Ghidra 的核心功能暴露給 MCP 客戶端,支持反編譯、分析二進制文件、自動重命名方法和數據,以及列出方法、類、導入和導出表。
GhidraMCP功能特征
反編譯與分析:支持在 Ghidra 中反編譯和分析二進制文件,生成可讀性強的偽代碼。
自動化重命名:基于語義分析自動標注方法名、類結構及數據變量,提升代碼可讀性。
結構化信息提取:批量導出程序的函數列表、類定義、導入/導出表等元數據。
多客戶端兼容:支持所有符合 MCP 協議的客戶端,如 Claude Desktop 和 5ire。
GhidraMCP應用場景
惡意軟件分析:自動識別樣本中的可疑 API 調用鏈,生成帶注釋的反編譯報告,提升分析效率。
固件漏洞挖掘:結合多模型調度能力,提取函數表、識別潛在漏洞點并生成驗證腳本。
軟件逆向工程:輔助理解復雜軟件的邏輯結構,降低逆向工程的難度。
技術架構
Python 腳本橋接:bridge_mcp_ghidra.py 腳本解析 AI 指令,通過 Socket 通信調用 Ghidra 插件。
Ghidra 插件:GhidraMCPPlugin 監聽指令并調用 Ghidra 的 Java API 執行反編譯、符號分析等操作。
GhidraMCP使用方法
1. 安裝 Ghidra 插件:
下載最新版本的 GhidraMCP 發布包。
啟動 Ghidra,選擇 File -> Install Extensions,導入下載的 ZIP 文件。
重啟 Ghidra,確保插件已啟用。
2. 配置 MCP 客戶端:
Claude Desktop:編輯配置文件 claude_desktop_config.json,添加 GhidraMCP 的服務配置。
5ire:在客戶端中設置工具配置,指定 Tool Key、Name 和 Command。
3. 運行與使用:
啟動客戶端后,即可通過自然語言與 AI 交互,調用 Ghidra 的功能進行逆向分析。
GhidraMCP GitHub:https://github.com/LaurieWired/GhidraMCP