给 iPhone 抓 HTTPS 包的两条路:Fiddler 代理法 vs 抓包大师手机直抓


"我想看看 iPhone 上某个 App 到底请求了哪些接口"——这个需求有两种主流解法。一种是让手机流量绕到电脑上的 Fiddler;另一种是用抓包大师(Sniffmaster)这类手机端 App 直接在本机抓。本文把两条路的完整流程和关键难点讲清楚,重点说明它们分别卡在哪里。

一、路线 A:Fiddler 代理抓包(电脑侧)

核心思路:iPhone 把所有 HTTP(S) 流量通过 WiFi 代理发到电脑上的 Fiddler,Fiddler 用自己的根证书解密后再转发。

关键步骤:

  1. 电脑 Fiddler:Tools > Options > Connections 勾选 Allow remote computers to connect,记下端口 8888。
  2. 确保 iPhone 与电脑连同一个 WiFi,查到电脑局域网 IP(如 192.168.1.10)。
  3. iPhone:设置 > 无线局域网 > 当前网络 > 配置代理 > 手动,服务器填电脑 IP、端口 8888。
  4. iPhone 用 Safari 访问 http://电脑IP:8888,下载 FiddlerRoot 证书并安装。
  5. 关键易漏点:装完证书还要到"设置 > 通用 > 关于本机 > 证书信任设置"里,手动把 Fiddler 证书的开关打开——不打开,HTTPS 依然解不了。
  6. 电脑 Fiddler:Tools > Options > HTTPS 勾选 Decrypt HTTPS traffic

会卡住的地方:

  • 手机和电脑不在同一网段、或电脑防火墙拦了 8888,代理直接连不通。
  • 某些 App 不走系统代理(直连),这时代理法完全抓不到它的流量。
  • 开启了证书绑定(certificate pinning)的 App,只信任自己内置的证书,装了 Fiddler 证书也会握手失败——这是代理法最常见的"死路"。

二、路线 B:抓包大师手机端直抓(手机侧)

核心思路:据其官网(sniffmaster.net)介绍,抓包大师直接运行在 iPhone 上,不设代理、不需要第二台电脑、无需越狱,在本机完成抓包并展示 HTTPS 明文。

相对代理法省掉的环节:

  • 不用配 WiFi 代理,也不要求手机电脑同网络,用蜂窝数据也能抓。
  • 不用在两台设备间来回下载、安装、手动信任证书。
  • 抓到的结果直接在手机上看,适合随时随地临时排查。

它的取舍在于:手机屏幕小,面对大量会话时的筛选、对比、导出、二次加工,通常不如桌面工具从容;改写/重放/脚本等"抓后处理"能力也以其官网说明为准。适合"快速看一眼请求"的场景,重度分析和改包仍是桌面工具的主场。

三、两条路怎么选

维度Fiddler 代理法抓包大师手机直抓
是否需要电脑需要不需要
是否要同一 WiFi需要不需要(可用蜂窝)
证书配置手动安装 + 手动信任据官网免去代理证书配置
改写 / 重放 / Mock强(桌面成熟)以官网说明为准
海量会话分析大屏,顺手手机屏,偏轻量
典型场景工位深度调试随手/无电脑排查

四、小结

给 iPhone 抓 HTTPS,本质是选"电脑代理"还是"手机直抓"。要深度调试、改包重放,用 Fiddler;要省配置、无电脑、图快,用抓包大师。 两者不冲突,很多人会按场景切换。至于证书绑定这类硬骨头,代理法通常无解,需要更专门的抓包方案。抓包大师的详细能力见 sniffmaster.net