Android 10中Burpsuite证书安装至根CA失效问题求助
解决三星A51(Android 10)Burp Suite证书TLS错误问题
以下是针对该问题的具体解决方案,适配三星Android 10设备:
1. 重新计算并验证证书哈希值
Android 10对系统CA目录的证书命名要求严格,必须使用系统自带openssl计算的旧格式哈希,不能用电脑端工具生成:
- 将Burp导出的证书(.cer或.pem格式)传到手机
- 执行命令:
openssl x509 -subject_hash_old -in burp.cer | head -1 - 将得到的小写哈希值作为证书文件名,后缀固定为
.0,比如abc123.0
2. 正确挂载系统分区并设置证书权限
三星设备的/system分区默认只读,必须先挂载为读写才能修改:
- 执行挂载命令:
mount -o rw,remount /system - 将重命名后的证书复制到
/system/etc/security/cacerts/ - 设置证书权限,必须和目录内其他系统证书一致:
chmod 644 /system/etc/security/cacerts/abc123.0 chown root:root /system/etc/security/cacerts/abc123.0 - 重启设备,让系统重新加载CA列表
3. 适配Android 10的证书信任机制
Android 10收紧了系统CA的信任策略,常规方法可能失效,试试这些方案:
- 替换Magisk模块:放弃
AlwaysTrustUserCerts,改用Move Certificates模块,它会自动处理用户证书到系统CA目录的迁移、权限配置,适配高版本Android - 绕过应用证书固定:很多TLS错误是因为目标应用做了证书固定,和系统CA无关。可以用Xposed框架下的
JustTrustMe或SSLUnpinning模块,直接禁用应用的证书校验逻辑
4. 验证证书是否被系统识别
- 进入系统设置 → 安全 → 信任的凭据,切换到「系统」标签,确认Burp证书已显示在列表中
- 如果未显示,说明证书复制或权限设置有误,重新检查步骤2的操作
5. 排查代理基础配置
- 确认手机代理的IP地址是电脑的局域网IP,端口和Burp监听端口一致
- 检查Burp的「Proxy → Options」设置,确保监听地址是
0.0.0.0:8080(允许所有设备访问),并且没有启用请求过滤规则 - 先访问HTTP网站测试代理连通性,排除代理本身的问题
内容的提问来源于stack exchange,提问作者ZW1yeXNwb29uCg
相关产品推荐
相关产品推荐

