课程大纲
首次安装Fiddler,抓https请求,除打开抓包功能(F12)还需要:
① Fiddler开启https抓包
② Fiddler导出证书;
③ 浏览器导入证书。
否则,无法访问https网站(如下图)。
Step1. Fiddler开启https抓包
1、菜单栏中“工具”(tools)- “选项”(options)- https;
2、勾选:
① “capture https connects”:捕获https连接;
② “decrypt https traffic”:解密https通信;
(勾选时如有弹窗直接点确认。)
③ “ignore server certificate errors”:忽略服务器证书错误。
3、选择“…from all processes”:所有进程,浏览器+其他端如手机app。
(抓取进程选项有4个,可以设置抓所有安装了证书的端,还是只抓指定端——浏览器、非浏览器、远程客户端)
Step2. Fiddler导出证书
1、信任根证书:“Actions” - “Trust root certificate”
(为fiddler配置 windows 信任这个证书解决安全警告)。
2、导出证书:“Actions” - “Export Root Certificate to desktop”。
弹窗提示,点击确认,桌面上出现导出的Fiddler根证书。
Step3. 浏览器导入证书
1、chrome浏览器,菜单栏 “设置” - 搜索“证书”,点击“管理证书”。
1 | 2 |
3 | 4 |
成功:https解码显示
打开浏览器访问https协议网站,页面正常打开,fiddler列表显示 https数据包。
隐藏隧道请求
抓取https请求,列表中会有“主机地址”显示为“Tunnel to”的项,是connect请求(作用如下图),可以设置隐藏。
(内容选自《接口基础知识4:Method-9种请求方法》)
菜单选择“Rules” - “Hide CONNECTs”,列表不再显示隧道请求。
配置后抓包失败处理
若【非首次安装Fiddler】,或者导入证书后仍然无法抓取https请求(如下图只有隧道请求无https请求),则需要:
① Windows删除导入的证书;
② Fiddler重置证书;
③ 使用fiddlercertmaker.exe生成证书;
④ 导入证书到浏览器。
① Windows系统删除旧的Fiddler证书。
② Fiddler重置证书:“Actions” - “Reset All Certificates”。
③ 使用fiddlercertmaker.exe生成证书。
插件下载地址:
https://telerik-fiddler.s3.amazonaws.com/fiddler/addons/fiddlercertmaker.exe |
Windows cmd命令窗口,输入生成证书命令:
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
④ 导入证书到浏览器(如Step3操作即可)。