HTTPS抓包证书TLS

使用 HTTPeep 调试 HTTPS 流量:完整指南

本文介绍如何安装根证书、抓取 HTTPS 请求,以及常见问题排查方法。包括 macOS、Windows 和 iOS/Android 的完整配置步骤。

为什么需要 HTTPS 调试

现代应用几乎全部使用 HTTPS 加密传输数据。当你遇到以下问题时,需要直接查看加密流量:

  • API 请求参数不符合预期
  • 第三方 SDK 发出的神秘请求
  • 移动 App 与服务端通信异常
  • 性能瓶颈定位

HTTPeep 采用 MITM(中间人代理)技术,通过动态签发证书实现 HTTPS 解密,同时保证本机安全。

第一步:安装根证书

HTTPeep 会在首次启动时自动生成唯一的根 CA 证书,存储在 ~/.httpeep/certs/ 目录下。

macOS

打开 HTTPeep → 设置 → 证书 → 安装到系统钥匙串,输入系统密码后自动完成。

验证安装:

security find-certificate -a -c "HTTPeep" ~/Library/Keychains/login.keychain-db

Windows

  1. 设置 → 证书 → 导出 httpeep-ca.crt
  2. 双击证书文件 → 安装证书 → 本地计算机 → 将所有证书放入 受信任的根证书颁发机构
# 或使用 PowerShell 批量安装
Import-Certificate -FilePath "httpeep-ca.crt" -CertStoreLocation Cert:\LocalMachine\Root

第二步:启用代理

HTTPeep 默认监听 127.0.0.1:8899。点击主界面的 启动 按钮后,自动配置系统代理。

你也可以手动指定:

HTTP Proxy:  127.0.0.1:8899
HTTPS Proxy: 127.0.0.1:8899
No Proxy:    localhost, 127.0.0.1

第三步:捕获请求

代理启动后,打开浏览器或目标应用,HTTPeep 主界面会实时显示所有流量。

点击任意请求可查看:

| 面板 | 内容 | |------|------| | Headers | 请求/响应头 | | Body | 请求/响应体(支持 JSON 格式化) | | Timing | DNS、连接、TLS 握手、首字节时间 | | Raw | 原始 HTTP 报文 |

常见问题

证书不受信任(ERR_CERT_AUTHORITY_INVALID)

确认根证书已安装,且浏览器使用的是系统证书库(Firefox 使用独立证书库,需单独安装)。

应用启用了 SSL Pinning

部分应用会校验服务器证书指纹,此时 HTTPeep 的动态证书会被拒绝。解决方案:

  1. 使用 HTTPeep 的规则绕过功能,对特定域名直接透传
  2. 如需完整解密,需在越狱/Root 设备上使用 Frida Hook 绕过 Pinning
{
  "rule": "bypass",
  "pattern": "*.pinned-api.com",
  "comment": "SSL Pinning 域名,直接透传"
}

小结

HTTPeep 的 HTTPS 调试流程只需三步:安装证书 → 启用代理 → 查看流量。相比传统工具,HTTPeep 提供了更现代化的界面和更精确的性能时序分析,是调试现代应用网络问题的利器。