1、Charles 安装
下载安装 Charles:
官网:https://www.charlesproxy.com/download/
2、HTTP 抓包
2.1 查看电脑 IP 地址
Help → Local IP Address
查看本机地址。
得到电脑 IP 的地址,如图是192.168.1.169
。
2.2 设置手机 HTTP 代理
手机连上电脑,点击 设置->无线局域网->连接的 WiFi
,设置 HTTP 代理:
- 服务器为电脑 IP 地址:192.168.1.169
- 端口:8888
设置代理后,需要在电脑上打开 Charles 才能上网。
2.3 电脑上打开 Charles 进行 HTTP 抓包
手机上打开某个 App 或者浏览器什么的,如果不能上网,检查前面步骤是否正确。
首次连接,会弹出提示是否允许连接,点击Allow
允许,出现手机的 HTTP 请求列表。
3、 HTTPS 抓包
HTTPS 的抓包需要在 HTTP 抓包基础上再进行设置。
设置前抓包 HTTPS 是这样的:
设置后抓包 HTTPS 长这样:
在 HTTP 抓包基础上进行 HTTPS 抓包的进一步设置步骤如下:
3.1 安装 SSL 证书到手机设备
点击 Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device
。
出现弹窗得到地址 chls.pro/ssl
。
在手机 Safari
浏览器输入地址 chls.pro/ssl
,出现证书安装页面,点击安装。
手机有设置密码的输入手机解锁密码进行安装。
如果 Safari
浏览器输入这个网址 chls.pro/ssl
安装不了证书,需要确认:
- 设置好手机 HTTP 代理。
- 电脑上
Charles
要开着。
3.2 证书信任设置
iOS 10.3 系统及以上,需要在 设置 → 通用 → 关于本机 → 证书信任设置
里面启用完全信任 Charles
证书,打开信任证书开关。
3.3 Charles 设置 Proxy
Proxy -> SSL Proxying Settings...
勾选 Enable SSL Proxying
,点击 Add。
Host
设置要抓取的 https
接口,比如想抓这个:
- Host 填写:api.weibo.cn
- Port 填写:443
抓全部网站:
- Host 填写:*
- Port 填写:443
抓某个域名的网站:
- Host 填写:*.weibo.cn
- Port 填写:443
3.4 进行 HTTPS 抓包
让手机重新发送 https
请求,可看到抓包。
注意:不抓包请关闭手机 HTTP 代理,否则断开与电脑连接后会连不上网。
3.4 如果自己的抓包的接口显示加锁,unknown 怎么办
- 查看 mac 上是不是安装了青花瓷证书,证书是不是点击了信任。
- 是否将证书安装到了手机上,并且手机-通用-关于是否将证书信任。
- 查看青花瓷
Proxy -> SSL Proxying setting
是否增加了* 443。 - 根据上面抓 HTTPS 包的流程排查一遍。
4、解决某些 APP 无法抓包
app 无法抓包主要有两种情况:
- app 会检测设备是否设置了代理,如果设置了代理,app 不能正常使用。
- app 实现了
SSL Pinning
和Certificate Pinning
,导致Charles
开启SSL Proxying
后HTTPS
抓包报错。
4.1 检测代理,无法抓包
首先需要安装 VPN
应用, 比如 Shadowrocket
,需要使用海外区的苹果账号才能下载:
接下来设置自己的相关参数:
更改代理模式,然后开启代理开始抓包:
由于使用 VPN
转发数据包给Charles
,没有直接对设备网络设置代理,因此可以绕过 app 代理检测,最后抓包结果:
4.2 使用了 SSL Pinning
这种情况比较棘手。
如果你的 iPhone
没有越狱,那么无解。
如果你的 iPhone
设备已经越狱,直接去 Cydia
搜索安装SSL Kill Switch 2
插件。github 地址。
安装完毕后,打开 iOS
设置,下滑找到 SSL Kill Switch 2
,开启 Disable Certificate Validation
选项,然后使用Charles
抓包就不会报错了。
本文为原创文章,版权归字节时代所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ macOS下给Docker动态添加端口03/03
- ♥ plist 在 xml 和二进制两种格式之间相互转换04/15
- ♥ C++ 多态的实现原理04/05
- ♥ WCDB 简明使用指南07/30
- ♥ macOS 提升应用执行权限的方案04/05
- ♥ 使用宝塔安装 YOURLS 搭建短链接服务09/26