让 LLM 客户端通过 MCP 调用 Ghidra 逆向分析功能的服务器,可反编译和分析二进制文件。
bethington/ghidra-mcp
让 AI 助手通过 MCP 调用 Ghidra 做逆向分析的服务器,提供 200 多个工具。
- Star
- 5,821
- Fork
- 347
- 未关闭 Issue
- 33
- 最近提交
- 5天前
这是什么?
GhidraMCP 是一个 MCP(Model Context Protocol)服务器,把 Ghidra 的逆向分析能力接入 AI 助手和自动化工具。它提供 200 多个工具,覆盖反编译、调用图、交叉引用、数据类型与结构体、字符串和导入表分析,并支持重命名、设置类型、添加注释等写操作。既可以作为 Ghidra GUI 插件运行,也可以以无界面的 headless 服务器方式运行,便于脚本化和 Docker 部署。
除静态分析外,项目还支持对单个函数进行 P-code 模拟执行,基于 Ghidra TraceRmi 框架的实时调试器集成,以及从指定变量或寄存器出发的 P-code 数据流追踪。通过函数哈希匹配,可以把已有文档迁移到另一个版本的二进制文件上。工具默认按需加载,避免一次性塞满 MCP 客户端;脚本执行功能需要显式开启。
项目要求 Ghidra 12.1.4 和 Java 21,Python 桥接程序可通过 uv 或 pip 安装。
核心功能
- 01提供 200 多个 MCP 工具,涵盖反编译、交叉引用和调用图分析。
- 02支持重命名、重新设置类型、添加注释和创建结构体等写操作。
- 03既可作为 Ghidra GUI 插件运行,也可以 headless 服务器方式运行,支持 Docker。
- 04支持对单个函数进行 P-code 模拟执行,以及基于 P-code 的数据流追踪。
- 05通过 Ghidra TraceRmi 框架集成实时调试器。
- 06基于 SHA-256 函数哈希,在不同版本的二进制文件之间迁移函数文档。
适用场景
- 让 AI 助手逐步分析无符号的二进制文件,为函数命名并补充文档。
- 在多次分析会话中,按统一命名规范批量标注大型程序。
- 借助函数哈希匹配,把分析成果从二进制的旧版本迁移到新版本。
- 在 CI 或 Docker 流水线中无界面地运行自动化 Ghidra 分析。
快速上手
- 1
安装前置条件:Ghidra 12.1.4、Java 21 和 uv
- 2
在 Ghidra 中通过 File > Install Extensions 安装 GhidraMCP 扩展 zip 包,然后重启 Ghidra
- 3
使用 uv 从发行版 wheel 安装 MCP 桥接器
uv tool install https://github.com/bethington/ghidra-mcp/releases/download/v7.0.0/ghidra_mcp_bridge-7.0.0-py3-none-any.whl - 4
在 MCP 客户端中使用桥接器的绝对路径进行配置
使用前须知
- Ghidra 扩展只能在其构建所针对的确切版本 12.1.4 中加载。
- 需要 Java 21,并且要运行已启用 GhidraMCP 插件的 Ghidra 实例。
- main 分支和候选版本处于测试阶段,dev 分支为实验性质,工具接口可能发生变化。
- 实时调试器功能仅能通过 Ghidra 图形界面插件使用。
标签
常见问题
- ghidra-mcp 是什么?
- 让 AI 助手通过 MCP 调用 Ghidra 做逆向分析的服务器,提供 200 多个工具。 GhidraMCP 是一个 MCP(Model Context Protocol)服务器,把 Ghidra 的逆向分析能力接入 AI 助手和自动化工具。它提供 200 多个工具,覆盖反编译、调用图、交叉引用、数据类型与结构体、字符串和导入表分析,并支持重命名、设置类型、添加注释等写操作。既可以作为 Ghidra GUI 插件运行,也可以以无界面的 headless 服务器方式运行,便于脚本化和 Docker 部署。
- ghidra-mcp 可以免费使用吗?用的什么许可证?
- ghidra-mcp 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- ghidra-mcp 还在维护吗?
- 活跃维护中。ghidra-mcp 最近一次提交是在 2026年10月16日。
- ghidra-mcp 适合用来做什么?
- 让 AI 助手逐步分析无符号的二进制文件,为函数命名并补充文档。 在多次分析会话中,按统一命名规范批量标注大型程序。 借助函数哈希匹配,把分析成果从二进制的旧版本迁移到新版本。 在 CI 或 Docker 流水线中无界面地运行自动化 Ghidra 分析。
- ghidra-mcp 怎么安装和运行?
- 安装前置条件:Ghidra 12.1.4、Java 21 和 uv 在 Ghidra 中通过 File > Install Extensions 安装 GhidraMCP 扩展 zip 包,然后重启 Ghidra 使用 uv 从发行版 wheel 安装 MCP 桥接器: uv tool install https://github.com/bethington/ghidra-mcp/releases/download/v7.0.0/ghidra_mcp_bridge-7.0.0-py3-none-any.whl 在 MCP 客户端中使用桥接器的绝对路径进行配置
- 在哪里获取 ghidra-mcp?
- 源代码和安装说明在 GitHub 上:https://github.com/bethington/ghidra-mcp
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
让 AI 智能体通过 MCP 和命令行逆向分析原生二进制、Electron 应用、.NET 程序集和网站。
Ghidra 是美国国家安全局开源的软件逆向工程框架,提供反汇编、反编译、图形化分析和脚本能力。
一套面向初学者的开源课程,用 C#、Java、JavaScript、Python、Rust 和 TypeScript 示例讲解 MCP 协议。
面向 AI 智能体的网页搜索、抓取与交互 API,输出干净的 Markdown、JSON 和截图。
将 Android Dex、APK 等文件反编译为可读 Java 源码的命令行与图形界面工具。