REA:免费开源AI逆向工程工具,让Claude Code、Codex分析软件源码与运行逻辑

斌仔 分类:
文章字数 2489 字 阅读时间 11 分钟
🤖 由 OpenAI 兼容接口 生成的文章摘要
此内容根据文章生成,并经过人工审核,仅用于文章内容的解释与总结

看到一个软件的功能特别好用,想知道它是怎么实现的,但又拿不到源代码,该怎么办?

REA(Reverse Engineer Anything)是一款免费开源的 AI 逆向工程工具,可以让 Claude Code、Codex、Cursor 等 AI Agent 分析软件的内部结构、代码逻辑和运行行为。

它支持 Windows 程序、Electron 应用、JavaScript、.NET、Android APK 和网站等多种分析对象。

最大的特点是:不需要自己从头研究反汇编代码,可以直接用自然语言让 AI 协助调查软件功能,并提供对应证据。

REA:免费开源AI逆向工程工具,让Claude Code、Codex分析软件源码与运行逻辑
REA:免费开源AI逆向工程工具,让Claude Code、Codex分析软件源码与运行逻辑

一、REA是什么?

REA 的全称是 Reverse Engineer Anything,中文可以理解为“逆向分析一切”。

传统软件逆向工程通常需要使用:

  • Ghidra
  • IDA
  • Hopper
  • 反编译器
  • 调试工具

开发者需要自己寻找函数、分析调用关系,再逐步理解软件的工作原理。

REA 则通过 MCP(模型上下文协议),把这些分析能力接入 AI Agent。

例如,你可以直接告诉 Codex:

分析这个应用的搜索功能,找出它的核心实现逻辑,展示相关证据,再帮我的项目实现一个类似功能。

REA 负责提供分析工具与证据,Codex 负责理解结果、继续调查和编写代码。

所以 REA 并不是一键复制整个软件,而是:

让 AI 更容易理解现有软件的实现原理。

二、功能特征

AI自动辅助逆向分析

用户可以直接使用自然语言描述需要调查的功能。

AI 通过 REA 调用相关工具,分析代码、函数和运行行为。

原生二进制分析

结合 Hopper、Ghidra 或 IDA,可以获取:

  • 汇编代码
  • 伪代码
  • 函数调用
  • 字符串
  • 符号
  • 交叉引用

帮助理解没有源代码的原生应用。

Electron和JavaScript分析

REA 可以分析 JavaScript 和 Electron 应用,包括:

  • 模块结构
  • 导入关系
  • Source Map
  • Electron主进程与渲染进程
  • IPC通信
  • 原生扩展关系

这类静态分析不需要额外安装 Hopper 或 Ghidra。

网站运行行为分析

可以结合 Chrome 系浏览器调查:

  • 页面结构
  • JavaScript
  • 网络请求
  • 运行时行为
  • 页面截图

适合研究交互功能和前端实现方式。

Android APK分析

结合 JADX、JDK 等工具,可以读取 APK 中的类、方法、引用和应用清单。

也可以使用 ADB 观察授权设备上的应用运行情况。

更多文件格式

REA 还提供针对 .NET 程序集、WebAssembly、Go 二进制文件、固件、网络抓包等内容的分析能力。

不同格式需要的额外工具和操作系统有所区别。

证据追踪

REA 的一个重要设计是:分析结果不仅给出结论,还会尽量提供对应的代码、函数或运行证据,并说明不确定之处。

这让用户能够检查 AI 的判断,而不是完全相信模型猜测。

三、操作指南

REA 最简单的使用方式,就是安装到已有的 AI 编程工具中。

需要提前准备:

  • Node.js 22.19+、24.11+ 或 26+
  • npm
  • Claude Code、Codex 或其他支持 MCP 的 Agent

安装命令:

npx rea-agents@latest setup

运行后:

  1. 选择需要接入的 AI Agent。
  2. 检查 REA 准备修改的配置。
  3. 根据需要选择分析引擎。
  4. 确认并完成安装。
  5. 重启对应 Agent。
  6. 直接通过对话提出分析任务。

例如:

使用 REA 分析这个 Electron 软件,找出它是如何保存用户配置的,并整理相关代码和调用关系。

如果只是分析 JavaScript 或 Electron 应用,还可以直接使用命令行:

npx -y rea-agents@latest analyze-javascript-application /path/to/app --json

需要长期使用,也可以全局安装:

npm install --global rea-agents

安装后使用 rea --help 查看命令。

四、支持哪些AI Agent?

REA 通过 MCP 接入 AI 工具。

目前支持的主要工具包括:

AI工具 支持情况
Claude Code 支持
OpenAI Codex 支持
Cursor 支持
Gemini CLI 支持
Claude Desktop 支持
OpenCode 支持
GitHub Copilot CLI 支持
Windsurf 支持
Qwen Code 支持
Hermes 支持
Grok Build 支持

其他支持本地 MCP 服务的 AI Agent,也可以根据文档手动配置。

部分新接入的客户端可能仍处于开发分支,实际支持范围应以当前发布版本为准。

五、支持平台

REA 是基于 Node.js 的开发者工具,不是传统的独立图形界面软件。

环境 主要情况
macOS 支持,原生分析有成熟路径
Linux 支持,具体发行版有要求
Windows 支持部分分析流程
Chrome系浏览器 支持网页分析
命令行 支持
MCP 支持

需要注意:

REA能分析Windows程序,不代表全部逆向功能都能直接在Windows原生环境运行。

例如 Ghidra 的 Windows 集成目前还存在实验性支持部分。

如果需要深入分析原生二进制程序,应该先查看当前分析引擎的系统要求。

六、产品定价

REA 本身:

免费开源。

GitHub 项目采用 MIT License,可以自由使用、修改和分发。

不过实际使用可能涉及三类费用:

项目 收费情况
REA本身 免费
Ghidra 免费
Hopper、IDA等商业工具 根据厂商许可
Claude Code、Codex等AI服务 根据各自套餐或API计费

对于只需要分析 JavaScript、Electron 或 .NET 的用户,可以先体验不依赖商业原生分析引擎的功能。

但如果要分析复杂的原生程序,可能需要额外配置逆向工具。

七、使用场景

REA 比较适合以下几类用户:

  • 软件开发者:研究已有软件的功能实现方式。
  • AI编程用户:让Claude Code、Codex辅助理解没有源代码的程序。
  • Electron开发者:分析应用的模块与IPC通信。
  • 安全研究人员:在授权范围内调查软件行为和潜在问题。
  • Android开发者:研究APK结构和依赖。
  • 软件维护人员:分析历史程序或缺少文档的软件。
  • 技术学习者:学习汇编、反编译和逆向工程。

例如,你发现一个软件的快捷搜索体验很好。

可以让 REA 辅助调查:

输入事件 → 搜索逻辑 → 数据处理 → 结果展示。

再让 AI 根据调查结论,为你自己的项目实现类似交互。

八、数据与安全

REA 主要在本地运行分析工具,默认不要求把整个目标程序上传到 REA 的云服务器。

但需要注意:

本地分析,不代表所有分析信息都不会离开电脑。

当 Claude Code、Codex 等 Agent 调用云端模型时,相关分析结果可能被发送给对应模型服务商。

另外,静态分析通常只读取文件,而运行时分析可能实际启动目标程序。

因此建议:

  • 仅分析自己拥有或已获授权的软件。
  • 对未知程序使用隔离的测试环境。
  • 不要随意运行来源不明的可执行文件。
  • 企业项目注意代码和数据保密要求。
  • 遵守商业反编译工具的许可证。

九、运作模式

REA 的工作流程可以简单理解为:

用户提出问题
↓
Claude Code / Codex
↓
通过MCP调用REA
↓
选择对应分析工具
↓
读取程序或观察运行行为
↓
返回代码、调用关系和证据
↓
AI解释实现原理
↓
根据需要编写和测试新功能

例如 REA 官方展示过分析 Windows 计算器百分号计算规则,以及研究 Chrome 小恐龙游戏加速逻辑的案例。

这些案例说明了它的主要价值:

让软件内部原本不容易看懂的实现过程,变成 AI 可以协助调查和解释的问题。

不过逆向分析仍然会受到混淆、加密、缺失符号和运行环境等因素影响,不能保证所有功能都能被完整还原。

结语

REA 的特别之处,不是又开发了一个反编译器,而是把已有的逆向工具接到了 AI Agent 上。

通过:

MCP + Ghidra/Hopper/IDA + JavaScript分析 + 运行时调查 + 证据追踪

让 Claude Code、Codex 等工具不只能够阅读你自己的项目,也可以在授权范围内帮助理解没有源码的软件。

如果你经常研究软件功能、Electron程序、网页交互或二进制文件,REA 是一个值得关注的开源项目。

它真正解决的问题不是:

“让AI一键复制任何软件。”

而是:

“让AI帮助你弄清楚,一个软件究竟是怎样工作的。”

网址

REA 官网

REA GitHub项目

REA 中文README

REA 官方使用指南

REA 最新版本

你觉得这篇文章怎么样?

0
0
0
0

非常感激每一位打赏的朋友!

支付宝扫码支持
微信扫码支持

扫一扫,请博主喝咖啡☕

文章作者: 斌仔
文章链接: https://www.wangdu.site/software/ai/2407.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文武科技柜!

相关推荐

共有 0 条评论