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...,然后重新在客户端安装证书即可

相关推荐
xxtzaaa4 分钟前
手游端游IP被限制无法多开如何解决
网络协议·tcp/ip·智能路由器
听风吟丶1 小时前
Java 11+ HttpClient 实战:从 HttpURLConnection 到现代 HTTP 客户端的全面升级
java·开发语言·http
小草cys1 小时前
【解决】华为欧拉系统上遇到能 ping 通 IP 地址(如 8.8.8.8)但无法 ping 通域名(如 www.baidu.com)的情况
网络·网络协议·tcp/ip
重启编程之路2 小时前
python 基础学习socket -UDP编程
python·网络协议·学习·udp
站长朋友2 小时前
解决SSL证书安装后网站仍显示“不安全”的问题
网络协议·安全·ssl·ssl证书安装不安全·锐安信ssltrus·ocsp响应速度·根证书链完整
踏浪无痕2 小时前
记一次被 K8s 网络 SNAT 坑惨的经历
网络协议·kubernetes
呜呜。5 小时前
WebSocket-学习调研
websocket·网络协议·学习
挠到秃头的涛某7 小时前
华为防火墙web配置SSL-在外人员访问内网资源
运维·网络·网络协议·tcp/ip·华为·ssl·防火墙
树在风中摇曳7 小时前
TCP连接还在吗?主机拔掉网线后再插上,连接会断开吗?
arm开发·网络协议·tcp/ip
せいしゅん青春之我8 小时前
【JavaEE初阶】IP协议-IP地址不够用了咋办?
java·服务器·网络·网络协议·tcp/ip·java-ee