文章目录

  • 背景
  • Charles下载
  • 安装
  • 破解
  • 抓取https的包
  • 配置证书
  • 添加 SSL Proxying Settings
  • https抓包效果
  • 总结


背景

在有一些场景我们需要抓取一些网络数据包,本篇就是介绍mac上如何抓取http、https的数据包

Charles下载

mac抓取最上层的http、https的数据包比较好用的软件就是Charles官网

charles如何只赚取api charles怎么抓取https_https


这里点击下载后出现windows、mac、linux版本,根据自己的操作系统选用不同的版本,我这里是mac,就下载mac版本的

charles如何只赚取api charles怎么抓取https_macos_02

安装

charles如何只赚取api charles怎么抓取https_http_03


这里的协议安装这里选同意即可

这样就安装完成了

破解

我们直接打开软件

charles如何只赚取api charles怎么抓取https_macos_04


这里授予权限即可

打开后就可以看到一些httphttps的请求信息了

charles如何只赚取api charles怎么抓取https_https_05

抓取https的包

需要注意的是我们这种方式无法抓取到https的数据包

charles如何只赚取api charles怎么抓取https_http_06


可以看到这里的结果是unknown,我们需要配置证书

配置证书

charles如何只赚取api charles怎么抓取https_https_07


这里我们使用Charles生成一个根证书

然后生成证书后会自动给我们打开钥匙串

charles如何只赚取api charles怎么抓取https_https_08


在钥匙串里面可以看到我们的证书是不被信任的,所以我们需要设置该证书为信任

双击该证书进入证书页面,找到信任修改证书为信任

charles如何只赚取api charles怎么抓取https_https_09


修改完就是信任状态了

charles如何只赚取api charles怎么抓取https_http_10

添加 SSL Proxying Settings

charles如何只赚取api charles怎么抓取https_http_11

charles如何只赚取api charles怎么抓取https_macos_12


charles如何只赚取api charles怎么抓取https_macos_13


这里 host 填*,port填*或者443都行

charles如何只赚取api charles怎么抓取https_钥匙串_14

然后重启Charles

https抓包效果

charles如何只赚取api charles怎么抓取https_https_15


这里可以看到之前的unknown 不见了,是具体的报文信息了。

总结

总的来说配置还是比较建的,但是有点可惜的是Charles只能抓取http、https的包,无法抓到tcp的包,如果是要抓取tcp的包,推荐使用Wireshark,这里就不具体介绍了,感兴趣可以自己去研究