第二十六:Fiddler抓包-抓取Android7.0以上的Https包(一)

一.简介

1.假如设备是android 7.0+的系统同时应用设targetSdkVersion >= 24的话
那么应用默认是不信任安装的Fiddler用户证书的
所以你就没法抓到应用发起的https请求
然后你在Fiddler就会看到一堆200 HTTP Tunnel to xxx.xxx.xxx:443的请求日志
这些都是没有成功抓取的https请求

二.下面重点介绍一下各种解决方案

1.在抓包测试中相信很多人都遇到过Android高版本(Android7.0以上)系统无法抓包的问题

1.1.由于在测试过程中对分析定位问题很不方便
1.1.1.所以就想找开发的同学帮忙,结果开发也说搞不定,那只能自己解决

2.现象:Android6.0及以下系统手机可以抓取https包,
2.1.Android7.0及以上系统手机不能抓取https包(安装https证书也不行)
3.原因
3.1.Android7.0+ 的版本新增证书验证(系统证书)
3.1.1.所以app内不再像原来一样默认信任用户的证书

3.2.谷歌在安卓7.0修改安全策略,安卓系统大于7.03.2.1.应用不在信任用户安装的证书文件
3.2.2.用户添加的CA证书不能再用于安全连接,对于https传输的数据就抓取不到


3.3.Android 7.0+的版本不能抓包,由Android更新了网络的安全性配置api >24
3.3.1.默认不信任用户导入的CA证书,所以需要配置文件,来信任用户导入的证书
3.4.官方说明:https://developer.android.google.cn/training/articles/security-config.html
By default, secure connections (using protocols like TLS and HTTPS) 
from all apps trust the pre-installed system CAs, and apps targeting 
Android 6.0 (API level 23) and lower also trust the user-added CA 
store by default.
3.5.果然在Android6.0 (API level 23)及以前
3.5.1.APP默认信任系统自带的CA证书以及用3于导入的CA证书

3.5.2.Android6.0 (API level 23)以后
3.5.3.APP默认只信任系统自带的CA证书,对于用户导入的不予理会

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平头哥-测试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值