charles——使用备忘
下载
https://www.charlesproxy.com/latest-release/download.do
模拟器抓包教程
https://blog.csdn.net/qq_24298751/article/details/126859135
https://zhuanlan.zhihu.com/p/565327085?utm_id=0
https://www.cnblogs.com/YouJeffrey/p/15334577.html
https://www.zzzmode.com/mytools/charles/
charles+https+安卓7.0+夜神模拟器,解决安卓7.0+版本https无法抓包问题
https://blog.csdn.net/u012150602/article/details/122309529
1、charles配置代理
PC安装证书
夜神模拟器安装证书
2、把安装的证书转成系统证书,
谷歌在安卓7.0修改了安全策略,安卓系统 大于 7.0 时, 应用不在信任用户安装的证书文件。用户添加的 CA 证书不能再用于安全连接,对于 https 传输的数据就抓取不到了,会显示<unknown>。
解决方法
降级 系统版本
将用户证书偷渡成系统证书,需要有 root 权限。将 charles 的 CA 证书安装进系统信任的证书目录下,这样在开启 charles 代理的时候,系统就会认为CA证书安全,从而可以获取 https 数据。
市场上各个手机root比较麻烦,这里直接采用夜神模拟器抓包(只是为了获取接口数据,不考虑功能兼容性)
下载证书: 电脑端浏览器输入 chls.pro/ssl 即可下载 charles-proxy-ssl-proxying-certificate.pem
openssl x509 -subject_hash_old -in C:\Users\Administator\Downloads\charles-proxy-ssl-proxying-certificate.pem 或 openssl x509 -inform PEM -subject_hash_old -in charlesroot.pem
重命名证书:016a1c82.0 (每个人的证书hash值不一样,每次导入证书都要重新生成这个值)
执行 adb 命令连接手机,获取权限,把文件夹挂载为读写模式,把文件复制到证书根目录
adb root
adb remount
adb shell mount -o rw,remount /system
adb push 016a1c82.0 /system/etc/security/cacerts