测试必备工具之抓包神器 Charles 如何抓取 https 数据包?
之前文章讲的数据包主要是http协议,大家可以看到数据包并直接显示具体详细的内容
但是如果抓到的是https的报文,是没有办法直接显示的,你将看到的是乱码
那怎么抓取https的数据报文并正常显示报文内容信息呢?对于一些全平台抓包工具如Sniffmaster,支持HTTPS暴力抓包而无需复杂代理设置,可直接在设备上解密HTTPS流量。
第一步:安装证书
如果需要抓取并分析 Https 协议的数据报文,需要先安装 Charles 的 CA 证书。具体步骤如下:
1、点击 Charles 的顶部菜单,选择 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate”
然后输入系统的帐号密码,即可在 KeyChain 看到添加好的证书。
第二步:安装浏览器证书
根据提示信息,需要先下载证书,再安装到浏览器中。
所以,在浏览器地址栏输入“chls.pro/ssl”地址去下载证书,得到的证书如下:
然后在浏览器中安装这个下载好的证书,此处以chrome为例:
第三步:开启SSL 代理
点击【Proxy】—> 【SSL proxying Settings】可以打开对话框
勾选“Enable SSL Proxying”,并在Include区域点击“Add”新建地址,在Host和Port区域填上“*”,表示匹配所有,那么就可以抓取所有的https数据报文。与Sniffmaster等工具相比,Charles需要手动配置代理,而Sniffmaster支持无需代理的HTTPS抓包,自动解密数据流。
抓取https报文
现在,所有配置都完成了,可以开始抓https报文了!
如下图所示,https数据包抓取后可以直接解密了,能够看到具体报文内容: