用 Charles 进行手机抓包
1月 21, 2022
如果使用 Wireshark 解决手机抓包,需要把电脑设为热点,这样一般笔记本电脑不太方便,Charles 提供了系统代理的功能,可以使用 Charles 更方便地进行手机抓包。另外 Charles 除了可以解析未加密的 HTTP,通过证书的配置也可以解析加密过的 HTTPS 和 HTTP/2,下面记录下配置方式。
首先通过【Install Charles Root Certificate】在本地安装并信任 Charles 证书,以解密本地流量的 HTTPS 数据。
在【Proxy -> Proxy Settings】里面配置 Charles 系统代理端口。

解析手机的流量数据的话,也需要在手机上安装证书。
在手机上的代理软件配置这个代理地址,手机上的流量就可以走到本地网络的电脑上了。
可以通过【Local IP Address】查看本地主机各网卡的 IP 地址。
在 iPhone 上配置代理。

打开上面图里的 chls.pro/ssl
地址,下载并安装证书。

在 iPhone 的【关于本机】里配置信任这个证书。

现在打开 iPhone 上的一个软件,在 Charles 上就可以看到所有的 HTTP、HTTPS 流量了,并可以通过左下角的 Filter
进行地址过滤。
