AI 逆向工程与代码理解实战 · 第 03 章 GhidraMCP实战


AI 逆向工程与代码理解实战 · 第 03 章 GhidraMCP实战

章节摘要:GhidraMCP(LaurieWired/GhidraMCP,约 1.1 万 stars,Apache-2.0,社区口径 2026-10)把第 01 章的 Ghidra 工程变成模型可操作的 MCP 服务。2.0 版(2026-10-10 发布)适配 Ghidra 12.1.4、移除 Ghidra 侧 Python 桥接层:Java 插件内置 HTTP server(默认端口 8080),对外用 Python MCP 客户端桥(uvx / pip 安装)接 stdio 与 streamable-http 两种传输,并支持基于 PyGhidra 的 headless(Python 3.10~3.13)。3.1 节拆架构与三步安装;3.2 节接 VS Code 与 Claude Code 双客户端,用对话完成「列函数、反编译、重命名、追 xref」的完整走查;3.3 节回到 headless 批处理:目录批量分析、模型命名建议的落库与回写、成本与提速的示意账本。

学习目标

  • 画出 GhidraMCP 2.0 的三层架构并解释移除 Ghidra 侧 Python 桥接层的含义。
  • 完成三步安装并区分 stdio 与 streamable-http 的适用场景。
  • 在 VS Code 与 Claude Code 任一客户端里完成对话式逆向走查。
  • 掌握向模型下逆向指令的四个模式与三条边界。
  • 用 headless 批处理跑目录,并把命名建议落库回写。
  • 会读成本与提速的示意数字,不把它当实测承诺。

核心概念速览

GhidraMCP 2.0 三层架构 MCP 客户端(VS Code / Claude Code / 其他) │ MCP 协议:stdio(本地)或 streamable-http(跨机) ▼ Python MCP 桥(uvx / pip 安装的客户端程序) │ HTTP(默认端口 8080) ▼ Ghidra ── Java 插件内置 HTTP server(2.0 起,Ghidra 侧不再需要 Python 桥接层) ├─ GUI 模式:CodeBrowser 里开着工程 └─ headless 模式:PyGhidra 驱动(Python 3.10~3.13) 能力:列函数 / 反编译 / 重命名 / xref / 注释 / 段查看 ​

一句话金句:MCP 之后的逆向,把「复制伪代码贴给模型」变成「模型自己伸手进工程拿」。

子章节导航

  • 第 3.1 节《架构与安装》:2.0 版本要点、三层架构、三步安装、两种传输、能力清单、故障排查。
  • 第 3.2 节《双客户端接入》:VS Code 与 Claude Code 配置、对话式逆向走查、指令模式、边界。
  • 第 3.3 节《headless批处理实战》:目录批处理、命名建议落库与回写、成本与提速示意、工程化清单。

三节按序读:3.1 装好,3.2 会用,3.3 会批量。赶时间的读者 3.1 加 3.2 即可拿到对话式逆向的完整体验。

子章节之间的逻辑关系

┌──────────────┐ 服务可用 ┌──────────────┐ 单点跑通 ┌──────────────────┐ │ 3.1 架构与 │ ─────────▶ │ 3.2 双客户端 │ ─────────▶ │ 3.3 headless │ │ 安装 │ │ 接入 │ │ 批处理实战 │ └──────┬───────┘ └──────┬───────┘ └─────────┬─────────┘ │ 产物:8080 上的 │ 产物:对话式走查 │ 产物:批量目录 │ MCP 服务 │ 方法(人机一对一) │ + 命名建议落库 └───────────────────────────┴───────────────────────────────┘ ▼ 第 04 章(r2 侧的模型工具流,与本章同构)/ 第 05 章(聚合层复用 Ghidra 引擎) ​

前置知识与后续延伸

  • 前置:第 01 章的 Ghidra 工程与 demo_stripped 走查(模型要操作的就是这个工程);第 1.3 节的 headless 概念(3.3 节直接复用);Python 环境 3.10~3.13(GhidraMCP headless 链路要求,本书记 3.12)。
  • 延伸阅读:GhidraMCP 官方仓库的 README 与发行说明(版本适配关系以官方为准);MCP 协议本身的细节不在本书范围。
  • 后续:第 04 章在 r2 侧构建同类工具流(r2ai 与 r2mcp);第 05 章 REA 会把 Ghidra 作为被聚合的引擎之一再次出现。

合规声明:本节内容仅用于授权范围内的安全研究与教育目的;未经授权对他人软件进行逆向工程可能违反法律与许可协议。


作者与出处
原作者: 灏天文库
整理: 灏天文库整理
本站整理收录,版权归原作者/开源协议所有;欢迎通过原文链接访问源仓库。
发布者: 作者: 灏天文库 转发
评论区 (0)
U