品牌型号:联想ThinkPad X1
系统:Windows10家庭版
软件版本: Fiddler 4
在用Fiddler抓HTTPS请求的时候,相信有不少用户都遇到过明明Fiddler已经抓到了请求链接了,可是查看链接详情却是一堆加密的内容,根本读不懂。这其实是因为很多人没有正确设置HTTPS解密,Fiddler是没有办法把加密的内容转化成明文的。遇到这类问题也很正常,但对于刚开始使用Fiddler的人来说,可能不知道在哪里开启解密功能,也不清楚证书该怎么弄,而且就算开启了HTTPS解密,可是抓到的内容还是乱码。接下来我将给大家讲解Fiddler如何设置HTTPS解密,Fiddler抓到的HTTPS请求显示乱码怎么办的相关内容。
一、Fiddler如何设置HTTPS解密
HTTP和HTTPS是不一样的,HTTP的内容是明文传输,所以Fiddler抓包后我们是可以直接看到里面的内容。HTTPS为了安全会对传输的内容进行加密。现在大家应该明白了为什么Fiddler需要设置HTTPS解密了。
1、我们打开Fiddler软件,在菜单栏中找到Tools选项,并选择Options选项打开Options设置窗口,在Options中找到HTTPS选项卡。

2、在HTTPS选项卡界面,因为Fiddler默认是不会去抓取HTTPS请求的,我们要先开启Capture Https CONNECTs这个选项,让Fiddler能捕获HTTPS请求,接着选择Decrypt HTTPS traffic,这个开启后Fiddler就能够解密HTTPS请求了。注意要安装Fiddler生成的根证书,我们可以点击Actions选项中的Trust Root Certificate确保操作系统和浏览器信任这个证书。

3、我们这时候打开浏览器随机访问一个链接,会看到请求列表中捕获到了HTTPS请求,并且在请求的WebForm中可以查看到我们发送的请求信息,这就说明我们成功设置了HTTPS解密。

二、Fiddler抓到的HTTPS请求显示乱码怎么办
如果已经开启了HTTPS解密,点开HTTPS请求发现还是显示乱码,这可能是因为服务器返回的数据经过了一层压缩或者是编码方式跟Fiddler解码方式不匹配导致的。
1、我们可以在Fiddler菜单栏的Rules下找到Automatically Decompress Response并选中,这样可以避免服务器返回压缩的内容。

2、上文也说到过,可能是因为编码方式和Fiddler的解码方式不匹配导致的乱码。我们可以修改注册表来调整Fiddler的编码设置,使用Win+R组合键打开“运行”窗口,输入regedit打开注册表,找到HKEY_CURRENT_USER\Software\Microsoft\Fiddler2并创建一个字符串HeaderEncoding,将值设置为GBK或者UTF-8然后重启Fiddler就可以了。

3、对于HTTPS请求出现乱码,我们还需要确保Fiddler是否正确安装了证书,因为证书如果不安装,客户端会认为这个临时证书是伪造的拒绝建立连接,只有信任证书后Fiddler才能合法的参与到加密通信中来。
以上就是Fiddler如何设置HTTPS解密,Fiddler抓到的HTTPS请求显示乱码怎么办的全部内容了。Fiddler默认是不捕获HTTPS的,我们需要手动去开启HTTPS流量,并且在开启过程中对HTTPS解密,开启的同时不要忘记安装信任证书,如果Fiddler抓到的请求显示乱码,可能是Fiddler编码方式的问题,可以在注册表中调整Fiddler编码方式,也可能是因为响应数据被自动压缩了,可以在Fiddler的菜单栏Rules中找到Automatically Decompress Response选项禁用自动压缩。