DevTools · REA

REA 保姆级教程:从安装到第一次 AI 逆向分析,手把手用 Claude Code 拆解 EXE、APK 和软件功能(2026)

2026.10.24 · 约 14 分钟阅读

反汇编器能看图,但很难替你串起「这个功能怎么实现」的故事。 REA 把 Ghidra、jadx 与字符串/伪代码查询接到 Claude Code 的 Agent 循环里,适合在自有或已授权的软件上做功能理解与兼容性分析。下文从安装、EXE/APK 工作流到第一次会话提示词,附工具对比与 7 步清单。

开发者在隔离 Mac 上用 Claude Code 与 REA MCP 分析二进制与 Android 包结构

2026 年,REA(Reverse Engineer Anything)把逆向工程常用的「看二进制、拉字符串、翻伪代码」封装成 MCP 工具,让 Claude Code 能在对话里按需调用,而不是你一个人在 Ghidra 里点三个小时。项目开源在 GitHub morluto/rea,文档与技能入口见 rea.tools。本文是保姆级落地文:从合法边界、安装 npx rea-agents setup,到 EXE/PE 与 APK 的第一条工作流,以及和「纯 Ghidra」相比 Agent+MCP 到底多做了什么。

法律与伦理边界
只分析你拥有、已购买许可或获得书面授权的软件与固件。不要对未授权的商业 APK、游戏保护、DRM 或他人服务做绕过与武器化利用;课堂与面试题也应在隔离样本上完成。下文所有流程默认你在离线或隔离 VM中操作。

1. 为什么需要 REA:Ghidra 很强,但 Agent 缺「手」

传统流程是:导入样本 → 等 Ghidra 分析 → 自己搜字符串、跟 xref、写笔记。瓶颈不在反汇编,而在把分散证据串成可验证的结论。Claude Code 擅长归纳与提问,但默认摸不到你的 .gpr 工程或 jadx 输出。

REA 的定位是 MCP + Skills 层:把「查字符串、列导入表、拉函数伪代码、Android 清单与组件」变成模型可调用的工具。你仍用 Ghidra/Hopper/IDA 做权威视图;Agent 负责按你的问题反复取证。这和 Agent Skills 指南里「可重复工作流写进 Skill」一致,也和 Pi vs Claude Code里强调的「执行环境 + 权限边界」同一思路。

若你已经在用云端 Mac 跑并行 Agent,建议把样本目录与 REA 配置放在与生产脱钩的节点,参见 云端 Mac 隔离与文末 Mac 租用、定价、帮助中心。

2. 常见目标:EXE/PE、APK、Electron、.NET

类型典型扩展名优先工具链REA 侧关注点
Windows PE.exe / .dllGhidra、Hopper、IDA导入表、字符串、入口与关键 API(文件/注册表/网络)
Android APK.apk / .aab(解包后)jadx-headless-mcp、JDK 17Manifest、组件、inspect_android_* 类工具
Electron.asar 内 JS解 asar + 文本搜索主进程/预加载脚本、本地 HTTP、授权逻辑
.NET托管 PEdnSpy/ILSpy + Ghidra 辅助元数据、混淆层;REA 多配合字符串与原生边界

先判断「托管还是原生」能省一半时间。.NET 与 Electron 往往先看资源与配置,再决定是否深入 native 桥接。

3. 安装 REA:Node 22+、setup、重启 Claude Code、rea doctor

  1. 安装 Node.js 22+(LTS 即可),确认 node -v 与 npx -v 可用。
  2. 在终端执行 npx rea-agents setup,按提示把 MCP 与 Skills 写入 Claude Code 配置目录。
  3. 完全退出并重启 Claude Code,否则新 MCP 不会加载。
  4. 运行 rea doctor(或文档中的健康检查命令),确认 Ghidra/jadx 路径、JDK 与 JAR 可被找到。
安装与健康检查
node -v    # v22.x+
npx rea-agents setup
# 重启 Claude Code 后
rea doctor

若 doctor 报 jadx JAR 缺失,先下载官方 jadx-headless-mcp 发行包,并设置环境变量 REA_JADX_MCP_JAR 指向绝对路径。

4. EXE / PE 工作流(理解功能,不做武器化)

在 Ghidra(或 Hopper/IDA)中导入样本并等待自动分析完成。在 Claude Code 里开启 REA 相关 Skill,用自然语言描述目标,例如:「列出与 license 相关的字符串并给出 xref」「解释 WinMain 到第一次网络请求的路径」。

Agent 应通过 REA 拉取字符串列表、函数伪代码片段、导入 API,再总结数据流。你要刻意避免让模型生成 exploit、补丁绕过或恶意 shellcode;若提示词走向攻击链,应改问「防御检测点」或「合规日志应记录什么」。

对加壳样本,先在隔离环境识别 packer,再决定是否脱壳;REA 不能替代专用脱壳工具,但能在脱壳后加速「业务逻辑」阅读。

5. APK 工作流:JDK 17、jadx-headless-mcp、inspect_android_*

  1. 安装 JDK 17,java -version 应显示 17。
  2. 配置 REA_JADX_MCP_JAR=/path/to/jadx-headless-mcp-*.jar(名称以发行版为准)。
  3. 在 Claude Code 中让 Agent 调用 Android 检查类工具(如文档中的 inspect_android_manifest、inspect_android_components 等,以 rea.tools 当前列表为准)。
  4. 从 Manifest 的 permission、exported 组件、deep link 入手,再下钻到 Java/Kotlin 与 native .so 边界。

Flutter/React Native 包可能主逻辑不在 Java 层;此时把「网络端点 + 本地存储」作为 Agent 的第一轮问题,比硬啃混淆类名更高效。

6. 第一次会话:示例提示词(功能理解)

  • 「这是我自己开发的 Windows 客户端。请用 REA 列出所有 HTTP/HTTPS 相关字符串,并推断配置是从注册表还是文件读取。」
  • 「请读 APK Manifest,标出 exported Activity 与危险 permission,并说明启动流程。」
  • 「在不做绕过建议的前提下,说明该程序如何校验更新签名;引用你看到的函数或类名。」

好的第一次会话应产出:带证据引用的短文 + 待人工确认的 3 个假设,而不是一长串未验证的猜测。

7. 工具对比:REA+Agent vs 手工逆向 vs 仅反汇编

方式优势劣势适用
REA + Claude Code跨工具取证、自然语言迭代、笔记自动化需约束合法与提示词;模型可能幻觉功能地图、兼容分析、内部工具维护
纯手工 RE精确控制、法庭/审计可重复慢、知识门槛高漏洞研究(授权)、恶意样本深度分析
仅反汇编器视图权威缺少叙事与批量关联单函数确认、补丁 diff

8. 场景矩阵:何时上 REA

场景建议
维护自家 legacy EXE,缺文档REA + Ghidra,先字符串与 API 地图
Android 渠道包差异对比REA + jadx,Manifest 与资源 diff
CTF / 教学隔离 VM,禁止生产网络;手写+Agent 混合
未授权竞品破解不做—法律与平台条款风险

推荐栈:Claude Code(Agent 与会话) + REA MCP(工具) + 隔离 macOS VM 或云 Mac(样本与密钥)。快照 VM 后可一键回滚;云 Mac 适合短期协作与 按小时计费。Ghidra 与 JDK 装在同一隔离环境,宿主机只跑终端与 Claude Code 客户端(若你使用远程开发,则全程在远端)。

10. 常见坑(5 条)

  • 未重启 Claude Code,以为 setup 失败。
  • JDK 8 与 jadx 17 要求冲突,doctor 通过但 Android 工具超时。
  • 把模型总结当事实,不回到 Ghidra/jadx 二次确认。
  • 在联网主力机上打开未知样本,触发 EDR 或误上传云同步目录。
  • 提示词要求「绕过登录/破解」,既违规也更容易得到幻觉答案。

11. 落地步骤(7 步)

  1. 书面确认样本授权;复制到隔离目录(只读挂载更佳)。
  2. 安装 Node 22+ 并 npx rea-agents setup。
  3. 重启 Claude Code,rea doctor 全绿。
  4. 配置 Ghidra 路径,导入 EXE 并完成自动分析。
  5. 配置 REA_JADX_MCP_JAR 与 JDK 17,放入测试 APK。
  6. 按「第一次会话」提示词跑一轮,保存 Agent 输出与截图。
  7. 删除样本、清理工程,VM 快照或销毁云 Mac 会话。

FAQ

不可以。请只分析你有权研究的软件;必要时咨询法务。

REA 会代替 Ghidra 吗?

不会。REA 连接 Agent 与工具;深度视图仍在反汇编器里。

APK 第一次该先问什么?

先 Manifest 与 exported 组件,再网络与本地存储,最后 native 库。

总结

REA 的价值是把逆向从「单人看图」变成可迭代的证据驱动对话,前提是你守住合法边界、用好隔离环境,并坚持「工具输出 > 模型口头」。下一步可结合 Agent Skills 把常用 REA 提示词固化。需要干净 Mac 做样本实验,见 租用页与 帮助中心。

延伸阅读

在隔离 Mac 节点上做逆向与 Agent 实验

样本、密钥与反汇编工程不宜落在日常笔记本。Zutcloud 独享 Mac 适合挂载 REA 工作区、JDK 与 Ghidra,会话结束可清空磁盘。

立即订购 · 查看定价

DevTools · REA

在隔离 Mac 节点上做逆向与 Agent 实验

隔离样本 · REA 工作区 · Claude Code

立即订购
Mac 立即订购