charles报错HTTP/1.1 200 Connection established

报错现象如上:

A App 抓包正常,同源改版、仅更换后端域名的 B App 只出现 200 Connection established 哪怕业务代码几乎一致,仅仅域名变更,下面几种安卓场景会直接触发该问题,结合你「重打包绕过证书锁仍然失效」的背景逐条说明:

快速验证手段(你立刻可以操作)

  1. 核对 network_security_config.xml 解压两个 APK,对比 xml 内 domain 列表,确认新域名是否存在独立 pin 配置。
  2. 查看 Charles Notes 握手报错 找到对应新域名 CONNECT 条目 → Notes:
  • 出现 client certificate required → mTLS 双向认证
  • 出现 ssl handshake failed, certificate verify failed → 证书锁定残留
  1. 阻断手机 UDP 443 端口 抓包恢复明文 → 证明新域名开启 QUIC
  2. Frida 全局脚本测试(不依赖重打包) Frida 全局禁用所有 SSL 校验,如果 Frida 可以抓到新域名明文,实锤:你的重打包没有覆盖新域名的证书锁定逻辑

补充一条关键建议

两个 APP 虽然业务逻辑一致,不要默认认为 SSL 校验代码完全一致。 很多厂商迭代版本时,只迁移业务接口,忘记同步迁移 / 清理新域名对应的安全校验代码,这是同模板换域名 App 最常见的抓包翻车原因。

如果你需要,我可以给你一段 Frida 通用安卓 SSL 旁路脚本,用来一次性验证是否还有证书锁定残留。

我的最终解决方式:查看charles的notes,报错如下:

复制代码
You may need to configure your browser or application to trust the Charles Root Certificate. See SSL Proxying in the Help menu.

You may need to configure your browser or application to trust the Charles Root Certificate. 你需要配置浏览器 / APP,使其信任 Charles 根证书。

结合你当前场景:安卓重打包 APP、新旧域名两套包,针对性排查

前置区分两个根本原因

  1. 系统层面:手机没有正确信任 Charles 证书(浏览器也抓不了)
  2. APP 应用层面:APP 自身拒绝系统证书(浏览器正常,只有这个 APP 不行,你大概率属于这种)

我最终重新下载电脑端的证书安装在了自己这台手机上,让用户信任了当前证书;

因为我的手机是安卓手机所以做了下面的操作

1、将证书推送到手机端(也可以通过钉钉或者qq等方式)

复制代码
adb push D:\0716window.pem /sdcard/Download/

2、手机上安装证书

手机设备搜索"证书",找到ca证书和wifi证书,均进行安装,找到对应证书位置安装;"查看安全证书"中用户tab下是否有刚才安装的对应证书

相关推荐
TlSfoward2 小时前
爬虫指纹漂移监控与回归测试:JA3/JA4 变化为什么会影响线上验证 TLSFOWARD
数据库·爬虫·网络协议·搜索引擎
万联WANFLOW2 小时前
月之暗面发布 Kimi K3:全球首个开源 3T 级大模型,前端编程竞技场登顶第一
网络·人工智能·架构·业界资讯
IPDEEP全球代理2 小时前
住宅IP、移动IP、机房IP有什么区别?
网络·网络协议·tcp/ip
funnycoffee1232 小时前
华为USG防火墙端口有收光,无法UP故障
服务器·网络·华为
泰和英杰3 小时前
2026 华为数字能源 + 机房工程实操标准:故障排查、机房建设、设备选型标准化技术方案
运维·服务器·网络
mounter6253 小时前
探索未来 AI 算力网络的基石:从传统 RoCE 走向 SRv6 驱动的弹性弹性网络(解析 Netdev 0x1A 创新实践)
linux·网络·人工智能·linux kernel·kernel·rdma·rocev2
x_x-F3 小时前
深入浅出 Linux 网络核心:sk_buff 的内存与指针流转
linux·运维·网络
春卷同学3 小时前
033-Preferences键值存储
服务器·前端·网络
CHANG_THE_WORLD16 小时前
TCP 三次握手彻底解析:SYN、ACK、SEQ、确认号与状态迁移
网络·网络协议·tcp/ip