这个问题是昨天下午就一直存在的,知道今天上午才解决,很感谢“韬光养晦”。
问题描述:
按照网络上的教程,设置fiddler开启解密https的选项,同时fiddler的证书也是安装到系统中,但是抓取https的时候总是出现“Tunnel to……443”,如图所示:
解决办法:
如果你遇到上面的问题,就可能是证书的问题(我的本地证书是用系统生成证书的一个软件生成的个人证书,所以出现了问题),操作步骤如下:
(1)将之前的证书删除
打开系统证书管理器(运行=》certmgr.msc=》回车),然后出现管理器,将你之前生成的证书删除即可。
(2)用一个叫”FiddlerCertMaker.exe“的工具重新打了一个证书。你可以点击这里下载。(下载成功之后,直接双击运行即可)
(3)重新打开fiddler,使用chrome/ie输入”https://www.baidu.com/“,这回可以捕获https的消息并解密成功了。
(4)使用iOS远程连接fiddler的代理地址,在线安装证书成功后,使用原生浏览器访问“https://www.baidu.com/”,fiddler成功抓取到https的数据。
其他注意事项说明
(1)chrome和ie使用的是系统代理,而火狐使用的是独立的一套代理系统,所以不管fiddler的开关”capturing“是否打开,都捕获不了火狐浏览器的请求。需要我们将火狐浏览器的代理设置设置为系统代理或者配置为”手工配置代理“
(2)火狐浏览器使用的证书管理也是独立的一套系统,而chrome和ie使用的是系统的证书代理,所以我们如果想要使用fiddler抓取火狐浏览器的https的数据包,则需要将fiddler的根证书导出到桌面,然后再导入到firefox的证书中。而我们使用chrome和ie的时候是不需要将证书导入导出的,因为fiddler的证书就安装在系统的证书管理中。
(3)如果在使用fiddler的过程中证书出现问题,可以尝试使用”FiddlerCertMaker.exe“重新打一下证书
(4)如果在使用安卓或者ios等出现https抓取不到数据的问题,如果在本机上安装”FiddlerCertMaker.exe”都不行,就尝试一下fiddler的另外一个插件“CertMaker for iOS and Android ”这个插件可以在官方网站上进行下载。具体我也没有使用过。先记录下思路。
Fiddler问题: creation of the root certificate was not successful
答案:打开cmd执行命令。
d: cd D:softFiddler2 makecert.exe -r -ss my -n "CN=DO_NOT_TRUST_FiddlerRoot, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com" -sky signature -eku 1.3.6.1.5.5.7.3.1 -h 1 -cy authority -a sha1 -m 120 -b 09/05/2012
参考
参考1(fiddlercertmaker):https://zhidao.baidu.com/question/812943351241203612.html?skiptype=2
参考2(CertMaker for iOS and Android 案列):http://gaoboy.com/article/26.html
from:https://blog.csdn.net/chjqxxxx/article/details/53666175