夜神模拟器无法安装Charles证书

安卓高版本7.0之后,模拟器无法下载证书。在这里插入图片描述
谷歌修改安卓系统,7.0之后,app只信任指定证书和系统内置的证书,后续用户安装的证书不生效,故只能想办法装到系统内部。

第一步,准备pem证书

1.打开Charles–help下载charles.cer到桌面
在这里插入图片描述

2.由于证书格式转换需要用到 openssl,去官网下载后,安装好openssl.添加OpenSSL的路径到系统变量中的path
在这里插入图片描述

下面是证书格式转换 (windows里面的命令行操作)
pem证书转.cer证书
openssl x509 -outform der -in demo.pem -out demo.cer
cer证书转.pem证书
openssl x509 -inform der -in “C:\Users\Desktop\CharlesCA.cer” -out “C:\Users\Desktop\ca.pem”
在这里插入图片描述

3,打开夜神模拟器,根目录会有nox_adb.exe文件,用命令行去操控这个文件。(如果不是用夜神模拟器,也可以自己下载adb 工具,原理一样)在这里插入图片描述

3.1.查看连接状态
nox_adb.exe devices

3.2.判断是否有root权限
nox_adb.exe root
没有root权限 打开夜神–给模拟器勾选上root,重启模拟器在这里插入图片描述

3.3.将/system部分置于可写入模式 adb remount

4.查看证书信息hash值
openssl x509 -subject_hash_old -in “C:\Users\Desktop\ca.pem”

拷贝该文件,重命名为 hash结果里面的名称 (02631509).0 的证书
同理fiddler的证书也如此

5.adb下cmd中执行
adb push 02631509.0/system/etc/security/cacerts/ 就是把证书文件复制到证书
在这里插入图片描述


版权声明:本文为m0_37833535原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。