Fiddler捕获HTTPS请求方法详解
时间:2026-05-12 19:10:02 172浏览 收藏
想轻松捕获并查看HTTPS请求的明文内容?本文手把手教你用Fiddler实现HTTPS流量解密——从启用HTTPS解密选项、安装并信任Fiddler根证书,到配置Windows浏览器、安卓与iOS设备代理及证书导入,再到排查“Tunnel to”问题和绕过App证书固定等高阶技巧,覆盖全平台实操细节,助你彻底掌握HTTPS抓包核心能力,无论是Web调试、移动端接口分析还是安全测试,都能得心应手。

如果您在使用 Fiddler 时无法看到 HTTPS 请求的明文内容,则可能是由于 HTTPS 解密功能未启用或证书未正确安装。以下是实现 HTTPS 请求捕获的具体步骤:
一、启用 Fiddler 的 HTTPS 解密功能
该步骤使 Fiddler 能够解密并显示加密的 HTTPS 流量,其原理是通过中间人(MITM)方式,在客户端与服务器之间插入 Fiddler 自签名根证书,从而完成 TLS 握手重协商。
1、启动 Fiddler,点击顶部菜单栏【Tools】→【Fiddler Options】→【HTTPS】选项卡。
2、勾选 Capture HTTPS CONNECTs。
3、勾选 Decrypt HTTPS traffic。
4、勾选其下方两个子选项:Ignore server certificate errors 和 Allow remote computers to connect(此选项位于【Connections】选项卡中,需同步配置)。
5、点击【Actions】按钮,选择 Trust Root Certificate,按提示完成系统级证书安装。
二、导出并安装 Fiddler 根证书到设备
客户端(如浏览器或手机)必须信任 Fiddler 的根证书,否则会拒绝建立解密连接,导致 HTTPS 请求仅显示为隧道(Tunnel to)而无具体内容。
1、在【HTTPS】选项卡中点击【Actions】→【Export Root Certificate to Desktop】,将 FiddlerRoot.cer 文件保存至桌面。
2、在 Windows 系统中,双击该文件,选择“安装证书”→“本地计算机”→“将所有证书放入下列存储”→“受信任的根证书颁发机构”→完成。
3、在 Chrome 或 Edge 中,需额外进入【设置】→【隐私和安全】→【管理证书】→【受信任的根证书颁发机构】→【导入】,选择刚导出的证书文件。
4、在 Firefox 中,需进入【设置】→【隐私与安全】→【证书】→【查看证书】→【证书机构】→【导入】,并勾选全部信任选项。
三、配置移动端设备接入 Fiddler 代理
该步骤确保移动设备的网络请求经由运行 Fiddler 的电脑转发,是捕获手机端 HTTPS 流量的前提条件。
1、确认电脑与手机处于同一局域网,并通过命令提示符执行 ipconfig 查得电脑 IPv4 地址(如 192.168.1.100)。
2、在 Fiddler【Connections】选项卡中记录监听端口(默认 8888,可自定义)。
3、在安卓手机 Wi-Fi 设置中,长按当前网络→【修改网络】→【高级选项】→【代理】设为手动,主机名填入电脑 IP,端口填入 Fiddler 监听端口。
4、在 iOS 设备中,进入【设置】→【Wi-Fi】→点击当前网络右侧感叹号→【配置代理】→【手动】,填入相同 IP 与端口。
5、在手机浏览器中访问 http://[电脑IP]:[端口](例如 http://192.168.1.100:8888),下载并安装页面提供的 FiddlerRoot.cer 证书。
6、iOS 需额外进入【设置】→【通用】→【关于本机】→【证书信任设置】,开启对 FiddlerRoot 证书的完全信任;安卓需在【设置】→【安全】→【加密与凭据】→【用户凭证】中确认证书已安装。
四、验证 HTTPS 捕获状态
该步骤用于确认 HTTPS 解密是否生效,避免因证书链或代理配置残留导致部分请求仍无法解密。
1、在 Fiddler 主界面顶部工具栏,确认【Capture Traffic】按钮呈红色且已启用。
2、在 Filters 选项卡中取消勾选【Use Filters】,或确保 Filter Settings 中未屏蔽 HTTPS 协议。
3、在手机或浏览器中访问任意 HTTPS 网站(如 https://www.baidu.com),观察 Fiddler 会话列表中是否出现带 HTTPS 标识且包含完整请求头与响应体的会话行。
4、若某请求仅显示为 Tunnel to domain:443,说明该请求未被解密,需检查对应设备证书信任状态或目标应用是否启用证书固定(Certificate Pinning)。
五、绕过证书固定(App 特定场景)
部分 Android/iOS 应用采用证书固定机制,拒绝接受非预置 CA 签发的证书,导致 Fiddler 无法解密其 HTTPS 流量。此时需在客户端层面干预 TLS 验证逻辑。
1、Android 设备可配合 JustTrustMe 或 sslUnpinning 等 Xposed/Frida 模块动态禁用证书校验。
2、iOS 设备需越狱后安装 SSL Kill Switch 2 或使用 Frida 脚本 hook SecTrustEvaluate 函数。
3、对于未越狱 iOS 设备,可尝试使用 Objection 工具配合 Frida Server 注入运行时环境,执行 ios sslpinning disable 命令。
4、部分现代应用支持调试模式,可在启动参数中添加 --unsafely-treat-insecure-origin-as-secure 或启用开发者选项中的“允许用户证书”开关。
到这里,我们也就讲完了《Fiddler捕获HTTPS请求方法详解》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
127 收藏
-
146 收藏
-
200 收藏
-
280 收藏
-
213 收藏
-
150 收藏
-
318 收藏
-
374 收藏
-
365 收藏
-
332 收藏
-
489 收藏
-
133 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习