社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

GitHub 36万 Star 爆火,AI界来了个猛货,号称逆向任何东西

Java基基 • 5 天前 • 52 次点击  

👉 这是一个或许对你有用的社群

🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 

👉这是一个或许对你有用的开源项目

国产Star破10w的开源项目,前端包括管理后台、微信小程序,后端支持单体、微服务架构

RBAC权限、数据权限、SaaS多租户、商城、支付、审批工作流、大屏报表、ERP、CRM、WMS、MES、HRM、EAM、OA、FMS、PMS、AI大模型、AI工作流、AI Agent、IoT物联网、IM实时聊天等功能:

  • 多模块:https://gitee.com/zhijiantianya/ruoyi-vue-pro
  • 微服务:https://gitee.com/zhijiantianya/yudao-cloud
  • 视频教程:https://doc.iocoder.cn
【国内首批】支持 JDK25 + SpringBoot4、JDK17/21+SpringBoot3、JDK8/11+Spring Boot2三版本 

QUOTE

它替掉的是重复劳动,不是判断。

十月十四日它还是十八万 Star,如今已经超过三十八万。十来天,翻了一倍多。

— Star 曲线,十月开始近乎垂直

仓库现在有三十八万多 Star、九万五千多 Fork、四千两百多次提交,项目仍在持续更新。图看这里。

— 仓库首页,Star 与许可证

REA 是 Reverse Engineer Anything 的缩写,直译就是逆向任何东西。它本身不是反汇编器,是一套给 AI 编程助手用的逆向工具,通过 MCP 接进 Claude Code、Codex、Cursor 这些助手。

我更愿意把它理解成另一件事。逆向这行最怕的从来不是不会,是看起来会。一份没有出处的伪代码,一段听着合理的解释,能把人带偏好几天。REA 每次给结论都把证据、局限、还没搞清的部分一起交出来,两个引擎都能处理同一个目标时它会停下来问你用哪个。这才是我觉得它值钱的地方。

— README 项目介绍

本文看点

01

它不造反编译器,它调用你装好的

02

从 exe 到示波器波形

03

每次给结论,都把证据和未知一起给你

01

ENGINES

它不造反编译器,它调用你装好的

原生二进制这种硬活,REA 自己不上。它调用你电脑上已经装好的 Ghidra、Hopper 或 IDA,再把结果接回对话。

— REA 的调查流程,提问、检查追踪、读证据、用于实现

在 Hopper 里跑起来是这样,左边是反汇编,右边是它递上来的函数档案。

— Hopper 里的 REA 分析桥

所以它干的活是拆步骤。你提问,它检查目标并追踪相关代码,把代码、引用和未知项交回来,Agent 拿这些去解释、实现、测试,有疑问接着追问。

还有个省上下文的细节。MCP 默认走紧凑输入 schema,字段说明只给必要的部分;想要完整的字段指导和嵌套校验,在注册里加一个 REA_MCP_INPUT_SCHEMA_PROFILE=full。工具集不变,变的是说明的详细程度。

ruoyi-vue-pro

基于 Spring Boot + MyBatis Plus + Vue & Element & Ant Design 实现的后台管理系统 + 用户小程序,RBAC权限、数据权限、SaaS多租户、商城、支付、审批工作流、大屏报表、ERP、CRM、WMS、MES、HRM、EAM、OA、FMS、PMS、AI大模型、AI工作流、AI Agent、IoT物联网、IM实时聊天等功能

项目地址:https://github.com/YunaiV/ruoyi-vue-pro

视频教程:https://doc.iocoder.cn/video/


02

TARGETS

从 exe 到示波器波形

官方支持清单很长,值钱的是它把目标分成了两半。

一半靠内置静态解析,不用装任何引擎。Go 二进制能读出编译版本、模块和依赖,Rust 能读 cargo-auditable 的 crate 清单,.NET 能出元数据和 CIL,PyInstaller 能拆 CArchive 和入口脚本。Unity 的 IL2CPP、Godot 的 PCK、GGUF 与 safetensors 模型文件、PE 证书、ELF notes、APK 签名、Flutter 的 snapshot 哈希,也都在这一半里。

另一半要外部工具。APK 走 JADX 加完整 JDK,固件走 Binwalk 或 Unblob,抓包走 TShark,录下来的逻辑信号走 sigrok-cli,WASM 要 WABT 1.0.42,EVM 字节码要 Linux x64。原生二进制是这一半里最费劲的。

还有一类不折腾二进制。桌面安装包能列出运行时候选、组件标记和下一步该探什么;进程行为能抓终端输出、交互、退出码和文件系统变化;录下来的崩溃能读出每个线程的寄存器和信号。

门槛最低的是 JavaScript 与 Electron。读模块、路由、IPC 和原生插件关系,只要 Node 和 npm,一个逆向引擎都不用装。

yudao-cloud

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element & Ant Design 实现的后台管理系统 + 用户小程序,RBAC权限、数据权限、SaaS多租户、商城、支付、审批工作流、大屏报表、ERP、CRM、WMS、MES、HRM、EAM、OA、FMS、PMS、AI大模型、AI工作流、AI Agent、IoT物联网、IM聊天等功能

项目地址:https://github.com/YunaiV/yudao-cloud

视频教程:https://doc.iocoder.cn/video/


03

EVIDENCE

每次给结论,都把证据和未知一起给你

这是它最不像 AI 玩具的地方。

README 写得很直白。不保证还原出原始源码,也不可能一条命令把整个软件克隆出来。反编译出来的是伪代码,跟当年写的源码是两回事。复杂功能最后还是人要验证、测试、重写。

歧义也明说。同一个目标 Ghidra 和 Hopper 都能处理,它不会自己挑一个就跑,会停下来告诉你这里有歧义,让你指定。

证据是带编号的。函数档案、指令区间、跟公开源码的交叉核对,每一项都挂着 ev 开头的标识,回头能查。写报告或者对簿公堂的时候,这一点比结论本身有用。

官方案例页的自我限定更狠。计算器那个案例下面直接写着,演示里的 prompt 是示意,不是一次全自动端到端发现的录像,函数定位是分析者辅助完成的。一个敢这样标注自己的项目,比十条全自动的宣传更让人放心。

— 官方案例入口


04

CASES

三个能看懂的案例

第一个是 Aegis 验证器。让它读 APK,找出六位验证码怎么生成、为什么三十秒一变,最后给一个能拖动时钟的演示页。

— Aegis 验证码演示,拖动时钟看 30 秒怎么变

第二个是 Windows 计算器。200 加 10% 为什么算出 220,很多人纳闷过。REA 在本机装的 CalcViewModel.dll 里找到处理函数,看到百分比分两支,乘除走 rat 除以 100,加减走 rat 乘以 lastVal 除以 100。再拿 MIT 开源的 calculator 源码交叉核对,分支对得上。

— 计算器百分比的两条分支

第三个是 Chrome 断网的小恐龙。官方拆的是网页版,读出的规则是起步速度 6、每次无碰撞更新加 0.001、上限 13。另开一个 Playwright 控制器反复调 Runner.update 验证,七千次到 12.999,一万次到 13.001,因为代码先比较再加。

— 小恐龙速度规则演示

Notion 那个案例追的是剪贴板。从页面里能调到的 API,顺着 preload 和 IPC 一路追到主进程,看清富文本是怎么被一小段 HTML 标记串起来的。

TH04 是 1996 年的 PC-98 游戏,用 16 位指令还原出瞄准角度的算法,再把重写的 C++ 跟当年编译器输出对照。

还有一个更硬的,DX-Ball 的声像计算。还原出的 C 函数过了 3205 个原始用例,编译出来的 63 个字节跟原版完全一致。


05

INSTALL

装它只要一句,配引擎才是门槛

前提只有一个,Node.js 22.x 不低于 22.19、24.x 不低于 24.11,或者 26 以上,外加 npm。

···bash

npx rea-agents setup

它会让你选助手,列出准备改哪些配置,确认后写入 MCP 服务和配套的工作流说明,改之前自动备份。装完重启助手。

想先跑一次命令行也行,比如拆一个 Electron 应用。

···bash

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

官方支持的客户端一共二十一个,桌面与 IDE 六个,命令行九个,云端六个,setup 会自动写进 MCP 配置。

— 二十一个受支持的客户端与各自的取值

不在列表里也能用。任何支持本地 MCP 的助手,手动填一段配置把它拉起来就行,Trae 社区有人这么干过。Grok Bot 是例外,得接托管连接器。

— 手动 MCP 配置界面

真正的门槛在引擎。要啃原生二进制,得先把 Ghidra、Hopper 或 IDA 配好。macOS 上用 Hopper 有个坑,第一次启动会弹窗问演示模式还是激活许可证,这个弹窗不处理掉,后面的分析会直接卡住。


06

LIMITS

它到不了的地方

官方的免责声明写得很清楚。只用于合法的研究、教育、互操作和软件保存,分析的得是你自己拥有或者有权分析的软件。IDA Pro、Hopper、JEB 这些商业工具的授权要自备。

Linux 上还有一层前提。Ghidra、JADX、固件工具和静态 JavaScript 分析,都需要一个 procps 兼容的 ps 在 PATH 里,用来做进程归属检查,缺了会直接报错。

技术上也有天花板。社区有人拿它分析大厂 App 的客户端,但支付风控、推荐算法这些核心逻辑跑在服务端,客户端逆向碰不到。

伪代码不是源码。能看懂不等于能改对,复杂功能还是得人来验证。

也不是全自动。官方案例自己承认了分析者辅助那部分,这个尺度比宣传口径诚实得多。


07

VERDICT

门槛被打下来之后

以前想做这件事,得自己开反汇编器一行行追,没有几年经验玩不转。现在这些重复的步骤能交给 Agent 跑,读到的东西还带着出处。

但它替掉的是重复劳动,不是判断。证据摆在那儿,怎么解释、值不值得信、下一步问什么,还是人。

第一次上手建议从 Electron 应用开始。不用配任何引擎,装完就能跑,先看清证据长什么样,再去碰原生二进制。

仓库在 https://github.com/morluto/rea

END




欢迎加入我的知识星球,全面提升技术能力。

👉 加入方式,“长按”或“扫描”下方二维码噢:

星球的内容包括:项目实战、面试招聘、源码解析、学习路线。

文章有帮助的话,在看,转发吧。

谢谢支持哟 (*^__^*)

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/202943