如何不折腾证书搞定安卓应用层抓包:r0capture 完整上手指南 📅 发布时间:2026/8/22 19:35:41 👁 浏览次数: 如何不折腾证书搞定安卓应用层抓包r0capture 完整上手指南【免费下载链接】r0capture安卓应用层抓包通杀脚本项目地址: https://gitcode.com/gh_mirrors/r0/r0capture你多半经历过这样的抓包流程代理工具配好了请求一过中间人就直接失败——App 做了证书绑定SSL Pinning换个 App 又是另一套校验。r0capture 是一款安卓抓包通杀脚本它通过Frida直接 Hook 应用层的 SSL 读写函数不关心证书、不关心框架把 Http、WebSocket、Ftp、Xmpp、Imap、Smtp、Protobuf 及它们的 SSL 版本一网打尽。先看你卡住过的三个场景证书校验直接挡路。代理抓包最常见的一死HTTPS 中间人握手失败抓个寂寞。r0capture 从底层 HookSSL_read/SSL_write在解密发生的地方下钩子证书校验对它来说是透明的一步。换个 App行为又变。OkHttp1/3/4、Retrofit、Volley、HttpUrlConnection……每个框架的拦截器、每个协议的封装都不同。因为 Hook 点在应用层公共的 SSL 读写函数上框架差异被抹平了——只要 App 最终走 SSL 收发数据就拦得到。️App 还做了加固或检测 Frida。整体壳、二代壳、VMP 都不需要你去脱壳分析如果 App 会探测 Frida 的标准端口它还提供非标准端口连接方式绕开检测下文进阶能力里有。它的工作思路可以用一张知识地图概括涵盖 HTTPS 中间人抓包、双向验证、代理检测、证书绑定、HOOK 点选取等完整脉络5 分钟让安卓抓包跑起来环境清单安卓 7 ~ 16真机模拟器环境太杂作者明确不推荐手机已部署 Frida frida-server推荐组合frida 17 / 安卓 16frida 16.5.2 / 安卓 14frida 15.2.2 / 安卓 12电脑 Python ≥ 3.6三步开抓git clone https://gitcode.com/gh_mirrors/r0/r0capture克隆项目仓库到本地。pip install loguru click安装仅有的两个依赖。python3 r0capture.py -U -f com.coolapk.market -v通过 USB 连接设备以包名冷启动目标 App 并开始抓包-U连 USB-f表示 Spawn 模式-v输出详情。Spawn 还是 Attach怎么选两种模式对应两种抓包姿势实际操作中建议优先 AttachSpawn 模式——由 r0capture 替你拉起 App 进程从冷启动开始记录适合抓 App 启动时的那批请求。另外客户端证书导出功能只能在 Spawn 模式下工作。Attach 模式——挂到已经跑起来的进程上从你感兴趣的操作开始抓还能把结果落成pcap 文件之后丢给 Wireshark 慢慢分析。这是作者的推荐用法python3 r0capture.py -U 酷安 -v -p capture.pcapAttach 到已运行的 App抓包内容实时写入 capture.pcap 供 Wireshark 分析。一个小坑老版本 Frida 用包名定位进程新版本要用 App 名——必须是frida-ps -U列表里显示的那个名字写错会 attach 失败。抓完的效果大致长这样左下是原始 hex 流右下是 Wireshark 里解析出的明文请求进阶能力三个值得知道的用法1️⃣ 收发包函数定位抓包之外顺带定位请求源头什么场景用你不只想看数据还想搞清楚 App 里是哪个方法、哪条调用链把请求发出去的——逆向分析请求构造逻辑时非常有用。怎么触发Spawn 和 Attach 模式都默认开启每笔请求输出里自带 Java 调用栈堆栈里被混淆的包名往往就是业务请求的发起点。注意事项输出量很大直接看终端很难受建议重定向到文件再过滤python3 r0capture.py -U -f cn.soulapp.android -v soul3.txt把抓包输出重定向到 soul3.txt事后慢慢检索调用栈。2️⃣ 客户端证书导出把 App 的 p12 证书拿在手上什么场景用目标 App 开启了服务器对客户端的证书验证双向认证你需要拿到 App 内置的客户端证书用于后续请求重放或分析。怎么触发默认开启但必须以 Spawn 模式运行。导出完成后证书会出现在手机/sdcard/Download/包名_xxx.p12默认密码r0ysue多次导出每一份都可用推荐用 keystore-explorer 打开查看。注意事项运行脚本前先手动给目标 App 授予存储卡读写权限而且并非所有 App 都部署了客户端证书机制——只有真配置了的 App 里才有证书可导。3️⃣ 非标准端口连接绕开对 Frida 的端口探测什么场景用有些 App 会检测 Frida 的默认 27042 端口frida-server 一跑起来就被发现。怎么触发把 frida-server 启动在非标准端口如 10002抓包时用-H参数指定地址python3 r0capture.py -U -H 192.168.58.112:10002 com.sinovatech.unicom.ui注意事项-H只在 frida-server 非常规端口时才需要正常 USB 连接不用管它。踩坑实录三个高频问题现象一个包都抓不到。先查三件事是不是用了模拟器强烈换真机frida-server 是否正常frida-ps -U能看到目标进程才算活Frida 版本和安卓版本是否匹配对照前面给的推荐组合。绝大多数抓不到都死在这三处。现象App 明明联网输出里却空空如也。大概率是它没走安卓系统的 SSL 栈WebView、小程序、Flutter 这类自带 SSL 框架的实现目前暂不支持HTTP/2、HTTP/3 同理这些 API 是 App 自带给的没法通用 Hook。这是已知边界属于少数情况碰到了可以在 issue 里反馈。现象多进程 App 只抓到主进程的流量。:service、:push之类的子进程目前不在默认支持范围内。解法是用 Frida 的Child-gating能力把子进程也纳入抓包。另外抓包中途如果发现还是抓不到可以看看输出里的 SSLpinning 定位堆栈它会把卡住的证书校验函数直接指给你看写在最后一句话总结证书问题交给它框架差异交给它你要做的只是选对模式、敲对命令。核心 Hook 逻辑在 script.js命令行入口在 r0capture.py想看实现直接翻源码。抓不到的包别憋着欢迎提 issue 反馈一起把它打磨得更全。【免费下载链接】r0capture安卓应用层抓包通杀脚本项目地址: https://gitcode.com/gh_mirrors/r0/r0capture创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考