Fiddler工具 — 19.Fiddler抓包HTTPS请求(二)

5、查看证书是否安装成功

方式一:

点击Tools菜单 ---> Options... ---> HTTPS ---> Actions

选择第三项:Open Windows Certificate Manager打开Windows证书管理器。

打开Windows证书管理器,选择操作--->查看证书,在搜索框中输入Fiddler来查看证书。

查看结果:

然后可以选择一个证书,进行打开、删除、导出等操作。

方式二:

WIN+R打开电脑命令提示符,输入certmgr.msc并回车,打开Windows证书管理器。

之后步骤同上。

6、HTTPS选项界面说明

  • Fiddler can decrypt HITTPS sessions by re-signing traffic using self-generated certificates.

    Fiddler可以使用自行生成的证书对流量进行重新签名,从而对HITTPS会话进行解密。

  • Capture HTTPS CONNECTs:建立HTTPS连接通信。

    这个就是我们之前常看到有tunnel to...443请求的原因,他是HTTPS建立通信时候所发出的请求。

    我们使用Rules菜单 ---> Hide CONNECTs操作,把这些请求隐藏了。

  • Decrypt HTTPS traffic:解密HTTPS请求。

  • 下拉列表

    from all processes : 抓取所有的HTTPS程序, 包括本机和手机 。

    from browsers only : 只抓取浏览器中的HTTPS请求。

    from non-browsers only : 只抓取除了浏览器之外的所有HTTPS请求。

    from remote clients only : 抓取远程的客户端的HTTPS,可以代表手机。

  • Ignore server certificate errors (unsafe):忽略服务器证书错误(不安全)

    一般勾选上。

  • check for certificate reyocation:检查证书吊销。

  • Certificates generated by CertEnroll engine:由CertEnroll引擎生成的证书。

  • Skip decryption for the following hosts:跳过以下主机的解密。

  • Actions

    • Trust Root Certificate:信任根证书。
    • Export Root Certificate to Desktop:将根证书导出到桌面。
    • Open Windows Certificate Manager:打开Windows证书管理器。
    • Learn More about HTTPS Decryption:了解有关HTTPS解密的更多信息。
    • Remove Interception Certificates:删除拦截证书。
    • Reset All Certificates:重置所有证书。

7、无法抓取HTTPS请求

我们在完成上面Fiddler配置后,还是无法抓取HTTPS请求。

我们可以点击Tools菜单 ---> Options... ---> HTTPS ---> Actions。

选择最后一个选项Reset All Certificates:重置所有证书。

提示:Fiddler将删除所有拦截证书,并重新创建新的根证书以用于解密流量。

选择确定。

确定是否删除证书:选择是。

提示:Fiddler生成的证书已从"当前用户"存储中删除。

点击确定。之后Fiddler会自动弹出证书的安装,同上面第4点的步骤一。

如果还不行,可以再点击第一个选项Trust Root Certificate:信任根证书。

之后会安装一些Fiddler的相关证书,这样基本上可以解决Fiddler无法抓取HTTPS请求的情况。

8、Firefox浏览器中捕获HTTPS请求

Google浏览器和IE浏览器默认使用的网络代理是系统代理,当Fiddler开启后,会自动替换掉系统代理,这样Google浏览器和IE浏览器自动就可以抓取到HTTPS的请求。

Firefox浏览器与其它浏览器有所不同,它默认不使用系统代理,该浏览器需要自己设置代理和安装证书,Fiddler才可以抓到HTTPS。

(1)查看Firefox浏览器的网络代理

选择Firefox右上角三条横线 ---> 选项 ---> 网络设置(版本不同位置不同,有的在高级里,有的在常规里)

点击"设置",出现如下界面:

提示:新版本默认选择使用系统代理设置,旧版本自己查看一下,不是的话修改一下。

这样的话,我们就可以进行HTTP请求的抓取了。(注意不是HTTPS请求)

我们也可以进行手动代理配置,要配置成Fiddler一样的地址和端口(请看Fiddler中Connections选项中的配置)

(2)配置Firefox浏览器的Fiddler证书

我们可以先通过Fiddler配置好抓取Google浏览器HTTPS请求,这样的话Fiddler证书已经安装在本机电脑中了。

新版本的Firefox浏览器,当我们打开浏览器的时候,Firefox会自动弹出页面,需要确认Fiddler证书。

我们点击高级,选择信任该证书即可。

现在我们就可以使用Fiddler抓取Firefox浏览器的HTTPS请求了。

如果是旧版本的Firefox浏览器。

步骤1:我们需要点击Tools菜单 ---> Options... ---> HTTPS ---> Actions。

步骤2:选择第二项Export Root Certificate to Desktop:将根证书导出到桌面。

步骤3:然后选择Firefox右上角三条横线 ---> 选项 ---> 证书(版本不同位置不同,有的在高级里,有的在隐私与安全里)

步骤4:点击"查看证书",点击导入证书,如下图:

步骤5:选择并打开文件后,会弹出个框,勾选三个选项,点击确定,完成配置。

步骤6:可以抓取Firefox浏览器发出的HTTPS请求了。如果不行重启Firefox浏览器和Fiddler试试。

9、总结:

无论什么浏览器,需要抓取HTTPS请求,都需要确保:

  • 确保浏览器使用网络是系统代理(主要就是把系统代理替换成Fiddler代理)。
  • 确保正确安装好Fiddler证书。

这样Fiddler就可以抓取到任何浏览器发送的HTTPS请求了。

相关推荐
小嘟嚷ovo几秒前
h5,原生html,echarts关系网实现
前端·html·echarts
十一吖i30 分钟前
Vue3项目使用ElDrawer后select方法不生效
前端
只可远观31 分钟前
Flutter目录结构介绍、入口、Widget、Center组件、Text组件、MaterialApp组件、Scaffold组件
前端·flutter
周胡杰33 分钟前
组件导航 (HMRouter)+flutter项目搭建-混合开发+分栏效果
前端·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
敲代码的小吉米1 小时前
前端上传el-upload、原生input本地文件pdf格式(纯前端预览本地文件不走后端接口)
前端·javascript·pdf·状态模式
是千千千熠啊1 小时前
vue使用Fabric和pdfjs完成合同签章及批注
前端·vue.js
学地理的小胖砸1 小时前
【Python 操作 MySQL 数据库】
数据库·python·mysql
安迪小宝1 小时前
6 任务路由与负载均衡
运维·python·celery
Blossom.1181 小时前
使用Python实现简单的人工智能聊天机器人
开发语言·人工智能·python·低代码·数据挖掘·机器人·云计算
救救孩子把1 小时前
MCP本地高效与云端实时:stdio 与 HTTP+SSE 传输机制深度对比
网络·网络协议·http·sse·mcp·stdio