使用普通的抓包工具比如 tcpdump 无法抓取到加密过的 HTTPS 协议的数据包。但是 Charles 经过配置,可以抓取并分析 HTTPS 协议的数据包,下面的内容将会具体讲述 Charles 如何配置以及如何抓取 HTTP、HTTPS 数据包。
环境安装
需要安装 Charles,参考章节常用代理工具中的 Charles 部分。
配置过程
-
配置代理,Charles 可以抓取移动端上的数据,需要计算机和移动端在同一网段(同一 wifi)。打开 Proxy->Proxy Settings,填入代理端口 8888,勾上 Enable transparent HTTP proxying(在如果想要抓取到 https 的数据包,还需要进行后面的操作):
-
获取证书:在浏览器访问“chls.pro/ssl” 下载证书,并在 Proxy->SSL Proxying Settings->SSL Proxying,在 Include 中点击 Add,并在 host 处填写*,同时点击 Enable SSL Proxying。然后选择 OK:
-
浏览器安装证书:点击下载好的证书,直接安装。
-
信任证书:打开证书(Mac 系统为钥匙串访问)->点击证书->双击名称含有 charles 的选项->点击信任->选择始终信任。若 windows 系统证书信任配置,可参考下