写在前面
本文以windows + ios + charles为例,简单说明抓包的原理,配置步骤以及遇到的坑。
目录
一、场景描述
测试人员在jira上给我指派了一个bug,说是前端uniapp会员展示页的数据不正确。前端是个小程序、https加密,无法像h5一样可以直接复制出来链接地址。由于是临时去看这个bug,我没有开发者账号,无法直接使用微信开发者工具调试。那么接下来要解决的问题就是如何才能拿到会员页具体请求的url?
解决办法,无外乎2种:
1、直接找前端问(简单快捷,但麻烦别人,再遇到问题还得找
)
2、使用工具抓包(自己动手,丰衣足食,一劳永逸
)
抓包工具,网上有很多,配置教程也很多(良莠不齐),这里我归纳整理了一下,以charles为例进行说明。
二、具体步骤
先简单说一下原理,让首次接触抓包工具的同学有个整体的概念。
1、下载并安装charles抓包工具,开启代理端口,作为一个代理服务器。
2、手机连接wifi(同windows一个wifi)
,给手机的wifi配置代理,服务器和端口号为charles代理服务器
这样,所有手机端的请求(包括手机登录小程序进入相应页面)都会经过charles代理,也就能抓到包。
1.环境说明
名称 | 说明 |
---|---|
windows版本 | win10/x64 |
charles版本 | v4.6.4 |
ios版本 | 15.4 |
2.下载charles安装
进入charles官网下载页面,选择最新版windows x86_64(msi),下载安装即可。
软件默认是免费试用,可进入在线破解进行破解。
3.charles开启代理
proxy-》proxy settings…,填写端口号:8888
4.手机端设置代理
4.1windows端操作
进入cmd窗口,输入ipconfig,找到wlan的ip地址:10.100.8.239
4.2手机端操作
设置-》无线局域网-》点击和windows连接相同的网络(zhht-office)-》配置代理-》手动-》填写服务器(电脑wlan的ip地址:10.100.8.239)、端口(charles上配置的端口:8888)
此时,http类的请求就可以在charles上抓到,但是https类型的,地址是unknown,因为https是加密传输。
查看overview,可以看到notes: ssl proxying not enabled,那接下来,我们就去开启ssl proxy。
5.配置ssl
5.1charles安装ssl证书
help-》ssl proxying-》install charles root certificate
点击安装证书(笔者这里已经安装charles proxy ca)
选择存储位置-》当前用户
将所有证书都放入下列存储-》受信任的根证书颁发机构-》完成

5.2charles配置ssl proxy
勾选enable ssl proxying,在location中add location,host为*,port为*
注意:这里笔者刚开始添加了443端口(https默认端口号),但是,不好使(可能是网站更换端口号),将port换成了*,可以正常访问
5.3手机端安装ssl证书
根据提示,用浏览器访问chls.pro/ssl,下载证书,允许访问
通用-》vpn与设备管理-》选中charles proxy ca-》安装

通用-》关于本机-》证书信任设置-》启用
再次访问,至此,就可以愉快地玩耍了。具体软件里面的功能,大家可以自行探索。
三、参考资料
十分钟学会charles抓包
mac下抓包工具charles使用
写在后面
如果本文内容对您有价值或者有启发的话,欢迎点赞、关注、评论和转发。您的反馈和陪伴将促进我们共同进步和成长。
发表评论