MCP server for Ghidra
该项目提供了一个用于 Ghidra 的 MCP (Model Context Protocol) 服务器,旨在辅助 LLM 进行逆向工程。它通过 Ghidra 插件向 MCP 客户端暴露核心功能,例如反编译、自动重命名和列出方法等。用户需安装 Ghidra、Python3 和插件,并配置 MCP 客户端(如 Claude Desktop 或 5ire)以连接到服务器。项目提供构建说明,并包含示例配置。
用于 Ghidra 的 MCP Server
ghidraMCP
ghidraMCP
是一个模型上下文协议(Model Context Protocol)服务器,旨在允许 LLM(大型语言模型)自主地进行应用程序逆向工程。它向 MCP 客户端公开了来自核心 Ghidra 功能的众多工具。
ghidraMCP_demo.mp4
功能特性
- 在 Ghidra 中反编译和分析二进制文件
- 自动重命名方法和数据
- 列出方法、类、导入和导出
安装
前置条件
- Mac / Windows
- 安装 Ghidra
- Python3
Ghidra
首先,从本仓库下载最新的 release。其中包含 Ghidra 插件和 Python MCP 客户端。然后,您可以直接将插件导入到 Ghidra 中。
- 运行 Ghidra
- 选择
File
->Install Extensions
- 点击
+
按钮 - 从下载的 release 中选择
GhidraMCP-1-0.zip
(或您选择的版本) - 重启 Ghidra
- 确保
GhidraMCPPlugin
在File
->Configure
->Developer
中已启用
视频安装指南:
ghidra_MCP_Install.mp4
MCP 客户端
理论上,任何 MCP 客户端都应该与 ghidraMCP
兼容。下面提供了两个示例。
示例 1:Claude Desktop
要将 Claude Desktop 设置为 Ghidra MCP 客户端,请转到 Claude
-> Settings
-> Developer
-> Edit Config
-> claude_desktop_config.json
并添加以下内容:
{
"mcpServers": {
"ghidra": {
"command": "python",
"args": [
"/ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py"
]
}
}
}
或者,直接编辑此文件:
/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json
示例 2:5ire
另一个在后端支持多个模型的 MCP 客户端是 5ire。要设置 GhidraMCP,打开 5ire 并转到 Tools
-> New
并设置以下配置:
- Tool Key: ghidra
- Name: GhidraMCP
- Command:
python /ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py
从源码构建
mvn clean package assembly:single
生成的 zip 文件包含构建的 Ghidra 插件及其资源。这些文件是 Ghidra 识别新扩展所必需的。
- lib/GhidraMCP.jar
- extensions.properties
- Module.manifest
关于
MCP Server for Ghidra
资源
许可
Stars
Watchers
Forks
Releases 1
GhidraMCP 1.0 Latest Mar 25, 2025
Packages 0
No packages published