Fiddler抓取HTTPS最全(强)攻略 📅 发布时间:2026/7/11 10:07:36 👁️ 浏览次数: 对于想抓取HTTPS的测试初学者来说常用的工具就是fiddler。但是初学时大家对于fiddler如何抓取HTTPS难免走歪路也许你一步步按着网上的帖子成功了这自然是极好的。但也有可能没那么幸运这时候你就会很抓狂。为此我把一些我自己的安装经验和网络上的教程进行了整合下面为大家演示如何用fiddler抓取HTTPS的详细教程。如若失败请先仔细检查避免错过细节然后重新重试01、浅谈HTTPS我们都知道HTTP并非是安全传输在HTTPS基础上使用SSL协议进行加密构成的HTTPS协议是相对安全的。目前越来越多的企业选择使用HTTPS协议与用户进行通信如百度、谷歌等。HTTPS在传输数据之前需要客户端浏览器与服务端网站之间进行一次握手在握手过程中将确立双方加密传输数据的密码信息。网上有诸多资料有些写得过于晦涩难懂尤其是需要密码学的一些知识。我做了一下简单的整理刨除复杂的底层实现单从理解SSL协议的角度宏观上认识一下HTTPS。一言以弊之HTTPS是通过一次非对称加密算法如RSA算法进行了协商密钥的生成与交换然后在后续通信过程中就使用协商密钥进行对称加密通信。HTTPS协议传输的原理和过程简图如下所示HTTPS协议传输原理一共有8个步骤我们针对每一步具体看看发生了什么事第一步客户端发起明文请求将自己支持的一套加密规则、以及一个随机数Random_C发送给服务器。第二步服务器初步响应服务器根据自己支持的加密规则从客户端发来的请求中选出一组加密算法与HASH算法生成随机数并将自己的身份信息以证书CA的形式发回给浏览器。CA证书里面包含了服务器地址加密公钥以及证书的颁发机构等信息。这时服务器给客户端的包括选择使用的加密规则、CA证书、一个随机数Random_S。第三步客户端接到服务器的初步响应后做四件事情1证书校验 验证证书的合法性颁发证书的机构是否合法证书中包含的网站地址是否与正在访问的地址一致等。2生成密码浏览器会生成一串随机数的密码Pre_master并用CA证书里的公钥加密(enc_pre_master)用于传给服务器。3计算协商密钥此时客户端已经获取全部的计算协商密钥需要的信息两个明文随机数 Random_C 和 Random_S 与自己计算产生的 Pre-master计算得到协商密钥enc_key。enc_keyFuc(random_C, random_S, Pre-Master)4生成握手信息使用约定好的HASH计算握手消息并使用协商密钥enc_key及约定好的算法对消息进行加密。第四步客户端将第三步产生的数据发给服务器这里要发送的数据有三条1用公钥加密过的服务器随机数密码enc_pre_master2客户端发给服务器的通知“以后我们都要用约定好的算法和协商密钥进行通信的哦”。3客户端加密生成的握手信息。第五步服务器接收客户端发来的数据要做以下四件事情1私钥解密使用自己的私钥从接收到的enc_pre_master中解密取出密码Pre_master。2计算协商密钥此时服务器已经获取全部的计算协商密钥需要的信息两个明文随机数 Random_C 和 Random_S 与Pre-master计算得到协商密钥enc_key。enc_keyFuc(random_C, random_S, Pre-Master)3解密握手消息使用协商密钥enc_key解密客户端发来的握手消息并验证HASH是否与客户端发来的一致。4生成握手消息使用协商密钥enc_key及约定好的算法加密一段握手消息发送给客户端。第六步服务器将第五步产生的数据发给客户端这里要发的数据有两条1服务器发给客户端的通知”听你的以后我们就用约定好的算法和协商密钥进行通信哦“。2服务器加密生成的握手信息。第七步客户端拿到握手信息解密握手结束。客户端解密并计算握手消息的HASH如果与服务端发来的HASH一致此时握手过程结束。第八步正常加密通信握手成功之后所有的通信数据将由之前协商密钥enc_key及约定好的算法进行加密解密。这里客户端与服务器互相发送加密的握手消息并验证目的是为了保证双方都获得了一致的密码并且可以正常的加密解密数据为后续真正数据的传输做一次测试。另外HTTPS一般使用的加密与HASH算法如下非对称加密算法RSADSA/DSS对称加密算法AESRC43DESHASH算法MD5SHA1SHA256其中非对称加密算法用于在握手过程中加密生成的密码对称加密算法用于对真正传输的数据进行加密而HASH算法用于验证数据的完整性。由于浏览器生成的密码是整个数据加密的关键因此在传输的时候使用了非对称加密算法对其加密。非对称加密算法会生成公钥和私钥公钥只能用于加密数据因此可以随意传输而服务器的私钥用于对数据进行解密所以服务器都会非常小心的保管自己的私钥防止泄漏。02、Fiddler抓取HTTPS协议原理我们都知道Fiddler是个很好的代理工具可抓取协议请求用于调试。关于Fiddler抓取HTTP协议的原理和配置比较简单对Fiddler和客户端稍作配置便能使得Fiddler轻易地获取HTTP请求。但是由于HTTPS协议的特殊性要进一步地配置Fiddler我们首先要了解一下fiddler抓取HTTPS协议的原理才能更好地理解如何对fiddler进行配置。Fiddler本身就是一个协议代理工具在上一节HTTPS原理图上客户端与服务器端进行通信的过程全部都由Fiddler获取到也就是如下图所示Fiddler抓取HTTPS协议原理图我们看到Fiddler抓取HTTPS协议主要由以下几步进行第一步Fiddler截获客户端发送给服务器的HTTPS请求Fiddler伪装成客户端向服务器发送请求进行握手 。第二步服务器发回相应Fiddler获取到服务器的CA证书 用根证书公钥进行解密 验证服务器数据签名 获取到服务器CA证书公钥。然后Fiddler伪造自己的CA证书 冒充服务器证书传递给客户端浏览器。第三步与普通过程中客户端的操作相同客户端根据返回的数据进行证书校验、生成密码Pre_master、用Fiddler伪造的证书公钥加密并生成HTTPS通信用的对称密钥enc_key。第四步客户端将重要信息传递给服务器 又被Fiddler截获。Fiddler将截获的密文用自己伪造证书的私钥解开 获得并计算得到HTTPS通信用的对称密钥enc_key。Fiddler将对称密钥用服务器证书公钥加密传递给服务器。第五步与普通过程中服务器端的操作相同服务器用私钥解开后建立信任然后再发送加密的握手消息给客户端。第六步Fiddler截获服务器发送的密文 用对称密钥解开 再用自己伪造证书的私钥加密传给客户端。第七步客户端拿到加密信息后用公钥解开验证HASH。握手过程正式完成客户端与服务器端就这样建立了”信任“。在之后的正常加密通信过程中Fiddler如何在服务器与客户端之间充当第三者呢服务器—客户端Fiddler接收到服务器发送的密文 用对称密钥解开 获得服务器发送的明文。再次加密 发送给客户端。客户端—服务端客户端用对称密钥加密被Fiddler截获后解密获得明文。再次加密发送给服务器端。由于Fiddler一直拥有通信用对称密钥enc_key 所以在整个HTTPS通信过程中信息对其透明。从上面可以看到Fiddler抓取HTTPS协议成功的关键是根证书具体是什么可Google,这是一个信任链的起点这也是Fiddler伪造的CA证书能够获得客户端和服务器端信任的关键。接下来我们就来看如果设置让Fiddler抓取HTTPS协议。03、Fiddler抓取HTTPS设置注意以下操作的前提是手机已经能够连上Fiddler这部分的配置过程简单就不赘述了可参考手机如何连接Fiddler 。如何继续配置让Fiddler抓取到HTTPS协议呢一首先对Fiddler进行设置打开工具栏-Tools-Fiddler Options-HTTPS选中Capture HTTPS CONNECTs因为我们要用Fiddler获取手机客户端发出的HTTPS请求所以中间的下拉菜单中选中from remote clients only。选中下方Ignore server certificate errors.二然后就是手机安装Fiddler证书。这一步也就是我们上面分析的抓取HTTPS请求的关键。操作步骤很简单打开手机浏览器在浏览器地址输入代理服务器IP和端口会看到一个Fiddler提供的页面。接着点击最下方的FiddlerRoot certificate这时候点击确定安装就可以下载Fiddler的证书了。下载安装完成好后我们用手机客户端或者浏览器发出HTTPS请求Fiddler就可以截获到了就跟截获普通的HTTP请求一样。好啦以上就是关于HTTPS的简介以及Fiddler如何获取HTTPS协议的原理和配置看到Fiddler整齐划一地截获到HTTP和复杂的HTTPS协议心里还有点小激动呢最后下方这份完整的软件测试视频教程已经整理上传完成需要的朋友们可以自行领取【保证100%免费】软件测试面试文档我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。
最新出炉 -Web自动化测试之playwright:概述 概述 playwright是由微软开发的Web UI自动化测试工具, 支持Node.js、Python、C# 和 Java语言,本文将介绍playwright的特性以及它的简单使用。 playwright特性 playwright具有以下特点: 一、支持所有主流浏览器 支持所有主流浏览器&#x… 2026/5/17 2:21:14
LeetCode热题100--136. 只出现一次的数字--简单 题目 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。 示例 1 : 输入&… 2026/7/11 1:25:25
模拟太阳光条件下太空光伏电池的光电性能测量 三结砷化镓(GaInP/InGaAs/Ge)光伏电池具备 300~1800nm 宽光谱响应、超 30% 光电转换效率及优异抗辐照性,是航天器在轨运行的核心电源。其光电性能需在 AM0标准条件下标定,以匹配太空环境的太阳辐照特性。地面太阳光模拟器法可控性… 2026/7/6 15:46:50
大数据毕业设计-基于 Python 的热门微博数据可视化分析系统的设计与实现 基于 Python 的微博热搜大数据挖掘可视化系统(源码+LW+部署文档+全bao+远程调试+代码讲解等) 博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am… 2026/7/11 10:04:16
Navicat重置机制深度解析:macOS系统级试用追踪清理实践 Navicat重置机制深度解析:macOS系统级试用追踪清理实践 【免费下载链接】navicat_reset_mac navicat mac版无限重置试用期脚本 Navicat Mac Version Unlimited Trial Reset Script 项目地址: https://gitcode.com/gh_mirrors/na/navicat_reset_mac 在macOS数… 2026/7/11 10:04:16
振动系统等效建模 2 方法:从力学弹簧振子到电路 RLC 类比分析 振动系统等效建模:从力学弹簧振子到电路RLC的跨学科分析方法 在工程实践中,振动系统的建模与分析往往需要跨越物理学科的边界。当一位机械工程师面对复杂的振动问题时,可能会惊讶地发现电路理论中的RLC模型竟能完美描述弹簧-质量-阻尼系统的行… 2026/7/11 10:00:14
Supabase Auth + Cursor Context-aware Coding(上下文感知编码)实战:1个.env配置解锁RBAC权限驱动的AI提示工程 更多请点击: https://kaifayun.com 第一章:Supabase Auth与Cursor Context-aware Coding融合架构概览 Supabase Auth 为现代全栈应用提供了开箱即用的用户认证能力,涵盖邮箱密码、OAuth 2.0(如 GitHub、Google)、短信… 2026/7/11 9:58:14
PCA、LDA、t-SNE 降维实战:Iris 数据集 3 种方法可视化效果对比 PCA、LDA与t-SNE降维实战:Iris数据集三维可视化深度解析1. 降维技术的核心价值与应用场景当我们面对高维数据时,常常会陷入"维度灾难"的困境——随着维度增加,数据稀疏性呈指数级增长,计算复杂度急剧上升,而… 2026/7/11 9:58:14
MiniMax多模态AI技术在国际峰会亮相与开发者实践指南 1. 为什么AI公司都在抢滩国际科技峰会? 最近科技圈有个现象值得关注:国内AI公司纷纷亮相国际顶级科技峰会。从Google I/O到微软Build,再到即将到来的巴黎RAISE Week,中国AI企业的身影越来越活跃。这背后反映的不仅是技术实力的展示… 2026/7/11 9:56:13
5分钟搞定Kodi字幕难题:智能字幕插件让你追剧无忧 [特殊字符] 5分钟搞定Kodi字幕难题:智能字幕插件让你追剧无忧 🎬 【免费下载链接】zimuku_for_kodi Kodi 插件,用于从「字幕库」网站下载字幕 项目地址: https://gitcode.com/gh_mirrors/zi/zimuku_for_kodi 还记得那个深夜吗?你刚下载… 2026/7/11 0:00:11
工业信号干扰处理与FOD4216光耦应用实战 1. 工业环境中的信号干扰挑战在工业自动化领域,信号采集的准确性直接关系到整个控制系统的可靠性。典型的工业现场充斥着各种干扰源:大功率电机启停产生的电磁干扰、变频器工作产生的高频噪声、继电器触点火花放电,以及长距离传输引入的共模干… 2026/7/11 0:00:11
OpenHarmony 完整项目工程整合规范 + 模块化分层架构(API23+ 标准企业级结构) 摘要前面系列教程覆盖了 ArkUI 组件、路由、生命周期、本地存储、网络请求、Ability 底层全套基础能力,本篇统一梳理标准工程目录分层、模块化拆分、代码复用规范、全局工具统一管理、项目打包权限配置、常见工程报错统一解决方案,形成可直接用于课程设计… 2026/7/11 0:00:11
6个月转型AI工程师:实战路径与核心技能 1. 项目概述:6个月转型AI工程师的可行性路径在2023年大模型技术爆发的背景下,AI工程师岗位需求同比增长217%(LinkedIn数据)。不同于传统算法工程师需要3-5年培养周期,现代AI工程师更侧重工程化落地能力。我在硅谷科技公… 2026/7/7 11:26:57
TPAFE0808与PIC18F87K22的多通道信号采集方案 1. 项目背景与核心需求在工业自动化、医疗设备和科研仪器等领域,多通道信号采集与系统监测是基础且关键的技术需求。传统方案往往面临通道数量不足、信号调理复杂、系统集成度低等问题。TPAFE0808作为一款8通道模拟前端芯片,与PIC18F87K22微控制器的组合… 2026/7/8 20:15:17
STC3115与PIC18LF26K80构建高精度电池管理系统 1. STC3115与PIC18LF26K80在电池管理系统中的核心价值在现代电子设备中,电池管理系统(BMS)的重要性不亚于设备的核心处理器。STC3115作为一款高精度电池电量监测IC,与PIC18LF26K80微控制器的组合,构成了一个既能精确监控又能智能管理的完整解… 2026/7/8 14:25:08