cherles抓包,安卓,http/https

前置条件:charles抓取手机数据包的前提,手机和电脑需要在一个局域网内。

1、charles官网下载地址

Download a Free Trial of Charles • Charles Web Debugging Proxy

下载以后按提示安装即可。

2、charles的配置

在charles中【proxy->proxy Settings】设置进行代理的端口

3、手机安装charles证书

先在PC-charles【Help->SSL Proxying】点击install charles root certificate on a mobile device or remote browser,查看手机端如何与charles相连

弹框提示内容里写了怎么在手机上使用charles代理,接下来我们就按照步骤来操作

4、手机配置代理

在手机端进入wifi设置,长按当前连接的网络,选择修改网络-显示高级选项-设置代理为手动

打开高级选项,选择手动

服务器主机名填入charles上弹出的地址,我这个是172.16.47.7,服务器端口8888.

手机连上charles以后,charles会弹出一个提示,询问是否允许设备连接,一定要同意。

如果不小心点了deny,可以重启charles重新设置手机与之连接。

手机上未安装charles证书,手机网络会显示已连接不可用。

5、手机下载并安装charles证书

使用手机浏览器访问**http://chls.pro/ssl**,按提示下载证书

进入浏览器的下载管理可以看到这个证书

如图即我们刚刚下载完成的证书

直接点击,却提示"无法打开文件",怎么办?

我们选中下载好的文件,点击更多-任务详情,去文件管理中找到ta

长按选中文件,点击更多-重命名

将.pem的后缀改为.crt后确定,根据提示再次确定

这时再次单击我们重命名的文件,按提示给证书取个名字,安装成功。

如果此时手机还显示无法连接网络,可以重连一下wifi。

6、charles配置抓包https协议

前面做了那么多配置,发现有些包,如https协议的还是抓不到,别急,还得再来个配置

在charles的【Proxy->SSL Proxying Settings】下进行如下配置

到此为止,手机就能使用charles代理啦

7、可能遇到的问题问题

1、有些手机是能用.pem格式的文件直接安装的,如果不能就像文中描述的,重命名为.crt,如果不行也可以换成.cer试试

2、还有部分手机如红米,用自带的浏览器下载的证书不能用,可以尝试下载个【夸克】浏览器,下载后直接安装成功

3、部分应用为了安全起见是不允许非system来进行抓包的,如果是自家app,建议跟开发同学问下,将普通用户模式(user)也加到配置文件中,然后就可以抓包啦......

4、三星设备,用浏览器下载完证书后,不能直接安装,以三星padSM跳00为例,打开【设置】-【生物识别和安全性】-【其他安全设置】-【从设备存储空间安装】-【CA证书】,选择【仍要安装】,找到刚刚下载好的.pem证书,点击【完成】,提示【已安装证书】,说明证书安装成功

5、Android 7版本及以上的系统,不再信任用户级的证书,只信任系统级的证书。如果您需要录制App的HTTPS请求,需要App开启网络安全配置,让App信任用户级的证书。详情见fiddler 抓取https数据出现403问题_fiddler 403-CSDN博客

6、已安装了charles证书,但是https的包还是抓不到,可以去查看证书是否已经过期

以ios为例:设置-通用-VPN与设备管理页面,查看配置描述文件,若有红色,可点击查看详情是否已过期

解决办法:打开charles,Help->SSL Proxying点击Reset Charles Root Certificate...,然后重新在客户端安装证书即可

相关推荐
xinxinhenmeihao24 分钟前
爬虫如何使用代理IP才能不被封号?有什么解决方案?
爬虫·网络协议·tcp/ip
Moonquake_www2 小时前
WSL2设置桥接网络至主机IP
网络·网络协议·tcp/ip
苏小瀚3 小时前
[JavaSE] 网络原理(HTTP_HTTPS)
网络·tcp/ip·http
HIT_Weston3 小时前
51、【Ubuntu】【Gitlab】拉出内网 Web 服务:http.server 单/多线程分析(三)
ubuntu·http·gitlab
杜大哥3 小时前
电脑:如何解决电脑网络IP地址冲突?
网络协议·tcp/ip·电脑
cui_win3 小时前
HTTP协议:常见状态码(400/500 系列)
网络·网络协议·http
北京耐用通信5 小时前
工业通信升级利器:耐达讯自动化Ethernet/IP转CC-Link网关让IO模块兼容无忧!
网络·人工智能·科技·物联网·网络协议·自动化·信息与通信
刘孬孬沉迷学习5 小时前
SCTP、GTP-U 和 WebSocket 协议比较
网络·websocket·网络协议
zt1985q5 小时前
本地部署开源运维工具 MyIP 并实现外部访问
运维·服务器·网络协议·开源
Evan芙5 小时前
IPC与RPC通信实现方式
网络·网络协议·rpc