ARTICLE · 1178493
REA 爆火之后:AI 真能“扒光”任何软件吗?
2026 年 10 月初,开源项目 REA(Reverse Engineer Anything) 登上了 GitHub 热榜。10 月 8 日,AI 领域博主 Matthew Berman 在 X 上推荐了这个项目,原话是 "Software is done",还把它和 Napster 的早期阶段相提并论。此后几天,中文媒体陆续出现了「闭源软件已死」「可执行程序秒扒光」之类的标题。
热度之外,更值得关心的是 REA 目前做出了哪些成果,有没有哪款软件被完整重建过,重建到了哪一步,结果又做了哪些验证。下文结合项目文档、官方案例和相关仓库逐一梳理。
REA 的工作方式
REA 由 GitHub 用户 morluto 开发,用 TypeScript 编写,采用 MIT 协议开源。它为 Claude Code、Cursor、Codex 等编程智能体提供一组逆向分析接口。
使用时,REA 调用分析工具,把伪代码、指令和引用关系等材料交给智能体;智能体根据这些材料理解程序、决定下一步查什么,最后解释功能、编写实现并运行测试。官方把这个过程概括为「反编译、理解、重建」三步,后两步实际上都由智能体完成。

原生程序的反编译主要交给 Hopper、Ghidra、IDA 等引擎完成,REA 负责把这些引擎接入智能体,并管理会话、整理结果。除原生程序外,它还能分析 Electron 应用、.NET 程序集、安卓安装包、固件和网页。配置流程可以用一条命令启动,但分析原生程序之前,仍需事先装好相应的引擎和运行环境。
REA 在本机运行,不会把文件上传到托管分析服务。不过,如果智能体使用云端模型,分析结果会作为上下文发送给模型服务商。另外,项目的安全说明写明 REA 不是沙箱,分析引擎会以当前用户的权限解析目标文件,所以本地分析并不等于安全隔离。
工具设计与证据约定
ida-pro-mcp 等项目此前已经把反编译器接入了大语言模型,REA 并非首创。它的设计重点要看项目的工具设计文档。
按照这份文档,工具优先围绕分析任务来设计,公共的工具名称和返回语义尽量在不同引擎之间保持一致,同时如实报告各引擎实际提供的能力和覆盖范围;只有现有工具无法表达某项能力时,才考虑直接暴露引擎接口。文档还要求工具在返回结果时,把直接观察到的事实、推导出的关系和推断出的关系分开标注;分析没有覆盖到的部分要记为「未知」,不能当作「空」或「否」。

这些要求针对的是工具返回的结果。按约定整理的记录保留了证据的出处、局限和未知项,便于人工复核,但智能体最后用自然语言写出的结论是否每条都有充分依据,这套约定无法保证,模型也仍有可能读错证据。
官方案例的范围
本文能找到的、附有公开链接且结果可以核查的案例,基本都在官方案例页上,一共五个。

五个案例展示的都是具体功能或具体代码段的分析。其中 Aegis 是开源应用,CTF 题目本身就是为练习逆向而设计的;Notion 虽然是商业桌面应用,分析范围也只限于剪贴板这一项功能。
两个游戏案例都关联着整款游戏的独立重建项目,REA 只承担其中的分析环节。以 TH04 为例,案例页介绍,该项目可以从维护中的 C++ 和汇编源码构建游戏的四个 DOS 程序,源码覆盖关卡、Boss、渲染、输入、菜单等部分,而 REA 展示的只是其中一段计算。案例页还写明,早期的重建观察使用的是项目自己的分析脚本,页面上展示的是一次新增的 REA 检查,编译校验结果也属于 TH04 项目本身。
DX-Ball 的重建进度
下面以 DX-Ball 为例,进一步查看重建进度和验证范围。官网案例页引用的是 10 月 7 日的进度记录,此后重建仓库持续更新,到 10 月 12 日提交的进度文档,各项数字都有明显增长。两个时间点的数据均取自仓库固定版本的进度文档。

这三项指标并非互斥的分类,不能相加,也不能直接换算成整款游戏的完成率。其中「字节匹配」是逐个函数比较的结果。按案例页的说明,比较前会先处理重定位并核对引用的常量,所以它表示单个函数的机器码与原版一致,并不意味着整个重建文件与原文件完全相同。
至于能否运行,仓库的关卡运行记录显示,较早集成阶段的 VC4 和 MinGW 两个重建版本已在 Wine 下通过原版关卡流程的验收,即前 50 关的初始盘面全部与原版一致,并能进入第 51 关和菜单。这些记录对应特定构建,最新版本的完整流程验证尚未完成;验收标准也不要求分数或画面帧同步,轨迹、像素和音频的一致性仍未验证。进度文档另外列出,99 个条目的来源尚未分类,剩余的渲染和运行时例程仍在处理中。以上均为仓库自己的记录,本文没有独立复现。
项目的做法是逐个函数推进:恢复一个函数后编译,与原版对照,有差异就回头检查,确认无误再处理下一个。测试和对照的数量反映的是验证覆盖面,不宜据此推算工作耗时。对于一款体量不大的 1996 年游戏,这种借助智能体和逆向工具逐函数重建、在机器码层面验证的做法,已经有了可以核查的进展。
媒体报道中未附来源的说法
字母榜的报道称,REA 走红当天就有开发者用它逆向 Adobe 系列软件,克隆出了若干功能相近的作图和剪辑软件;报道还说,微信、支付宝、抖音等应用也已被社区广泛逆向分析。但这篇报道没有给出相应的项目链接,暂时无法核实。
同一时期,开源的 Photoshop 复刻项目 PhotoCraft 经常和 REA 一起被讨论,它的仓库位于 GitHub 组织 storytold 之下。在 Hacker News 关于 REA 的讨论中,用户 echelon 自称其团队(附 storytold 组织链接)开发 ArtCraft 系列应用时只使用常规的 Claude Code,并特意不碰 Ghidra,理由是担心反编译内容影响他们的工作、带来侵权风险。这是该用户自己的解释。现有资料不能确认「PhotoCraft 是借助 REA 完成」的说法。
大型商业软件的分析难点

目标软件不同,分析难度差别很大。部分商业软件采用了加固、混淆或反调试措施,反编译出来的代码可能残缺不全,也很难读懂。即使没有这些措施,庞大的代码规模、复杂的依赖关系和运行时状态,也会让完整重建十分困难。像微信、支付宝、抖音这类联网产品,许多核心能力运行在服务端,客户端安装包里并不包含。观察网络请求和响应可以推断出部分行为,但拿不到服务端代码,通常也不足以还原完整的实现。
截至 2026 年 10 月 12 日,在本文核查的公开资料中,没有发现大型商业应用被完整重建的公开项目。
遗留系统迁移与游戏保存
结合公开案例,REA 目前比较明确的用途主要有两类。
第一类是遗留系统的迁移和对接。源码遗失或原厂商停止支持之后,分析旧系统的接口和数据格式,是迁移数据、对接新系统的必要步骤。REA 的 README 也把「记录未公开的格式或接口」列为它支持的工作之一。
第二类是游戏的保存和移植。DX-Ball 和 TH04 都属于这一类:通过逐函数恢复和对照,把只能在旧平台上运行的程序整理成可以维护、可以重新编译的源码。
这些都是逆向工程中常见的正当用途,但动手之前,仍然需要确认授权范围和适用的法律条件。
相关法律规定
逆向工程本身并不必然违法,是否合法要结合具体行为、授权情况和所在法域来判断。
在中国,《计算机软件保护条例》第六条规定,软件著作权的保护不延及开发软件所用的思想、处理过程、操作方法或者数学概念等,受保护的是代码这类表达形式。第十七条规定,为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。但仅凭这一条,不能认定所有反编译、绕过技术保护措施或传播重建代码的行为都是合法的。
美国 DMCA 第 1201 条的安全研究豁免附有具体条件,并且不免除其他法律下的责任。欧盟《计算机程序法律保护指令》第六条允许为了实现互操作性而进行反编译,但同样设有前提条件,并禁止把获得的信息用于开发表达上实质相似的程序。
未经授权复制、改编或传播受保护的代码表达,可能构成侵权;是否收费并不是唯一的判断标准,修改过也不等于独立开发。未经授权访问、抓取或攻击他人的线上系统,还会涉及其他法律问题。REA 的免责声明也写明,使用者应当自行取得授权。
结语
从目前公开的材料看,REA 可以帮助智能体弄清特定功能是怎么实现的,DX-Ball 的逐函数重建也有了可以核查的进展。但要说「一句话克隆任意应用」,现有案例还远远证明不了。
参考资料
REA 仓库:https://github.com/morluto/rea REA 安全说明:https://github.com/morluto/rea/blob/main/SECURITY.md REA 工具设计文档:https://github.com/morluto/rea/blob/main/docs/tool-design.md REA 官方案例页:https://morluto.github.io/rea/showcase/ DX-Ball 案例页:https://morluto.github.io/rea/showcase/dx-ball/ TH04 案例页:https://morluto.github.io/rea/showcase/th04/ DX-Ball 进度文档(10 月 7 日固定版本):https://github.com/N0zoM1z0/dx-ball/blob/a55dca27ec0a07018c1b2c95ae2be027f7d8c3c4/docs/PROGRESS.md DX-Ball 进度文档(10 月 12 日固定版本):https://github.com/N0zoM1z0/dx-ball/blob/6937b9172b9346179e7a4eabcffa0e2557618da4/docs/PROGRESS.md DX-Ball 原版关卡运行记录:https://github.com/N0zoM1z0/dx-ball/blob/6937b9172b9346179e7a4eabcffa0e2557618da4/docs/research/ORIGINAL_CAMPAIGN.md TH04 重建仓库:https://github.com/N0zoM1z0/th04 PhotoCraft:https://github.com/storytold/photocraft RuntimeWire 关于 Matthew Berman 推文的报道:https://runtimewire.com/article/matthew-berman-rea-ai-reverse-engineering 字母榜(凤凰网):https://i.ifeng.com/c/8x6UpDNnKa9 Hacker News 讨论:https://news.ycombinator.com/item?id=50028275 《计算机软件保护条例》:https://tfs.mofcom.gov.cn/fgsjk/flfg/zscq/zzq/art/2024/art_d071637de09e4ca88b627f924a7280c3.html 美国版权局 2024 年第 1201 条最终规则(联邦公报):https://www.govinfo.gov/content/pkg/FR-2024-10-28/pdf/2024-24563.pdf 欧盟指令 2009/24/EC:https://eur-lex.europa.eu/eli/dir/2009/24/oj















































































