使用 Fiddler 抓包 APP 请求

使用 Fiddler 对简单的 APP 进行抓包,并处理 APP 启用了 SSL Pinning 的特殊情况

Fiddler

Fiddler是一个Web调试代理工具。可以记录计算机和Internet 之间的所有 HTTP(S) 通信。检查流量,设置断点,并操作请求和响应。

准备

  1. 使手机和电脑处在同一网络环境
  2. 打开 Fiddler → Tools → Options → HTTPS → 勾选 Captute HTTPS CONNECTs
  3. 打开 Fiddler → Tools → Connections → 记录下 Fiddler listens on port → 勾选 Allow remote computers to connect
  4. 在手机上访问由 电脑IP:Fiddler listens on port 的值 所组成的站点 → 点击 FiddlerRoot certificate 下载 Fiddler 根证书
  5. 将下载的根证书安装到受信任的区域
  6. 将手机网络的代理设置为刚才访问的地址
  7. 在手机上打开 APP 进行操作 → 在 Fiddler 查看对应的请求

抓包启用了 SSL Pinning 的 APP

经过上面的设置已经可以对普通的 APP 进行抓包,但如果 APP 对请求设置了 SSL Pinning,这时 Fiddler 抓到的就会是 Method 显示 CONNECT,Host 显示 Tunnel to 的请求。

对于这一情况有以下解决方法:

  1. 使用低于 Android7.0 的版本
  2. 使用 Xposed 框架和 JustTrustMe 模块
  3. 使用 VirtualXposed 将 APP 安装到 VirtualXposed 中