夜雨聆风学习资料网

ARTICLE · 1161282

想要的功能没源码?这个工具让 AI 拆到二进制层面

想要的功能没源码?这个工具让 AI 拆到二进制层面

📦 5 Parts + Conclusion

👉 滑动

PART 01

它是干嘛的

没源码也能查

PART 02

工具箱

126 个工具

PART 03

两条命令上手

MCP + CLI

PART 04

设计细节

证据不撒谎

PART 05

泼冷水

边界要想清楚

PART ///

写在最后

值不值得关注

用一个 App 的时候,你大概碰到过这种时刻:某个功能做得真好,想知道它是怎么实现的,可惜对方不开源,网上也搜不到什么细节,只能干看着。

GitHub 上有个叫 rea(Reverse Engineer Anything)的项目,今天冲上 Trending 涨幅第一,单日新增近 3000 star。它干的事一句话能说清:给你的 AI 编程助手接上一整套逆向分析工具,让它在没有源码的情况下把一个应用的功能原理查明白,然后帮你在自己的项目里做出来。

先说清楚,这项目不叫“破解”,作者明确写了它不承诺恢复原始源代码、也不会自动克隆应用。它更像带着 AI 做一次有证据的调查。好不好用,往下看。

01

PART

它到底是干嘛的

WHAT IS REA

rea 本质是个 MCP 服务器 加一个命令行工具。装上之后,你的 AI 编程助手就多了一双手:能打开原生二进制、JavaScript/Electron 应用、.NET 程序集甚至网站,一层层往下看,不用拿到源码。

调查分三步:先反编译,把可读的代码、字符串、名称这些线索捞出来;然后顺着线索追踪,直到 AI 能解释这个功能怎么运作;最后把学到的东西变成你自己技术栈里的实现。README 里给的示例提示词很直白:

“搞明白备忘录 App 的搜索是怎么做的,给我看证据,然后在我的项目里做一个类似的。”

重点是“给我看证据”这四个字。rea 不让 AI 张口就来,每个结论后面都跟着反编译产物和调用链,查不到的地方就老老实实标 unknown,缺失的证据不会被当成通过。

02

PART

工具箱里有 126 个工具

TOOLBOX

第一次翻工具列表的时候我数了数,整整 126 个,按用途分了十几个家族,比一般逆向入门教程能讲到的范围大不少。

原生二进制检查是大头

41 个工具,覆盖函数、伪代码、汇编、字符串、符号、交叉引用这些逆向工程的基本盘。

移动端和前端都有专门的家族

Android APK 静态分析 5 个,Electron 应用分析 5 个,浏览器观察 9 个,.NET 程序集 7 个,连 Linux 固件区域检查都有 2 个工具。

支持的格式相当全

Mach-O、ELF、PE 三大平台二进制都能吃,Mac 的 .app,包资源类的 ZIP、APK、IPA、ASAR 也在列表里。

底层引擎三选一

Hopper、Ghidra、IDA Pro。rea 自己不带反编译器,而是通过 MCP 把这三个老牌工具接进来。Ghidra 免费开源,装个 JDK 21 就能用;Hopper 有 demo 模式;有 IDA 的可以直接复用现成的 ida-pro-mcp。

03

PART

上手只要一条命令

QUICK START

安装就一条命令,装完它会引导你选要接入哪个 agent:

...bash

npx rea-agents setup

# 或装成全局 CLI

npm install --global rea-agents

setup 过程会先审查、备份配置再动手,要装 Hopper 的话单独征求你同意。装好之后,agent 那边发一句话就能开始调查,流程大概是七步:打开二进制、搜字符串找线索、交叉引用连到代码、重建调用图、批量反编译关键函数,最后一步才是 AI 在你的项目里写代码。前五步 rea 全包。

不想动 MCP 也有纯命令行玩法:

...bash

npx -y rea-agents@latest analyze /Applications/Notes.app

npx -y rea-agents@latest search /Applications/Notes.app "offline"

支持的 agent 列表很长:Claude Code、Codex、Cursor、Gemini CLI、Windsurf、Copilot CLI 等主流的都在。另外 JavaScript 和 Electron 应用有单独的静态分析模式,不装 Hopper 和 Ghidra 也能跑,门槛一下子低了不少。

04

PART

设计上挺讲究的几个地方

UNDER THE HOOD

翻文档的时候有几个细节让我对这项目的好感度上升。

第一,失败绝不静默换工具。会话里选定的分析引擎不会中途偷偷切换,搞砸了就明说。这对逆向场景太重要了,结果如果是换个工具偷偷跑出来的,证据根本没法用。

第二,所有分析都在本地跑。没有云端服务,不上传你的应用,跟 Ghidra 通信走的是认证过的本地 socket。要分析一些商业软件的时候,这一点让人放心不少。

第三,证据快照的复用条件苛刻到变态:目标文件的字节、操作、参数、工具、设置全部一致才能复用,差一样就重跑。慢一点,但结论可靠。

第四,有个 doctor 命令做全身体检,主机环境、依赖、分析工具、agent 配置一次查完,省得装完跑不起来到处翻 issue。

05

PART

该泼的冷水

REALITY CHECK

先说最实际的一条:反编译出来的东西是伪代码,不是源码。能看懂逻辑,但别指望直接复制粘贴回你的项目,最后的实现还是得自己写。

想拆原生二进制,就得先有个反编译引擎。Ghidra 免费但首次分析一个查询可能超时,Hopper 一次只处理一个请求,这两个引擎都有些脾气,急不得。

Windows 支持是短板,进程捕获只有 Linux 和 macOS 能用,Windows 用户要靠 WSL 绕一下。

还有法律和道德这条线要自己划好。逆向自己买来的软件做学习研究、做兼容性重建,多数地方没问题;但拿它去破解收费软件、扒别人代码直接商用,那就是另一回事了。工具是中性的,用的人得自己掂量。

///

LAST

写在最后

FINAL THOUGHTS

rea 适合两类人:一类是总想知道“这个功能到底怎么实现”的工程师,一类是天天让 AI 写代码、想给 AI 加个放大镜的玩家。

它今天冲上 Trending 涨幅第一不是没道理的,把逆向工程这件高门槛的事,包装成了 AI 助手的一次普通调查。不过门槛降了不等于结论都可信,证据还得自己看,判断还得自己下。

项目地址:github.com/morluto/rea

我是明翼,热衷于分享值得一看的开源项目。如果你觉得今天这篇有收获,欢迎点赞、在看、转发三连,我们下篇见。

既然看到这里了,如果觉得有用,随手点个赞、在看、转发三连吧。

点赞
在看
转发

THANKS FOR READING

相关学习资料