使用charles抓取iOS数据包


由于分析竞手的项目涉及到iOS端的请求抓包,翻阅并验证了一下,以下是整理的大致抓包流程。

工具软件: charles 3.11.5版本

  1. 安装mac端证书
    • Help->SSL Proxy->Install Charles Root Certificate.
  2. 开启代理设置
    • Proxy->Proxy Setting…->Proxies
    • HTTP Proxy 可以默认一个端口如8888,并勾选Enable transparent HTTP proxying
    • Socks Proxy可以Enable,并且Enable HTTP proxying over SOCKS,设置端口如80,443等
  3. 开启SSL代理(支持HTTPS抓包)
    • Proxy->SSL Proxying Setting,选中Enable SSL Proxying
    • 在Locations里面添加*:443,表示匹配所有的HTTPS网站
  4. 给iPhone安装证书
    • Help->SSL Proxy->Install Charles Root Certificate On a Mobile Device or remote Browers…
    • 根据弹出的提示框进行操作,也就是用iPhone的Safari打开地址http://charlesproxy.com/getssl 下载安装。
    • iOS11以上系统需要在设置 > 关于本机 > 证书信任设置,信任该证书。
  5. 手机连接wifi(同电脑一个局域网或者直接连电脑的热点),配置HTTP代理,选择’手动’,输入电脑的ip地址和端口号(默认8888)