GhidraMCP
GhidraMCP 是面向 Ghidra 的模型上下文协议服务器,把核心 Ghidra 能力以工具形式暴露给 MCP 客户端,让 LLM 可自动反编译和分析二进制、重命名方法与数据,并列出方法、类、导入和导出。
访问 LaurieWired/GhidraMCP项目简介
GhidraMCP 是一个 MCP 服务器与 Ghidra 插件,旨在让 LLM 自主进行应用逆向工程。它把 Ghidra 核心功能中的大量工具暴露给 MCP 客户端。
核心功能
- 可在 Ghidra 中反编译和分析二进制。可自动重命名方法和数据。可列出方法、类、导入和导出。可将核心 Ghidra 功能作为 MCP 工具暴露。支持在无 Ghidra 图形界面的情况下进行可选的 Headless 分析。
适用场景
- 让 LLM 反编译函数并用通俗语言解释其行为。梳理二进制中的函数、导入、字符串和交叉引用。分析恶意软件样本、旧固件或自己的构建产物。在逆向工程过程中自动重命名方法和数据。
快速开始
- 安装 Ghidra 12.1.4 和 uv,或使用 Python 3.10+ 安装该包。下载最新发布包,通过 File 菜单中的 Install Extensions 导入扩展 zip,重启 Ghidra,并启用 GhidraMCPPlugin。配置 MCP 客户端启动 ghidra-mcp,并指向 Ghidra 服务器;默认地址为 localhost:8080。对于通过 URL 连接的客户端,以 streamable HTTP 传输运行 MCP 服务器,并把其 MCP 端点添加为远程服务器。进行 Headless 分析时,使用 headless 和
部署与要求
- 需要 Ghidra 12.1.4。推荐使用 uv;也可使用 Python 3.10+ 并通过 pip 安装。Headless 模式需要 Python 3.10 至 3.13、已安装 GhidraMCP 扩展或可用的 jar,并将 GHIDRA_INSTALL_DIR 指向 Ghidra 12.1.4 目录。MCP 服务器与 Ghidra HTTP 服务器默认使用 localhost:8080,且可配置。在 macOS 上,Headless 使用需要先构建一次 Ghidra 的反编译器。
采用前须知
- 许可证:Apache-2.0。在使用、修改或分发项目前,请确认其具体条款。