REA(Reverse Engineer Anything)是开源的逆向分析工具,通过 MCP 协议把 Claude Code、Codex、Cursor 等 AI 编程 Agent 与 Ghidra、Hopper、IDA 等逆向工具连接起来。REA让 Agent 无需源码可分析软件,从原生二进制、Electron/JS 应用、APK、.NET 程序集到网站,追踪功能实现逻辑并生成带证据链的分析结果,重建相似功能。

REA的主要功能
- 原生二进制分析:解析 Mach-O、ELF、PE 等可执行文件,返回伪代码、汇编、字符串、符号和调用关系。
- JavaScript/Electron 应用分析:静态梳理模块、入口、IPC 通道和 source map,无需运行应用。
- 网站观察:通过本地 Chrome DevTools 端点被动观察浏览器行为、页面脚本和网络请求。
- .NET 程序集检查:无需执行程序即可查看元数据、CIL 指令和原生代码边界。
- Android 应用逆向:借助 JADX 反编译 APK,查看清单声明、类和方法。
- 固件与包文件分析:用 Binwalk 提取固件区域,或直接生成 ZIP/APK/ASAR 等归档的文件清单。
- 版本差异对比:比较应用两个版本的二进制差异,生成变更报告。
- 网络抓包分析:解析 HAR 文件或 mitmproxy 捕获,关联请求与源码位置。
- 代码重建辅助:Agent 基于分析结果追踪功能实现线索,为项目编写相似功能并验证。

微信关注回复“开源”,加入AI开源项目交流群
如何使用REA
- 环境准备:安装 Node.js(≥22.19 版本)和 npm,确保已安装 Claude Code、Codex、Cursor 等任一支持的 AI 编程 Agent。
- 一键安装:在终端运行
npx rea-agents@latest setup,选择要接入的 Agent 并审核配置变更。 - 审批配置:确认 setup 提出的 MCP server 注册和 workflow 指令修改(会自动备份原配置),然后重启你的 Agent。
- 准备逆向引擎(可选):深度分析原生二进制需已有 Hopper、Ghidra 或 IDA 安装,纯 JS/Electron 分析不需要。
- 用自然语言提问:向 Agent 描述目标,例如”分析 Notes 应用的搜索功能如何工作,展示证据,并为我的项目实现类似功能”。
- Agent 自动调查:Agent 通过 MCP 调用 REA 在本地分析目标,获取带证据链的伪代码、调用链等结果。
REA的核心优势
- 零逆向经验门槛:无需学习反汇编和逆向技术,用自然语言向 AI Agent 提问可分析软件。
- 打通主流 Agent 生态:同时支持 Claude Code、Codex、Cursor、Gemini CLI、Windsurf 等几乎所有主流 AI 编程助手。
- 复用成熟逆向工具:底层调度 Ghidra、Hopper、IDA 等专业工具,站在几十年逆向工程积累之上。
- 覆盖目标极广:从原生二进制、Electron/JS 应用、APK、.NET 到网站、固件、WASM,几乎无死角。
- 证据链驱动:每个结论附带伪代码、汇编、调用关系等证据,结果可验证。
- 本地分析保障隐私:全部分析在本地运行,目标软件不会被上传到云端。
- 端到端自动化:从分析、追踪调用链到生成可运行的相似实现,一条 Agent 工作流串到底。
REA的项目地址
- 项目官网:https://rea.tools/
- GitHub仓库:https://github.com/morluto/rea
REA可以分析什么
REA的同类竞品对比
REA的应用场景
- 竞品功能复现:看中某个 App 的离线搜索、同步机制等功能,让 Agent 拆解其调用链,在自己的项目中实现相似版本。
- 无源码老软件抢救:对失去源码的老软件、老游戏或老库,用 Agent 读取伪代码和汇编,还原算法并迁移到现代技术栈。
- Electron/桌面应用审计:静态梳理闭源桌面应用的模块、路由、IPC 通信和 preload 脚本,评估安全性或理解其行为。
- 遗留系统迁移评估:对比软件两个版本的二进制差异生成变更报告,或分析 .NET/原生组件的依赖边界,辅助系统改造决策。
REA的常见问题
Q1:哪些 Agent 可以使用 REA?
A1:任何支持本地 MCP server 的 Agent 都可以。Setup 命令会自动配置受支持的 Agent,其他客户端可通过手动注册 MCP 使用。
Q2:我需要安装 Hopper、Ghidra 或 IDA 吗?
A2:深度原生二进制分析需要三者之一。静态 JavaScript 和 .NET 检查不需要任何原生分析引擎。Setup 可在获得批准后自动安装 Hopper;Ghidra 和 IDA 则使用你已有的安装。
Q3:我需要先启动 Hopper 吗?
A3:不需要,REA 会在需要时自动启动 Hopper。但在 macOS 上,首次运行可能弹出对话框要求选择演示模式或激活许可证,需在同一个用户会话中完成该提示,再进行首次 CLI/MCP 操作或无人值守任务。
Q4:从 skills.sh 安装 skill 有什么作用?
A4:该 skill 为你的 Agent 提供调查指令。建议通过 npx rea-agents setup 同时注册 REA 的 MCP server 并安装配套指令,然后重启 Agent。
Q5:REA 返回的是什么代码?
A5:原生分析返回伪代码和汇编;JavaScript/Electron 分析恢复模块及其依赖关系。你的 Agent 基于这些发现来编写和测试实现。
Q6:REA 会上传我的应用吗?
A6:不会。REA 在本地分析目标,只有你的 Agent 会收到工具结果;模型提供商的数据政策由各提供商自行决定。
Q7:遇到 bug 怎么办?
A7:先更新,最近的版本可能已经修复了该问题。CLI 用户运行 rea update;npx 用户重新运行 npx rea-agents@latest setup 并重启。如果问题依旧,提交 issue 并附上版本、目标类型、复现步骤和错误输出。
© 版权声明
本站文章版权归 AI工具集 所有,未经允许禁止任何形式的转载。