本篇教你在 Android 上一步步抓下手机 / 模拟器里的流量。Android 抓包最常卡在证书上——装了证书 App 却还是不认,做了证书绑定的更是直接抓不到。这里换个思路: 整机抓包 + 自动解密,全程不用在手机上装证书;真机、模拟器都行,连做了绑定、走自研加密的 App 也能从内部拿到明文。跟着下面的步骤走,抓下第一条请求。
先按你的设备和目标对号入座,再往下看对应的操作步骤:
| 你的情况 | 用哪种 | 要不要 root | 要不要装证书 |
|---|---|---|---|
| 老设备 / 模拟器 / 拿不准新旧,想最稳 | 网卡密钥(推荐默认) | 需要 | 不用 |
| 较新的已 root 真机,想最省事 | 网卡抓包 | 需要 | 不用 |
| 只盯某一个 App,或它在整机模式下只出密文 | 应用层抓包 | 需要 | 不用 |
| 设备没 root,或想边看边改(改写 / 重放) | 代理抓包 | 不用 | 要装(见第二节) |
通用准备(真机)
关于 root
关于证书(只有代理抓包才需要)
抓设备网卡(默认 Wi-Fi)的 全部流量并自动解密,不用挑 App、不用装证书。兼容性最好,老设备、各类模拟器都能用。
模拟器的系统内核往往较老、不一定支持「网卡抓包」——这时直接用「网卡密钥」最稳,它对模拟器兼容性最好。
同样抓设备网卡的 全部流量并自动解密,特点是 自包含、最省事(数据和解密所需信息打包在一起)。
前提是较新的设备(新内核)。 若设备偏老不满足,开抓时会明确提示「网卡抓包不支持」——照提示改用 网卡密钥即可。
针对 单个目标 App, 直接从它内部取明文——证书绑定、自定义加密都拦不住。整机模式下解不出的那类 App,用这个定点拿下。
常规方式取不到明文时(静态链接 / 自研库那类顽固 App),打开 「socket 流量」 开关兜底,换一条更底层的路取数据。
设备没 root、或你需要对请求做 规则改写 / 重放时,走代理这条路:把手机 Wi-Fi 代理指向本机、装上根证书,就能像电脑上一样抓 HTTPS 明文,并用上改写、重放等完整能力。
在请求列表点开任意一条,看详情:
整机抓法(网卡密钥 / 网卡抓包)下,大多数 App 的 HTTPS 会 直接呈现明文;少数用自带 / 非标准加密组件的 App 可能只出密文,改用 应用层抓包定点解决。

| 现象 | 多半是 | 怎么办 |
|---|---|---|
| 设备根本不在列表里 | 没开 USB 调试,或没点「允许」 | 手机上开启 USB 调试并允许本机;模拟器重启一次多半就被识别 |
| 提示「网卡抓包不支持」 | 设备内核偏老,不满足网卡抓包前提 | 改用 网卡密钥,它不挑内核 |
| 抓到流量,但某个 App 只有密文 | 这个 App 用了自带 / 非标准加密组件 | 对这个 App 改用 应用层抓包,从内部取明文 |
| 应用层抓包也取不到明文 | 目标是静态链接 / 自研库的顽固 App | 打开 「socket 流量」 开关兜底 |
| 只想抓 App 一启动的那几条,却总错过 | 抓的时候 App 已经起来了 | 应用层抓包里勾 「重启目标程序」,抓它启动初期的流量 |
| 装了证书,代理下仍抓不到 HTTPS | 高版本安卓默认不信任用户证书,或 App 做了证书绑定 | 已 root 就让证书装到系统层,或干脆改用免证书的 网卡密钥 / 网卡抓包;证书绑定见 解除证书绑定 |
项目地址:https://github.com/traceeagle/traceeagle
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70047459/viewspace-3176242/ ,如需转载,请注明出处,否则将追究法律责任。