1.生成抓包工具证书
Fiddler
输出cer证书hash
openssl x509 -inform DER -subject_hash_old -in FiddlerRoot.cer
输出的269953fb+.0就是android系统证书使用的文件名
例如:269953fb.0
转换fiddler证书为base64的明文格式(pem)
openssl x509 -inform DER -in FiddlerRoot.cer -text > 269953fb.0
编辑269953fb.0
把"-----BEGINCERTIFICATE-----"到文件结束这部分移动到文件首部
Charles
导出charles证书
Charles->Help->SSL Proxying->Save Charles Root Certificates...
Charles导出的证书已是pem格式,无需转换
计算Charles证书hash
openssl x509 -subject_hash_old -in charles.pem
输出类似3abb2d3f的hash值
导入证书
可以adb root
adb root
adb remount
adb push charles.pem /system/etc/security/cacerts/3abb2d3f.0
2.问题
shell里重新mount system
mount -o rw,remount /system
如果不成功
mount -o rw,remount /
remount报错或者push没权限
adb root
adb disable-verity
adb reboot 重启设备
adb root
adb remount
Magisk root方式导入
adb push charles.pem /sdcard/3abb2d3f.0
adb shell
su
mkdir -p /data/adb/modules/catransper/system/etc/security/cacerts
cp /sdcard/25c32d7c.0 /data/adb/modules/system/etc/security/cacerts/
chmod 644 /system/etc/security/cacerts/3abb2d3f.0
reboot