HTTPS请求无法捕获是因未启用解密或根证书未安装;需启用Fiddler HTTPS解密、安装DO_NOT_TRUST_FiddlerRoot证书至系统信任根存储、为Firefox单独导入证书,并确保代理配置正确且无HSTS/证书锁定干扰。

如果您在使用 Fiddler 进行网络调试时发现 HTTPS 请求无法被捕获或显示为加密状态,则极大概率是由于 HTTPS 解密功能未启用或根证书未正确安装。以下是多种可独立生效的设置与安装方法:
一、启用 Fiddler 内置 HTTPS 解密并自动安装证书
此方法依赖 Fiddler 自动完成证书生成与系统级安装,适用于 Windows 系统且具备管理员权限的场景。Fiddler 将尝试将 DO_NOT_TRUST_FiddlerRoot 根证书写入“受信任的根证书颁发机构”存储区。
1、启动 Fiddler,点击顶部菜单栏 Tools → Options。
2、切换至 HTTPS 选项卡。
3、勾选 Decrypt HTTPS traffic 复选框。
4、在弹出的权限提示窗口中,点击 Yes 或 Allow 授权证书安装。
5、勾选 Ignore server certificate errors(忽略服务端证书错误)以兼容部分异常证书站点。
6、确认下方 Certificates generated by 下拉菜单中已选择 CN=DO_NOT_TRUST_FiddlerRoot。
7、点击 OK 保存设置,并重启 Fiddler。
二、手动导出并安装 Fiddler 根证书到系统证书存储
当自动安装失败(如权限受限、UAC 阻止、企业组策略禁用)时,可采用此方式将证书文件显式导入。该证书必须置于“受信任的根证书颁发机构”容器内,否则浏览器仍会拒绝信任由其签发的中间证书。
1、打开 Fiddler,进入 Tools → Options → HTTPS 选项卡。
2、点击 Actions 按钮,选择 Export Root Certificate to Desktop。
3、桌面将生成名为 FiddlerRootCertificate.cer 的证书文件。
4、双击该 .cer 文件,启动证书导入向导。
5、在向导中选择 将所有证书放入下列存储,点击 浏览,选定 受信任的根证书颁发机构。
6、点击 下一步 完成导入。
7、按 Win + R 输入 certmgr.msc 回车,展开 受信任的根证书颁发机构 → 证书,查找是否存在名称为 DO_NOT_TRUST_FiddlerRoot 的证书。
三、通过本地 HTTP 地址下载并安装证书(适用于移动端或受限桌面环境)
此方式绕过文件系统操作,直接通过浏览器访问 Fiddler 内置 Web 服务获取证书,特别适合 Android 设备、iOS 设备或无管理员权限的 Windows 用户。Fiddler 必须处于运行且捕获开启状态,且代理端口(默认 8888)未被防火墙拦截。
1、确保 Fiddler 左下角状态栏显示 Capturing,且 Decrypt HTTPS traffic 已启用。
2、在设备浏览器中访问 http://127.0.0.1:8888 或 http://fiddlercert/。
3、页面底部点击 FiddlerRoot certificate 链接,下载证书文件。
4、Android 设备:进入 设置 → 安全 → 加密与凭据 → 安装证书 → 从设备存储安装,选择刚下载的 .cer 文件。
5、iOS 设备:安装后需额外进入 设置 → 已下载描述文件 → 安装 → 设置 → 通用 → 关于本机 → 证书信任设置,启用对 DO_NOT_TRUST_FiddlerRoot 的完全信任。
四、为 Firefox 单独配置证书(因 Firefox 不使用系统证书存储)
Firefox 使用独立的证书数据库,即使系统证书已安装,也需手动导入 Fiddler 根证书,否则其 HTTPS 流量仍无法解密。该步骤不可省略,且必须在 Firefox 中完成,而非通过系统导入。
1、启动 Firefox,点击右上角三条横线图标 → 设置。
2、进入 隐私与安全 → 向下滚动至 证书 区域,点击 查看证书。
3、在弹出窗口中切换至 证书机构 选项卡,点击 导入。
4、选择桌面导出的 FiddlerRootCertificate.cer 文件。
5、在弹出的权限复选框中,务必勾选 信任此证书以标识网站。
6、点击 确定 完成导入。
五、验证代理与证书协同生效的关键检查项
即使证书安装成功,若客户端未正确指向 Fiddler 代理,或存在干扰机制(如 HSTS、证书固定、应用层 TLS 校验),HTTPS 流量仍将无法解密。以下检查必须全部满足才能确保抓包链路完整。
1、确认目标客户端(浏览器/APP)已设置 HTTP 代理为 127.0.0.1:8888(Windows/macOS)或局域网 IP + 8888(移动端)。
2、检查 Windows 防火墙是否放行 8888 端口的入站连接;第三方安全软件(如 360、腾讯电脑管家)可能静默拦截,需临时禁用测试。
3、在 Fiddler 的 Log 选项卡中观察是否有 TLS handshake failed 或 SSL/TLS alert 类日志,据此定位握手阶段失败原因。
4、对于 Android 7.0+ 原生应用,若硬编码了证书锁定(Certificate Pinning),需借助 JustTrustMe(Xposed)或 Objection(Frida)等工具动态绕过,Fiddler 本身无法干预该层级校验。

















