You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

三星设备安装Charles Proxy证书后无法解密HTTPS流量问题求助

解决方案

问题根因

三星OneUI自研了额外的SSL校验规则,和原生AOSP、小米MIUI的逻辑不同:即使用户手动安装了用户层级CA证书,所有非浏览器类应用默认会拒绝信任用户证书,因此会触发SSL握手失败报错。


修复方案

方案1:Root设备后安装系统级证书(适配所有应用)

  • 从Charles导出PEM格式的SSL代理证书,本地计算证书哈希:
    执行命令openssl x509 -inform PEM -subject_hash_old -in 你的Charles证书文件名.pem | head -1,得到8位哈希值,将证书重命名为「哈希值.0」,例:得到的哈希为a329ba66,就重命名为a329ba66.0
  • 连接已Root的三星设备,将重命名后的证书推送至系统证书目录:
    adb push a329ba66.0 /system/etc/security/cacerts/
  • 给证书设置权限:adb shell chmod 644 /system/etc/security/cacerts/a329ba66.0
  • 重启设备后,Charles证书会出现在「受信任的凭据-系统」列表中,即可正常解密所有应用的HTTPS流量

方案2:未Root设备修改目标应用网络配置(仅适配单个可重打包应用)

  • 解压目标APK安装包,在res/xml/路径下新建network_security_config.xml文件,写入以下内容:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config>
        <trust-anchors>
            <certificates src="system" />
            <certificates src="user" />
        </trust-anchors>
    </base-config>
</network-security-config>
  • 在AndroidManifest.xml的application标签下添加属性:android:networkSecurityConfig="@xml/network_security_config"
  • 重新签名打包APK后安装到设备,即可正常抓包该应用的HTTPS流量

额外排查点

部分OneUI版本默认开启WLAN安全拦截功能,会主动阻断代理环境的未知CA握手,可前往「设置-生物识别和安全性-安全防护」,关闭「WLAN安全检测」「恶意网络拦截」开关后重试。


故障参考截图

故障截图1
故障截图2
故障截图3

内容的提问来源于stack exchange,提问作者Kosh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 18:51:01