YouMind
登录

逆向工程:如何利用最危险的 Repo 与 Opus 5.5 免费获取任何应用(完整教程)

@0xCodila
英语2026年10月12日
946K
1.8K
230
66
3.2K

TL;DR

本综合教程介绍如何使用 REA(Reverse Engineer Anything)工具结合 Claude Code 来分析和重建软件功能。内容涵盖安装步骤、合法的净室原则、实际案例(如重现 Adobe 或 TradingView 的功能),以及高级提示词工作流。

REA 是目前互联网上最危险的东西,而 99% 的人根本不知道该怎么用它

你每个月都在为那些功能早就躺在你电脑里的 App 付费

动效设计软件、Office、TradingView、你的笔记应用等等——它们说到底只是你硬盘上的一堆代码

而所有公司都在赌一件事:你永远不会去扒开看里面

现在,一个开源 repo 用一条命令,就能让你的 Claude Code 拥有同样的技能

在 alpha 之前 - 订阅我的 substack 获取更多新鲜 alpha -

https://substack.com/@0xcodila

https://x.com/MatthewBerman/status/2108245653843509415

这三天它火遍了全网。“软件行业完了”、“闭源已死”

https://x.com/RoundtableSpace/status/2109165852578992582

大多数人只是看了看截图,点了个收藏,然后就没下文了

所以在这篇完整教程里,我会用最简单的话把所有事情讲清楚:

  • 逆向工程到底是什么
  • REA 能读什么,从桌面应用到游戏
  • “这不就是偷吗?”这个问题的真实答案
  • 如何一步步安装,完全基于官方文档
  • 大家已经重构了什么:Adobe、Office、TradingView、游戏
  • 普通人和专业开发者每天都是怎么用的
  • 一套可以直接复制粘贴的 prompt

所以先收藏起来,打开终端,跟着一步步来

第一部分 - 理解

01. 什么是逆向工程(以及什么是 REA)

逆向工程其实很简单

你看着一个做好的 App,在没有源码的情况下,搞清楚它内部是怎么运作的

就这么简单。你想彻底搞懂某个功能,好到能解释它、修改它,或者自己写一个版本出来

REA(Reverse Engineer Anything)做的就是这件事,而且脏活累活都由你的 AI Agent 来干。官方 README 用一句话就概括了:

“看到一个喜欢的功能。搞懂它是怎么工作的,一直深入到二进制层面。”

从技术角度看,它是这样的:

  • 一个 MCP server + CLI,可以接入 Claude Code、Codex、Cursor、Gemini CLI 和其他 Agents
  • 它在本地运行。你的应用永远不会被上传到任何地方
  • 每一个结论都带有证据:函数、文件、调用关系,以及还有哪些是未知的

你用大白话提问。REA 检查程序。你的 Agent 负责解释、构建你的版本并测试 REA repo

codila - inline image

最好的例子就在官网上

比如:为什么你在 Windows 计算器里输入 200 + 10%,结果会显示 220?

没有 REA,你得手动解码分支、追踪调用。有了 REA,你直接问就行

代码给出的答案是:在 + 之后,% 按钮取的是第一个数字的百分比。200 的 10% 是 20,所以 200 + 20 = 220。而在 × 之后,10% 就直接变成了 0.1

再比如,为什么 Chrome 小恐龙游戏会越来越快:速度从 6 开始,每次更新加 0.001,到 13 封顶

你不需要读代码。你提一个问题,就能拿到规则

REA 是基于 MIT 协议的开源项目,由 @morluto 开发

首个版本发布于 2026 年 7 月 12 日。三个月后,它在 GitHub 上拿到了 10 万+ star

https://x.com/celineodier/status/2109281121749856655

02. REA 能读什么

这是官方列表,我翻译成了人话 What you can analyze

  • 基于 JavaScript/Electron 的桌面应用(Notion、Slack、Discord、Obsidian 等等)。不需要额外安装任何东西
  • 网站:页面结构、脚本、网络请求。你需要一个 Chrome 内核浏览器
  • 保存的网络流量(浏览器导出的 HAR 文件)
  • 程序和游戏(.exe、Mac 应用、老 DOS 游戏):伪代码、汇编、字符串、调用关系。需要 Ghidra、Hopper 或 IDA
  • .NET 应用:无需额外工具
  • Android 应用(APK):需要 JDK 和 JADX
  • 智能合约字节码:Linux x64
  • 固件、WASM、Go 二进制文件等等

下面这部分几乎没人提:

很多 Unity 游戏的游戏逻辑是以 .NET 代码形式发布的。而 REA 读 .NET 不需要任何额外工具

这就是为什么有人能在不到 30 分钟内,把自己买的一款 Steam 游戏在 Unity 里打开:

https://x.com/AIWarper/status/2109060856466264566

所以现在 Agent 把整个活儿都替你干了

codila - inline image

03. 等等……这不就是偷吗?

我们来聊聊房间里的大象!

REA 刚爆火的时候,X 上一半人在喊“盗版”,另一半人在喊“软件行业完了”

Chamath 甚至在 All-In 播客上说,有人“反编译”了整个 Adobe 全家桶

https://x.com/firesidealpha/status/2108761607857992104

搞笑的地方来了。那条视频被贴上了 Community Note

那些 Adobe 替代品并不是反编译出来的。它们的开发者称之为

净室重新实现(clean-room reimplementations)

这一条注释就把整个法律游戏解释清楚了。所以我来给你讲讲什么是净室,因为一旦你懂了,一切就全通了

净室是一个有 40 年历史的老套路

第一步: 一个团队研究原版,写下它做了什么。不是代码,而是行为

第二步: 另一个完全不同的团队,只根据这份描述来开发新产品。他们永远看不到原始代码

最终结果功能一样,但包含的代码零来自原版 Clean-room design

PC 产业就是这么诞生的。80 年代初,Compaq 用这种方式重构了 IBM 的 BIOS,花了大约 100 万美元。这就是为什么其他品牌也能做出“IBM 兼容” PC

而且法院一直在支持逆向工程:

  • 1992 年,Sega v. Accolade。 Accolade 拆解了 Sega Genesis 游戏来做自己的兼容游戏。法院裁定,当拆解代码是理解其运作方式的唯一途径时,这可能构成合理使用 Sega v. Accolade
  • 2000 年,Sony v. Connectix。 Sony 以 0-3 败诉。最终的模拟器里没有一行 Sony 的代码

当然,历史上也有另一面

2010-2011 年,黑客破解了 PS3 的安全机制并公开了它的 root key。Sony 起诉了 George Hotz(geohot),2011 年 4 月双方和解,他同意不再破解 Sony 产品 TechSpot

所以这是我的真心话

在你自己的电脑上读 App 来理解它,这叫学习

根据它的行为,用自己的代码重写一个功能,这个行业一直都是这么干的

直接抄他们的代码、破解付费功能、或者发布别人反编译出来的源码,这才是会让你吃官司的部分

连 REA 团队自己都明说了:它用于合法研究、教育、互操作性、软件保存,以及你拥有或被允许检查的软件 Disclaimer

研究原版。发布你自己的。 这就是本文所有内容的铁律

codila - inline image

第二部分 · 安装

03. 5 分钟安装 REA

按顺序来 Get started

第一步。检查 Node.js

打开终端,运行:

text
1node -v
2npm -v

你需要 Node 22.19+、24.11+ 或 26+。不支持 23 和 25 版本

如果版本太旧或者提示“command not found”,安装 Node 24 LTS:

macOS(使用 Homebrew):

text
1brew install node

关掉终端,重新打开,然后:

text
1fnm install 24
2fnm default 24

Windows(PowerShell):

text
1winget install OpenJS.NodeJS.LTS

如果提示确认就输入 Y。关掉 PowerShell,重新打开,运行 node -v

如果 Windows 之后提示“running scripts is disabled”,运行一次这个:

text
1Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

第二步。准备一个 Agent

我用的是 Claude Code。它需要付费的 Claude 计划。设置页面:code.claude.com/docs/en/setup

Codex、Cursor、Gemini CLI、OpenCode 等也都可以

第三步。运行 REA 设置

最简单的方法: 把这段粘贴进 Claude Code,让它搞定一切:

text
1使用 npx rea-agents@latest setup 安装 REA 并将其连接到这个 coding agent。给我看一下设置方案等我批准,然后验证安装。

或者你自己跑:

text
1npx rea-agents@latest setup

接下来会发生什么:

  • npm 会询问是否下载包。选 yes
  • REA 会显示一个 Agent 列表。选 Claude Code
  • REA 会列出它要做的每一项改动。你不批准,什么都不会变。 它还会备份你当前的配置
  • 它会添加 MCP 连接以及对应的调查技能

设置过程还会推荐 Hopper,这是一个单独用来读取程序的引擎。在 Mac 上它会下载官方安装包并打开,你选 demo 模式就行。这是可选的,你现在也可以说 no

第四步。重启你的 Agent

  • 终端里的 Claude Code:退出并开启新会话
  • 桌面应用(Claude Desktop、Cursor):用 ⌘Q 彻底退出。光关窗口没用

第五步。检查

text
1npx -y rea-agents@latest doctor --client claude_code --json

doctor 只做检查,从不改东西。如果有问题,它会告诉你下一步该干嘛

想永久使用简短的 rea 命令:

你的结果: Claude Code 现在有 REA 工具了。问它“你有哪些 REA 工具?”,它就会列出来

text
1npm install --global rea-agents
2rea --help
codila - inline image

04. 2 分钟完成你的第一次逆向工程

别一上来就搞大的。REA 为此准备了一个官方练习应用 First investigation

这是一个很小的“Notes”应用,带一个 Export notes 按钮。你的任务:找出导出到底去了哪里

把这段粘贴进 Claude Code:

text
1把 https://rea.tools/examples/notes-example.zip 下载到一个新的 example 文件夹并解压。用 REA 找出我点击 Export notes 时会发生什么。

然后问:

text
1显示 notes.csv 写在了哪里,包含哪些字段,以及相关的文件和行号。

你应该得到的结果,就是一次点击的完整路径:

  1. 页面(renderer.js)处理按钮点击
  2. 桥接层(preload.js)发送一条 notes:export 消息
  3. 处理器(main.js)把包含 id 和 title 的 notes.csv 写入你的 Downloads 文件夹

恭喜。这就是逆向工程

你刚刚在一个不是你写的 App 里追踪了一个功能,而且每一步都有证据

现在好玩的部分来了。你电脑上的每个 Electron 应用原理都一样,而且你知道它藏在哪:

  • Mac: /Applications/<App>.app/Contents/Resources/app.asar(右键应用 → 显示包内容)
  • Windows: C:\Users\<you>\AppData\Local\Programs\<App>\resources\app.asar
  • Linux: 通常是 /opt/<App>/resources/app.asar

而且你可以直接在终端里分析它,不用运行这个应用:

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

提示: 在 Mac 上,按住 Option 键右键点击文件夹,选择“Copy as Pathname”。或者直接把文件夹拖进终端

codila - inline image

05. 为你要读的内容添加合适的引擎

桌面 JavaScript 应用不需要别的。其他的都需要加一个引擎

程序和游戏:Ghidra(免费,NSA 出品)

你需要 Ghidra 12.1.x 和 JDK 21 或更新版本

macOS / Linux:

text
1export GHIDRA_INSTALL_DIR=/absolute/path/to/ghidra_12.1.4_PUBLIC
2export JAVA_HOME=/absolute/path/to/jdk-21
3npx -y rea-agents@latest doctor --provider ghidra --json
4npx rea-agents@latest setup

Windows PowerShell:

text
1$env:GHIDRA_INSTALL_DIR = "C:/tools/ghidra_12.1.4_PUBLIC"
2$env:JAVA_HOME = "C:/tools/jdk-21"
3npx -y rea-agents@latest doctor --provider ghidra --json
4npx rea-agents@latest setup

Windows 支持目前还是实验性的,且只读

然后查看任意函数:

text
1npx -y rea-agents@latest function /absolute/path/to/program main --provider ghidra --json

程序和游戏:Hopper(Mac/Linux,商业软件但有 demo)

再跑一次 setup 就行。它会找到 Hopper 或者提示你安装。在 Mac 上,首次启动选 demo 模式或你的 license

程序和游戏:IDA(如果你已经有了)

已在 Windows 上通过现有的 IDA MCP 设置验证过 Get started

Android 应用: 完整的 JDK 17+ 和 jadx-headless-mcp 0.7.1 Android guide

text
1export REA_JADX_MCP_JAR=/absolute/path/jadx-headless-mcp-0.7.1-all.jar
2rea inspect-android-package /path/App.apk

网站: 任意 Chrome 内核浏览器

智能合约: Linux x64

保持更新(REA 几乎每天都在发修复):

text
1rea update

或者 npx rea-agents@latest setup。想卸载:rea uninstall

如果你的 Agent 看不到 REA: 重启它,然后再跑一次 doctor --client claude_code --json

https://x.com/lauriewired/status/2109018088872239310

codila - inline image

第三部分 - 大家已经重构了什么

06. Adobe、Office、TradingView 和游戏

这里开始就疯狂了

AI 不只是学会了读软件。人们已经在重构整个产品了

  • Adobe

ArtCraft 把七款 Adobe 应用重构成了免费开源的替代品:Photoshop、Illustrator、Premiere、Lightroom、After Effects、InDesign 和 Acrobat。用 Rust 写的,有 Claude Opus 5.5 帮忙

https://x.com/Pirat_Nation/status/2108437553615425881

还记得净室吗?就是这个。ArtCraft 称这些为净室重新实现,没有用到 Adobe 的源码。它们还在早期 alpha 阶段,但它们确实存在,而且免费

  • Microsoft Office

接着他们盯上了 Office。WordCraft、GridCraft 和 DeckCraft:对应 Word、Excel 和 PowerPoint

https://x.com/Pirat_Nation/status/2109358375209427301

  • TradingView

这个我最喜欢。摸清平台的行为逻辑,用 Opus 5.5 把它转成 spec,然后用你自己的代码写出自己的图表引擎和回测系统

https://x.com/RohOnChain/status/2109347169316839434

说句实话:自己做终端没问题。白嫖别人的付费指标就不对了。做你自己的

  • 游戏

这是 AI 逆向工程最先爆发的地方

《超级马力欧阳光》的原生 PC 移植版:大约 365 个 Agent 小时和 173 亿 token,同时用了 Claude 和 Codex Repo

https://x.com/chasemdev/status/2102957888477995067

PS1 游戏 Tomba! 现在通过静态重编译器在 PC 上跑起来了。作者之前毫无经验,用 Claude Code + Ghidra 做了大概三周 Write-up

在 REA 官方博客上,有人用 AI Agents 重构了一款东方游戏:697 个函数,696 个完全匹配,大约 12 天可玩 The industrial revolution in reverse engineering

Kotaku 甚至报道了 Halo、GTA: Vice City 和 The Simpsons: Hit & Run 的浏览器版本,据说是靠 AI 辅助反编译做出来的。这些都是非官方的,很可能被下架,而这正好踩中了上一章说的那条线 Kotaku

怎么复刻这些操作: 挑一个你付费的工具或者你拥有的游戏,问 REA 某个功能是怎么工作的,写出 spec,然后做你自己的版本。prompt 在第十步

codila - inline image

第四部分 - 每天都用起来

逆向工程最初是为了兼容性、安全性和保存而发明的

但在日常生活中,我会这么用它

07. 给新手

1. “这个 App 到底在我手机上干嘛?”

拿任意 Android 应用的 APK:你的券商、交易所、Telegram 上那个“免费信号”App。问:

text
1对这个 APK 使用 REA。列出所有权限、所有分析或追踪 SDK,以及这个 App 通信的所有域名。对每个发现都要显示类和方法。

官方证明这招管用:REA 拆解了 Aegis 验证器应用(3,077 个类),精确找到了它生成 6 位登录码的方式,并重构了它。重构版本通过了全部 133 个测试用例 Aegis case

2. “这个文件安全吗?”

抓恶意软件靠的就是逆向工程。当一个假的 113 GB“GTA 6 build”流传时,有人拆开文件发现它是假的,而且塞满了恶意软件

https://x.com/gamingskew/status/2091221918561317355

3. “这个代币是骗局吗?”

大多数 memecoin 不公开源码。REA 能直接读原始合约字节码并还原出它的函数 EVM guide

text
1rea inspect-evm-interface ./runtime.hex hex --json

然后问:

text
1对这个合约字节码使用 REA。列出所有能改变状态的函数。标记任何看起来像 mint、blacklist、pause、fee change 或 owner-only transfer 的东西。标明哪些是确认的,哪些是推断的。

这里的函数名是从字节码猜出来的,所以看到红旗就当是“需要深挖”。而且这条命令目前只能在 Linux x64 上跑

4. “我想要那个付费功能”

别去破解。去重构。问 REA 这个功能是怎么工作的,然后让 Claude 用公开数据和开源组件搭出你自己的版本

codila - inline image

08. 给专业人士

REA 自带了引导式工作流,几乎没人知道。它们内置在 MCP server 里 Guided prompts:

  • investigate_feature: 从发现一路追踪到具体函数
  • compare_application_versions: 对比应用的两个版本,看看更新到底改了什么
  • verify_reconstruction: 用保存的证据校验你的重构
  • trace_crash: 把崩溃和背后的代码路径连起来
  • audit_residual_unknowns: 列出还没证实的部分
  • prepare_bounded_process_capture: 在运行任何东西之前,规划一个安全、受限的运行时实验

专业循环就是:调查 → spec → 构建 → 验证

text
1用 REA 调查 [feature] 在 [app] 中是如何工作的。写 SPEC.md:行为、输入、输出、边界情况,不要复制代码。然后根据 SPEC.md 在 ./my-version 中构建它,根据观察到的行为写测试,并运行直到通过。

这能做到什么程度,看看官方 showcase:

  • DX-Ball(1996 年):REA 还原了声音平移函数并用 C 重构。它通过了 3,205 个原始 x86 测试用例,并复现了全部 63 个编译字节 DX-Ball
  • Notion: REA 追踪了复制功能的完整路径,从页面经过 IPC 桥接到系统剪贴板 Notion

对于认真做这件事的人来说,东方重构项目带来的经验简直是金子:

  • 给 Agent 明确的目标和明确的验收标准
  • 把笔记和检查点存进 git,这样下次会话能接着干
  • 把 Agent 的每一次解释都当成待验证的假设
  • 测试你的测试。 曾经有一个坏掉的比较逻辑让错误的函数蒙混过关了

安全圈的人已经在大规模跑这套流程了。一位研究员搭了一条包含 8 个 MCP server、300+ 工具、Ghidra、radare2 和 Frida 的 AI pipeline,他说靠 bug bounty 就已经回本了:

https://x.com/cr3ghost/status/2098033761317446083

钱在哪里: 安全研究和 bug bounty、把老软件迁移到新系统、让各种工具互相通信,以及帮公司搞懂那些丢了源码的软件

codila - inline image

09. REA 做不到什么

我希望你信任这篇文章,所以这里是它真实的局限

  • 它碰不到服务器。 它只读你机器上的东西。跑在公司服务器上的代码从来没发给你过。它黑不了银行,也转不了钱 Why it can't hack your bank
  • 反编译出来的代码不是原始源码。 它是一种重建。这就是为什么验证步骤很重要
  • 硬骨头依然难啃。 去符号的 C++ 二进制比 Unity .NET 游戏难搞得多
  • 你的 Agent 可能会拒绝。 某些固件和主机目标会触发模型的安全规则
  • 商业工具需要真 license。 REA 不会给你 IDA、Hopper 或 JEB 的 license,也不允许用破解版
codila - inline image

10. Prompt 合集

存好。装完 REA 后,每条 prompt 都能在 Claude Code 里直接用

设置:

text
1使用 npx rea-agents@latest setup 安装 REA 并将其连接到这个 coding agent。给我看一下设置方案等我批准,然后验证安装。

你的第一次测试

text
1把 https://rea.tools/examples/notes-example.zip 下载到一个新的 example 文件夹并解压。用 REA 找出我点击 Export notes 时会发生什么。

万能版:

text
1搞懂 Notes 应用里搜索是怎么工作的,给我看证据,然后为我的项目做一个类似的功能。

实时功能:

text
1搞清楚 Discord 是怎么实时显示谁正在打字的,给我看证据,然后为我的项目做一个类似的。

计算器:

text
1对这个 APK 使用 REA。列出所有权限、所有分析或追踪 SDK,以及这个 App 通信的所有域名。对每个发现都要显示类和方法。
text
1用 REA 检查 Windows 计算器的 % 按钮。还原它在 + 和 × 之后的运算规则,然后做一个同时用到这两条规则的小计算器。

小游戏:

text
1研究一下恐龙小游戏,做一个速度可调的版本。

还原一款游戏:

text
1从可执行文件里还原一款游戏,并和原版对比测试。

克隆一个网站:

text
1克隆 rea.tools 网站。

手机 App 审计:

text
1用 REA 分析这个 APK。列出所有权限、所有数据分析或追踪 SDK,以及 App 通信过的所有域名。每一项发现都要标明对应的类和方法。

Token 检查:

text
1用 REA 分析这份合约字节码。列出所有能改变状态的函数。标记任何看起来像 mint(铸造)、blacklist(黑名单)、pause(暂停)、fee change(手续费变更)或 owner-only transfer(仅所有者转账)的逻辑。分清哪些是确认的,哪些是推测的。

专业级重构:

text
1用 REA 研究 [app] 里的 [feature] 是怎么实现的。写一份 SPEC.md:行为、输入、输出、边界情况,不要复制代码。然后根据 SPEC.md 在 ./my-version 里把它做出来,根据观察到的行为写测试,一直跑到全部通过为止。

更新里改了什么:

text
1对 [app] 的 [old version] 和 [new version] 使用 REA 的 compare_application_versions 工作流。告诉我到底改了什么,并附上证据。

你的「一晚通关」计划

别光收藏。今晚就动手:

  1. 用 setup prompt 安装 REA(5 分钟)
  2. 拿官方的 Notes 示例练手(2 分钟)
  3. 在你电脑上挑一个每天都在用的 App
  4. 针对你喜欢的某个功能提一个问题
  5. 拿到规格说明:它具体做了什么,一步步讲清楚,还要有证据
  6. 在新文件夹里,照着这份规格说明做出你自己的版本

就这么简单。只要一个晚上,你看待软件的方式就会彻底改变

范式转变

闭源以前意味着「你永远不可能知道」→ 现在意味着「把证据拿出来给我看」

https://x.com/karpathy/status/2109361546505966046

REA 不是黑客工具

它是用来阅读那些不是你写的软件的工具

真正的 alpha 机会,不是那 100K stars,也不是刷屏的截图

真正的 alpha 在于:别人 App 里让你眼红的每一个功能,现在你都能看懂了:

  • 让 REA 找出功能和证据
  • 让 Claude 写出规格说明并做出你的版本
  • 让测试证明它能跑通

大多数人还会继续花钱买那些他们花一个下午就能搞懂的功能

而少数学会阅读软件的人,想做什么就能做什么——而且完全免费。

下次动手开发前,先把这篇教程收藏起来 →

@0xCodila

一键保存

使用 YouMind AI 深度阅读爆款文章

保存原文、追问细节、总结观点,并在一个 AI 工作空间里把爆款文章沉淀成可复用笔记。

了解 YouMind
写给创作者

把你的 Markdown 变成干净的 𝕏 文章

图片上传、表格、代码块,往 𝕏 上手动重排太痛苦。YouMind 把整篇 Markdown 一键转成干净、可直接发布的 𝕏 文章草稿。

试试 Markdown 转 𝕏

更多可拆解样本

近期爆款文章

探索更多爆款文章