逆向二进制,最枯燥也最费时的是反复在 Ghidra 里点“反编译、看函数、查导入导出”。把 LLM 接进来做这件事,过去要自己写胶水把 Ghidra 的 API 暴露成工具。GhidraMCP 直接把这个桥接做成 MCP 服务器,让任何 MCP 客户端都能让模型自主反编译、分析、重命名符号。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | GhidraMCP |
| GitHub地址 | https://github.com/LaurieWired/GhidraMCP |
| 项目描述 | 让大语言模型通过 MCP 自主逆向工程的 Ghidra 服务器 |
| 作者 | LaurieWired |
| 开源协议 | Apache License 2.0 |
| 开源状态 | 公开 |
| Languages | — |
| 支持平台 | Windows / macOS / Linux |
| 最后更新 | 2026-10-10 |
一、项目介绍
LaurieWired/GhidraMCP 是一个 MCP(Model Context Protocol)服务器,让 LLM 自主逆向工程,Apache-2.0 协议。它把 Ghidra 的核心能力(反编译、列出方法/类/导入/导出、自动重命名)暴露为 MCP 工具,并提供配套 Ghidra 插件与 Python MCP 客户端。支持 VS Code、Claude Code 等客户端,也支持无 GUI 的 headless 模式(用 PyGhidra 直接导入分析二进制)。
二、核心优势
- 原生 MCP:把 Ghidra 能力作为标准 MCP 工具暴露,任意客户端可用。
- 反编译分析:LLM 可自主反编译、列出符号、自动重命名。
- 多客户端:VS Code、Claude Code 等按标准 JSON 配置接入。
- Headless 模式:无需 Ghidra GUI,用 PyGhidra 直接分析二进制。
- 跨平台:基于 Java/Ghidra,Windows / macOS / Linux 均可运行。
三、适用场景
- 让 LLM 辅助分析未知二进制与固件。
- 在 VS Code/Claude Code 里把逆向能力当工具调用。
- 自动化批量反编译与符号重命名。
- 安全研究中的辅助逆向工作流。
四、安装教程
先装 Ghidra 12.1.4 与 uv,再从 Releases 下载插件导入 Ghidra:
# 在 Ghidra: File -> Install Extensions -> 选 GhidraMCP.zip -> 重启
uvx --from git+https://github.com/LaurieWired/GhidraMCP ghidra-mcp --ghidra-server http://127.0.0.1:8080/常见报错:Ghidra 版本需匹配(12.1.4),否则插件加载失败;uvx 首次会拉取依赖,需联网。
五、使用示例
Claude Code 接入(一行):
claude mcp add ghidra -- uvx --from git+https://github.com/LaurieWired/GhidraMCP ghidra-mcp --ghidra-server http://127.0.0.1:8080/VS Code(.vscode/mcp.json):
{
"servers": {
"ghidra": {
"type": "stdio",
"command": "uvx",
"args": ["--from", "git+https://github.com/LaurieWired/GhidraMCP", "ghidra-mcp", "--ghidra-server", "http://127.0.0.1:8080/"]
}
}
}真实效果:配置后,模型在客户端里调用 GhidraMCP 工具,对目标二进制反编译、列出导入导出、自动重命名方法——把“人肉点 Ghidra”变成“模型自主分析”。
六、常见问题
Q:一定要开 Ghidra GUI 吗?
A:不必,headless 模式用 PyGhidra 直接分析二进制。
Q:支持哪些客户端?
A:任意 MCP 客户端,如 VS Code、Claude Code。
Q:协议允许商用吗?
A:Apache-2.0,允许商用与修改,需保留版权与许可声明。
七、总结
GhidraMCP 用标准 MCP 把 Ghidra 的逆向能力暴露给任意 LLM 客户端,让“模型自主逆向”成为现实。对做安全研究与二进制分析、又想用上 AI 的团队,它是低摩擦的桥接层;Apache-2.0 协议,支持 headless。
评论 0
还没有评论,来说两句吧。