DOC软件文档百宝箱

抓不到HTTPS请求的排查方法

用 HttpCanary 抓包时最常见的三类「抓不到」:列表里 HTTPS 全是 CONNECT、目标应用直接没网、或者列表干脆空白。这三类原因不同,按下面三层从低到高排查即可。还没装好的先去 HttpCanary 介绍页 看安装与证书配置入口,这里只讲排查。

第一层:证书装了吗

小黄鸟记录 HTTP 明文请求不需要任何配置,但 HTTPS 内容要看到明文,必须让系统信任它的根证书:

  1. 应用侧栏「设置 → SSL 证书设置 → 导出 HttpCanary 根证书」,选 .pem 格式;
  2. 到系统设置的「安装 CA 证书」里选中刚导出的文件——它默认存在存储的 HttpCanary/cert/ 目录下。

装完再抓,CONNECT 会变成一条条可读的请求。如果还是只有 CONNECT,看下一层。

第二层:通道被抢了吗

小黄鸟靠本地 VPN 通道中转流量,而一台手机同时只能有一条 VPN 生效:

第三层:目标应用是不是做了证书校验

前两层都过了,个别应用仍然抓不到明文,通常是它启用了 SSL Pinning(证书绑定):应用只认自己内置的证书,不信任你装进系统的任何 CA。这是目标应用自己的安全策略——说明它对传输安全有明确要求,抓不到属正常现象,也不该为了看它的数据去改动别人的应用。

顺带一提:Android 7 之后系统默认不信任用户手动安装的证书,所以越是新的系统、越是新编译的应用,越容易落在第三层。做接口排查时优先选自己有权限的业务应用,成功率会高很多。

相关文档

本站文档

访问 httpCanary 介绍站 ↗