REA逆向一切的能力99.9%来自AI本身
关于REA这个项目有多火爆,相信已经不需要再说了,基本上B站、微信公众号,基本上所有的平台都能看到这个项目的推荐。仅仅一周的时间,在GitHub冲上20W星,现在还在上涨中。
外行看热闹,内行看门道,现在我们就来盘盘rea里有什么道。
在这之前,我们先讨论下,一个理想的安卓逆向skill应该包含什么东西。
安卓逆向的几大必备能力与进阶方向
就安卓逆向来看,其能力六边形如下:
| 能力维度 |
核心角色 |
所需“智力”(思维模式) |
核心常用工具 |
| 过环境检测 |
突破第一道防线,让 App“认为”自己运行在安全环境中 |
对抗性思维、系统底层知识 |
Magisk + Zygisk + Shamiko、LSPosed、Frida(隐藏版/反检测脚本)、Xposed、VirtualApp、Device Faker、HideMyApplist |
| 抓包 |
获取 App 与服务器通信的原始数据 |
网络协议分析、耐心与细致 |
Burp Suite、mitmproxy、Charles、Reqable、Wireshark、r0capture、Frida(SSL Pinning 绕过脚本)、PCAPdroid、eCapture |
| 脱壳 |
剥离加固保护,还原出可分析的原始代码 |
逆向工程核心、内存操作与 Hook |
Frida、FRIDA-DEXDump、frida-unpack、FART、Youpk、BlackDex、dumpDex、Jadx、JEB、IDA/Ghidra |
| 纯算法 |
定位并还原加密/签名逻辑,实现离线复现 |
密码学基础、逻辑抽象与还原 |
Jadx、JEB、IDA Pro、Ghidra、Frida、unidbg、angr、CyberChef、Python |
| 过风控 |
模拟真实用户行为,绕过服务端风险识别 |
攻防博弈思维、数据分析 |
Frida、LSPosed、Magisk、VirtualApp、Device Faker、XPrivacyLua、Appium、Airtest、mitmproxy、Wireshark |
| 全协议脱机挂 |
脱离官方客户端,独立模拟完整协议交互 |
系统性架构思维、协议逆向 |
Wireshark、tcpdump、mitmproxy、Frida、IDA/Ghidra、unidbg、Scapy、Protobuf 工具、Kaitai Struct、010 Editor、Python |
如果按工具链再归纳一下,大致是:
- 静态分析三件套:Jadx、JEB、IDA/Ghidra
- 动态 Hook 三件套:Frida、Xposed、LSPosed
- 网络三件套:Burp Suite、mitmproxy、Wireshark
- 脱壳三件套:FART、FRIDA-DEXDump、BlackDex
- 算法与协议模拟:unidbg、Scapy、Python、Protobuf 工具
- 环境与风控对抗:Magisk + Zygisk + Shamiko、VirtualApp、Device Faker、Appium/Airtest
这些工具通常不是单独使用,而是组合成链:比如 Frida + Burp + Jadx 处理抓包与静态分析,Magisk + LSPosed + Shamiko 处理环境检测,FRIDA-DEXDump + Jadx/JEB 处理脱壳,unidbg + Scapy 处理算法还原与协议模拟。
那么一个理想的逆向 skill 应该是样子的呢,又该如何证明rea真的具备这些相关能力呢?
大道至简:从源码出发,你的源码里都不包含相关的关键字,我如何会认为你已经具备相关的能力呢。
安装及源码分析
首先是部属和安装,笔者选择的大模型为codex,在codex中部署安装REA,只需要一句话,后续交给AI来操作就可以了。
帮我安装 975K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6E0L8%4u0D9N6i4c8G2i4K6u0r3M7X3g2S2
而安装任务完成之后,codex还会自动帮你做健康检查,连接MCP。
看到这些关键信息就说明可以了:

后续还可以让codex检查下rea是否已经完整安装,提示词同样简单:
判断rea是否已经完整安装
根据结果自行判断是否需要补充工具,例如笔者这里反馈的是 若选择Ghidra,则还需要JDK21。

解决方法同样简单,需要什么就和Ai讲什么。
安装JDK 21 和 Ghidra
等待片刻后,看到已安装完成等字样就说明可以了

codex重启后,就可以直接和AI讲你的分析目标了。
回到正题,本文从源码角度来深扒REA在Android逆向方向,有多少吹牛的地方。
大家都知道,无论是玩逆向,还是做开发,有一个非常经典的名言:Talk is cheap. Show me your code. 废话少说,放码过来。
在readme里说的再多,其实没有意义,我们看的是什么?
我们看的是源码!我们要真正的看rea所有的源码,分析整理逆向能力报告,来看它真正的能做到什么样子,哪些又是现在的它做不了的。
所以,下定义前,需要有足够的源码支撑,讲的再天花乱坠,没有源码我们是不会相信的。
REA源码下载
下载REA源码照例让codex自己完成:
下载rea的源码到桌面,GitHub地址:718K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6E0L8%4u0D9N6i4c8G2i4K6u0r3M7X3g2S2
代码解析工具准备
阅读源码的工具,笔者用的是:codebase-memory-mcp。
它的核心能力,就是可以帮你省去99%的token消耗;大家知道现在用Ai来做源码阅读,如果每次都重新上传源码的话,那对token的消耗是非常巨大的。
而如果你有了这个工具,那对token的消耗降低99%。

可以在codex中,直接提示词安装:
帮我安装 codebase-memory-mcp, GitHub地址: 76fK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6p5k6i4g2K6c8r3q4@1j5g2)9J5c8X3y4G2k6r3g2T1j5i4y4W2i4K6u0V1L8h3g2E0L8%4u0&6i4K6u0V1L8h3y4H3
有兴趣自行探索,或者希望节省token,也可以去GitHub Readme中找相关的命令说明。
有了 codex 和 codebase-memory-mcp 结合之后读源码,简直是一种享受,基本上只需要在codex里使用 codebase-memory-mcp 对 REA的源码索引一次,后续就不再需要第二遍,codebase会为你生出相关的技能图谱仓,有各种文档、目录、仓库,建立各种索引,后续就非常方便。
同时,大家也知道,现在已经是AI生产源码AI在看,几百万行源码对AI来讲已经非常轻松了,甚至后面大家有需要,还可以让codebase来读安卓源码,来直接生成Android源码报告。
开工
索引rea源码提示词:
用codebase-memory-mcp对rea文件夹里的源码进行索引分析
看到分析完成后,我们就可以深挖REA的源码了,例如,我们让AI对安卓部分的抓包技能源码进行解读。
抓包能力边界
提示词:
对安卓部分的抓包技能源码进行深入解读,输出完整详细源码阅读报告
根据上面的六边形范围,就抓包而言基础的几项能力有哪些:
charles 证书装进手机里
代理VPN抓包
cornet SSL Pinning 解绑定
flutter 固定opcode的内存遍历
安卓 / IOS 区分
函数名和方法名的解混淆
hook抓包
r0capture
ecapture
我们看看REA 安卓抓包相关能力源码阅读报告中的结论:

它的抓包相关的能力前提是,你有一个抓包导出文件Pcap,它对这个抓包文件进行读取分析,除此之外便没有了,这跟我们所理解的抓包还是一回事吗,和我们理解的对抗是没有任何关系的。
脱壳&纯算能力边界
那对于脱壳,我们最常见的几个工具
frida-dexdump
BlackDex
fdex: 反射大师
fart
eBPFDexDumper
或者常见壳的特征识别
我们让codex从分析报告中整理脱壳和安卓纯算逆向两个方面的源码进行分析
针对安卓脱壳、安卓纯算逆向,这两个方面的源码也制作完整的源码阅读报告,分别生成到对应的报告文件里,使用markdown格式
等待分析完成后,我们来看结论:

从Ai输出的结论中,关于脱壳的相关部分击中率较低,纯算部分则有及格的评价。
那从这份结论中,首先我们能推理出来,AI其实是知道安卓脱壳需要什么样的能力的。然后AI以相关的关键字,在源码中搜索,判断REA可能具备什么能力,可惜的是在脱壳方面,REA没有相关的工作流。
而rea在Android相关代码中,对输入做了限制:只接受静态制品请求

这说明rea对没有加固的APK有用,本质还是JADX的功能,那我们怎么用它?它解决什么问题?靠它怎么上班挣钱呢?
环境检测对抗
在分析时,发现APK点不开、闪退是比较常见的现象,rea的代码实现表现如何?


至于剩下的,我想已经不必再花费大家的时间了。
而rea擅长什么呢?
REA的优点
根据rea的简介介绍,它覆盖的方向大而全,除了包含Android逆向,还具备了 .net、 javascript、原生二进制文件等方向的逆向能力,不过这些方向的实际能力,还需要参考垂直领域的深度,结合具体的业务表现,来给rea做一个打分评判。
最后聊聊
rea的优点是覆盖领域大而全,而在安卓逆向的能力六边形中,能力深度上有所欠缺,对对抗中的帮助几近于无,目前还难以胜任逆向相关的工作。
总结
从上面的这些分析报告上,笔者思考,它的名字不应该叫“逆向”Reverse,或许,当下更适合的表达是“重建”Rebuild。
在开发领域可能有更为合适的场景,可能是在取得页面布局 或 提供一些截图的前提下,可以让rea做前置的分析,并结合AI来完成相关代码的生成。
最后,AI的本质是什么呢?
盗窃,让你合法抄袭,消灭商业版权和知识产权,消灭所有的隐私。
总结下来,rea的逆向能力99.9%来自于模型本身,选择一个好的模型对逆向的帮助更大。
引用龙哥对rea的感受:
REA是一个现象级的逆向自动化工具箱,国庆期间完成了破圈,短时间已经超过11w star了。很多人在社群里奔走相告,说用这个工具逆向everything的感觉太棒了。
我个人对这个项目的评价很低,因为这类项目只是在假装努力。项目中的四个 showcase,让 dsh+dsv4.1flash 裸跑也只要半小时就可以全部搞定。过程中遇到工具需求,ai 会自己下载,根本不需要一个复杂预置系统的指导。
类似的,我之前测试挖的各种app 1 clickrce,也只是 dsh+glm/dsv4.1f/seed 的裸跑,提示词近乎许愿:“/goal xxx 应用有若干个1 click rce,找到并验证后给我”。
如今特化Agent流行,甚至是泛滥,本质是公众对Ai智能水平的感知滞后和能力悬置。
