使用Fiddler调试android和ios手机中https内容全部是tunnel to或空白

来源:赵克立博客 分类: 网络安全 标签:fiddler发布时间:2017-01-18 17:34:47最后更新:2018-12-23 11:42:32浏览:2045
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
温馨提示:
技术类文章有它的时效性,请留意文章更新时间以及软件的版本
更新时间:
2018-12-23 11:42:32

概览

 
 
 

注意android7.0以上版本,系统即便安装了证书,应用本身是可以选择信任,也可以选择不信任。主动权从系统移到的各个应用本身,也就是说如果应用不信任你安装的证书,也是抓不了包的

详细看这里 https://developer.android.com/training/articles/security-config.html

Android7.0 之后默认不信任用户添加到系统的CA证书:

To provide a more consistent and more secure experience across the Android ecosystem, beginning with Android Nougat, compatible devices trust only the standardized system CAs maintained in AOSP.(文档链接

解决方法

如果是调试自己的app则可以在app的配置文件里设置信任,如果调试的是第三方app则需要手机root然后把证书安装成系统证书就可以啦,具体方法可以自行查下

简易代理拦截软件

HttpProxy拦截保存下载

问题描述

使用fiddler时加密的https是需要证书的所以抓包时老是遇到一些问题,比如好不容易把找不到证书的错误解决后又遇到啦全都是tunnel to的情况,这种情况是因为证书文件不对。

还有一种情况是https的连接根据就不显示。fiddler代理https时是自己建啦一个https的本地服务器代理,当请求https连接时会先传到本地的https服务器然后由本地的服务器发送给目标服务器。

如果列表中连tunnel to这些提示都没有的话可以查看下如下设置是不是打勾啦,如果打勾就是隐藏啦tunnel to的显示,去掉这个勾看看是不是有很多tunnel to的提示但是确没有正确的页面,这时原因就找到啦。是因为证书不正确

image.png

 

环境说明

win7 64   , 

fiddler v4.6.20172.31233

使用fillder代理调试手机端的https页面,的时候在系统浏览器中打开https页面会出现一个不安全的证书的提示点继续后才能正常浏览,并且在微信中打开https页面直接就是一个空白的页面,出现这种情况是因为没有安装fiddler的证书(在手机端的证书)

首先需要下载一个证书插件certmarker  

CertMaker for iOS and Android 下载地址

https://www.telerik.com/fiddler/add-ons

http://www.telerik.com/docs/default-source/fiddler/addons/fiddlercertmaker.exe?sfvrsn=2

下载安装成功

手机端配置

在手机端打开代理地址页面,比如http://192.168.1.2:8888  在页面里面最后有一行有个下载链接选择直接下载就可以,注意下保存的路径在哪,在有的手机上下载完成后可以直接安装,但是有的就不行,我用的是小米note不能直接安装下载成功后找到文件所在路径,点击安装提示 无法安装该证书,因为无法读取证书文件

这个时候需要到系统设置里面找到系统安全->从存储设备安装

blob.png

,然后找到证书所在位置用小米手机的话默认浏览器的下载位置为sd卡的download目录下面,有刚刚下载的fiddlerroot.cer证书文件,选择安装即可。

注意:

另外如果选择安装后有个提示让你输入证书存储密码的时候,是因为你没有设置锁屏密码,先到设置里设置一个锁屏密码然后再安装就可以啦

 

找到要抓的包后点击查看,特别注意下下面的地方,点击后才会显示解密后的内容,我第一次使用的时候没有注意下面一直都是空白,以为用不了呢

image.png