1. 问题描述
1.1 运行环境
1.2 问题描述
- virtualXposed 不一定支持Android模拟器
- 无法抓包 https 请求
1.3 问题原因
Android7 以后,系统分了系统证书和用户证书,用户安装的fiddler属于用户证书,抓https的请求需要系统证书才行
1.4 抓包工具
fiddler
2. 解决步骤
主要就是把 fiddler 从 用户证书 转到 系统证书
2.1 解决需要的环境(自行下载、安装和配置)
- cer/pem:抓包证书
- adb:用来上传操作手机
- openssl:用来编译证书
2.2 首先计算 原证书的 hash值
# .cer格式证书
openssl x509 -inform DER -subject_hash_old -in <证书文件.cer>
# .pem格式证书
openssl x509 -inform PEM -subject_hash_old -in <证书文件.pem>
2.3 新建新证书文件,操作见 2.2 步骤截图
2.4 重新编译原证书 成一个 新证书
# cer格式
openssl x509 -inform DER -text -in xxx.cer 269953fb.0
# pem格式
openssl x509 -inform PEM -text -in xxx.pem 269953fb.0
2.5 上传 新证书,使新证书为 系统证书
adb push C:Users23983Desktop269953fb.0 /sdcard
# /system 目录只读,我们需要赋予读写权限,然后重新挂载
adb shell
mount -o remount,rw /system
# 把新证书放到 /system/etc/security/cacerts/ 目录下
cp /sdcard/269953fb.0 /system/etc/securtiy/cacerts/
# 给新证书 重新授权
chmod 644 /system/etc/security/cacerts/269953fb.0
# 重启
reboot
3. 之后其他的就是正常的抓包设置
例如:设置抓包代理等等