使用Fiddler调试android和ios手机中https内容全部是tunnel to或空白
浏览(1605)默认分类使用Fiddler调试android和ios手机中https内容全部是tunnel to或空白
概览
注意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然后把证书安装成系统证书就可以啦,具体方法可以自行查下
简易代理拦截软件
问题描述
使用fiddler时加密的https是需要证书的所以抓包时老是遇到一些问题,比如好不容易把找不到证书的错误解决后又遇到啦全都是tunnel to的情况,这种情况是因为证书文件不对。
还有一种情况是https的连接根据就不显示。fiddler代理https时是自己建啦一个https的本地服务器代理,当请求https连接时会先传到本地的https服务器然后由本地的服务器发送给目标服务器。
如果列表中连tunnel to这些提示都没有的话可以查看下如下设置是不是打勾啦,如果打勾就是隐藏啦tunnel to的显示,去掉这个勾看看是不是有很多tunnel to的提示但是确没有正确的页面,这时原因就找到啦。是因为证书不正确
环境说明
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不能直接安装下载成功后找到文件所在路径,点击安装提示 无法安装该证书,因为无法读取证书文件
这个时候需要到系统设置里面找到系统安全->从存储设备安装
,然后找到证书所在位置用小米手机的话默认浏览器的下载位置为sd卡的download目录下面,有刚刚下载的fiddlerroot.cer证书文件,选择安装即可。
注意:
另外如果选择安装后有个提示让你输入证书存储密码的时候,是因为你没有设置锁屏密码,先到设置里设置一个锁屏密码然后再安装就可以啦
找到要抓的包后点击查看,特别注意下下面的地方,点击后才会显示解密后的内容,我第一次使用的时候没有注意下面一直都是空白,以为用不了呢