对于想抓取HTTPS的测试初学者来说,常用的工具就是fiddler。可是在初学时,大家对于fiddler如何抓取HTTPS真是伤了脑筋,可能你一步步按着网上的帖子成功了,那当然是极好的。
有可能没有成功,这时候你就很抓狂了,我把一些我的安装经验和网络上的教程进行了整合(其中注意事项及10、11步骤)。
下面为大家演示如何用fiddler抓取HTTPS的详细教程。如若失败,请先仔细检查,避免错过细节!可重新重试!
已安装fiddler用户:
1. 清除C:UsersAdministratorAppDataRoamingMicrosoftCryptoRSA 目录下所有文件(首次安装fiddler请忽略)
2. 清除电脑上的根证书,WIN+R快捷键,输入:certmgr.msc, 然后回车,查找所有fiddler证书,然后删除。(首次安装fiddler请忽略)
3. 清除浏览器上的证书文件 ,此处需要仔细查找带有FiddlerRoot的字样,并删除,以谷歌浏览器为例说明,在浏览器上输入: chrome://settings/,(首次安装fiddler请忽略)
4. 打开fiddler,点击工具栏中的Tools—>Options,点击Actions,选择最后一项,Reset All certificates,然后关闭
注意:以上步骤假设是已经安装fiddler的情况下需要做的处理 ,若已安装,建议执行上述步骤,然后进行重新安装;
首次安装fiddler用户及完成上述步骤已安装用户:
请先退出杀毒软件!!!
①下载最新版fiddler ,强烈建议在官网下载:https://www.telerik.com/download/fiddler
②正常傻瓜式安装,下一步,下一步,安装完毕后,先不用急于打开软件。
③下载并安装Fiddler证书生成器:http://www.telerik.com/docs/default-source/fiddler/addons/fiddlercertmaker.exe?sfvrsn=2
④打开Fiddler,点击工具栏中的Tools—>Options
5. 点击https设置选项,勾选选择项
6. 点击Actions,点击第二项:Export Root Certificate to Desktop,这时候桌面上会出现证书FiddlerRoot.cer文件,点击OK设置成功,关闭fiddler
7. PC端,在浏览器中导入证书FiddlerRoot.cer,以谷歌浏览器为例说明,在浏览器上输入: chrome://settings/ 然后进入高级设置,点击管理证书
8.在受信任的根证书颁发机构,对证书进行导入
9. 重新打开fiddler,就可以在电脑上进行https抓包了。如果不成功请看11步骤。
10. 如果抓取的包都是错误的,需要注意把下面这几个反勾选掉。Autoresponder—enable rules
11.配置浏览器
-
firefox安全链接提示
出现这个「您的连接并不安全」那么很多的使用者说可以通过配置Firefox浏览器配置即可,但是根据测试发现这个方法行不通!
-
通过配置Firefox浏览器
-
进入firefox配置
-
可以通过在firefox浏览器地址栏中输入 「about:config」进入
修改配置项
-
在搜索栏输入「security.enterprise_roots.enabled」找到对应的配置项
通过双击或右键选择菜单项「切换」即可将 「值」对应的字段值设置为 「true 」
· 再次访问网络以验证是否可行
咦!还是不行哦!不过通过以上配置这次访问网络时它比没有配置之前多了一个提示!看到没有?
「此网站采用了 HTTP 严格传输安全(HSTS)机制,要求 Firefox 只能与其建立安全连接。正因如此,您也不能将此证书加入例外列表。」
也就是说当前访问的站点是使用 「HTTP严格传输安全协议」也就是「https传输协议」, 那既然是这样, 当访问 「http传输协议」的站点也就没有问题喽!
对就是这样, 那不防找一个「http传输协议」的站点试试!
可以看到当访问 「菜鸟教程」这个站点时一点问题没有!
那既然访问传输协议为 「https」的站点时会有这样的提示:此网站采用了 HTTP 严格传输安全(HSTS)机制,要求 Firefox 只能与其建立安全连接。正因如此,您也不能将此证书加入例外列表。
那访问时就必须通过这个协议进行访问,并且firefox也不允许添加站点例外的方式进行访问, 那问题的关键就在于「fiddler」这个代理在访问以 「https传输协议」的站点时不被信任。
那么想办法让 「Firefox」浏览器在访问以传输协议为 「https」被信任这个问题也就可以彻底解决啦!(先打开fiddler,浏览器才能访问网络!)
注意事项:
1. 浏览器、fiddler配置好需要重新启动,先启动fiddler,再启动浏览器;
2. 在配置浏览器代理及端口时注意勾选“为所有协议使用相同代理服务器(s)”。