Charles抓包教程

1、电脑安装charles

2、电脑打开charles后安装root证书

3、电脑信任证书

4、手机连接与电脑同一wifi

5、设置手机代理

wlan设置中将当前 wifi 的代理改成手动,主机名填电脑 ip,端口填8888

此时如果当前手机是第一次被你的电脑设备代理或者更换了wifi环境,那charles中没有记录手机的ip,此时charles会有一个弹窗,提示要不要允许,点击允许

6、手机下载charles证书

随后打开 uc 浏览器,搜索 chls.pro/ssl,会开始 chares 证书的下载,这里有个坑,如果你的手机设备是一次与当前电脑连接或者更换了 wifi 环境,但是刚才并没有请求allow的弹窗,这里是不会开始下载证书的,需要手动把当前手机设备的局域网 ip 添加到电脑 charles 中

Charles使用教程【简易版】_搜索

输入完ip记得敲下回车临时保存一下,否则即使点击了「OK」,这个ip信息也不会被保存到设置中。生成一个有效的行记录后点击OK按钮,

随后再次到uc浏览器中搜索 chls.pro/ssl,证书将会自动开始下载。

如果还是无法安装证书,尝试在chls.pro/ssl前添加前缀 http://, 浏览器完全输入 http://chls.pro/ssl 会弹窗开始下载证书

7、手机配置安装证书

wlan中的高级设置,点击安装证书,去UCDownloads目录下找到刚才下载的证书,点击证书后重命证书,这样证书就安装好了,有可能会要输入密码或者指纹验证,验证就好。

抓不到包排查

1、需要关闭手机和电脑的 vpn,否则会走 vpn 代理,而不是 charles

2、确认电脑的 charles 证书处于生效状态,检查 charles 证书是否生效的步骤:mac 确认 charles 证书是否生效

3、红米/小米手机还需要在安全选项中配置 CA 证书,否则会提示 You may need to configure your browser or application to trust the Charles Root Certificate. See SSL Proxying in the Help menu.

在手机设置中依次点击,安全->更多安全设置->更多安全设置->加密与凭据->安装证书->CA 证书,安装前会提示是否仍然安装,选择「仍然安装」,指纹或者密码验证身份,随后选择刚才下载的 charles 证书,至此 charles 证书就成为了手机的一个 CA 证书,就可以被代理抓包了。

(下面是我碰到问题后,不知道怎么解决,对 new bing 的提问,它成功给我了可行的解决方案,AI 还是很厉害的哇,最近找了很多工具,都没版本把 json 转换成 thrift idl 结构,但是使用 chatgpt4 可以实现,太牛逼了,大大节约了写 idl 文件的时间)

Charles使用教程【简易版】_抓包_02