Token导航 LogoToken导航

REA 项目让 AI Agent 自动完成逆向工程

更新时间 2026-10-14来源 算法一只狗正文 2223字阅读约 7分钟6 张图片
最近几天,Github上出现了一个比较火的项目,叫REA
图片
它可以简单理解成:给 Codex / Claude Code / Cursor 装上一套“逆向工程工具箱”,让 Agent 自己调用 Ghidra、Hopper、IDA、JADX 等工具,从程序行为一路追到反编译代码。
这是我做的介绍视频,3分钟让你了解这个项目
可以看到它的star量级,直接猛涨,目前已经来到了109K,就足以说明大众是由多喜欢这个项目
图片
而且安装也很简单,安装 Node.js 和 npm 后,运行:
    npx rea-agents setup
    首先先来说说什么是逆向?简单来说,逆向工程就是在拿不到源码的情况下,从一个已经编译好的程序出发,反过来分析它到底是怎么实现的。
    比如我们看到一个 App 里有一个很神奇的功能,但并不知道它内部是怎么做的。
    正常情况下,我们只能从外部去猜:它调用了什么接口?数据是怎么传递的?核心算法在哪里?某个按钮点下去之后,到底执行了哪些函数?
    图片
    而逆向工程就是通过分析程序本身,把这条链路一点点找出来。传统逆向一般会使用 IDA、Ghidra、Hopper、JADX 这类工具,先查看字符串、函数、调用关系和汇编代码,然后人工不断追踪 XRef,最后逐步理解程序逻辑。
    所以逆向其实并不等于“破解软件”,它更像是一种从结果反推实现的工程方法。
    它可以用来做很多事情,比如分析恶意软件、研究漏洞、理解协议、兼容旧系统、恢复遗失源码,或者研究一个程序里的某个算法到底是如何实现的。
    REA它到底怎么工作的
    智能体通过 MCP 调用 REA,检查目标并追踪相关代码。REA 返回发现及对应证据。智能体据此提出后续问题、解释行为,或编写并测试实现。CLI 命令使用同样的工作流。
    图片
    比如你直接告诉 Codex:帮我分析这个程序的离线搜索功能是怎么实现的。
    Agent 可以自己完成所有的内容:先打开目标二进制程序,获取整体结构和基本信息;然后通过关键词搜索定位可能相关的字符串,再利用 XRef 追踪字符串被哪些函数引用。接着继续分析这些函数的调用者和完整调用链,逐步缩小到核心逻辑。最后查看目标函数的伪代码和底层汇编,对照验证具体实现,从而还原程序的真实运行逻辑。
    最后给出 函数、调用关系、反编译代码等证据链。官方给出的标准流程也是从打开 binary → 搜索线索 → XRef → Call Graph → Decompile → 最后让 Agent 重建功能。
    REA 目前能逆向什么
    覆盖范围其实比“EXE 反编译”更广。
    图片
    Android 例如会自动结合 Headless JADX + JDK;原生程序则可以走 Ghidra/Hopper/IDA。
    Agent 可以自主决定下一步该搜什么字符串、追哪个 XRef、进入哪个函数、什么时候回到汇编验证。
    这已经比较接近一个 Reverse Engineering Agent。
    比较火的案例
    有人直接让 REA 去分析 Claude Code 本身。Claude Code 的 Bundle 本身规模已经非常大,包含数千个模块和几十 MB 的压缩代码。
    传统情况下,如果想理解里面某一个具体机制,很可能要先面对大量 minified code,然后一点点梳理模块之间的关系。
    但这一次,大家直接把整个目标丢给了 Agent
    甚至因为目标太大,REA 在深度分析过程中一度直接把 JavaScript Heap 跑爆了。
    用REA尝试逆向工程Claude Slides的幻灯片编辑器,几乎实现了全部功能。(图1)我的方法很直接——不一定是最佳实践,仅供参考:1. 首先,从 Claude Slides(见图 2)下载核心脚本和样式表2. 按照REA官网的说明,让Codex安装REA3. 使用REA技能逆向工程混淆代码(见图3)4. 很快你就能得到一个不错的目录结构代码,但里面其实还是挺乱的5. 然后我用 Claude Code 5.5 再次重写,结果变成了结构良好的代码,带有完整类型的代码
    图片
    这是目前我看到最接近“真实商业 App 逆向”的案例。作者连接了一台 Samsung S24 Ultra,然后让 Codex:
    使用 REA 分析 Sony Sound Connect,并做一个打开 App 就能开启 Wind Noise Reduction 的独立 Android App。
    以前你看到一个软件里很有意思的功能,只能从外部猜它是怎么实现的;现在 Agent 可以直接进入程序内部,把对应的实现链路一点点找出来。
    DX-Ball 是一个 1996 年的 Windows 游戏。REA 的目标是从已经编译好的 x86 Binary 中,找到并恢复其中一个声音 Pan 算法。
    写在最后
    调用REA这个项目,终于可以让AI Agent 开始能够自己使用 IDA、Ghidra、JADX 这些工具,完成原本高度依赖人工经验的分析流程。
    以前逆向工程比较难,单靠人力需要有多年的经验和学习。但是有了这个项目之后,REA就能够把流程变成了:
    人给目标,Agent 自己找线索、调工具、做分析、再验证。
    这和 Coding Agent 的发展路径其实很像。过去是 AI 帮你写几行代码,现在已经能自己读仓库、改代码、跑测试;而 REA 正在把同样的能力搬到逆向工程里。
    前面的 Sony Sound Connect、Claude Code、DX-Ball 也说明,这已经不只是 Demo:从理解真实软件功能,到还原算法,再到 Differential Test 验证,Agent 正在逐渐形成完整的逆向闭环。
    当然,复杂混淆、反调试、内核逻辑这类问题依然很难,但趋势已经很明显:
    逆向工程正在从“人使用工具”,逐渐变成“人提出问题,Agent 使用工具”。
    文章标签智能体
    资讯来源:由AI资讯编辑整理自互联网公开内容,版权归原作者所有,未经许可,不得转载。

    继续浏览更多资讯

    返回资讯目录

    相关资讯

    更多