Charles抓安卓7.0及以上的https(windows)安卓手机抓包工具「Charles抓安卓7.0及以上的https(windows)」 - 文章中心
Charles抓安卓7.0及以上的https(windows)安卓手机抓包工具「Charles抓安卓7.0及以上的https(windows)」
2025-02-17

:手机需要root

 1、安装证书

help-SSL Proxying-Install Charles Root Certificate

2、检查当前证书:如果是可信任的,无需重新安装;如果是不可信任的,需要重新安装,参照如下

 3、点击“下一步”

4、点击“浏览,选择受信任的根证书颁发机构,点击下一步”至导入成功。

导入后,再次检查,证书应该为受信任状态,如下图

 5、保存证书文件到本地电脑中,名字随便起,后缀为“.pem”

6、 把证书文件导入虚拟机,使用命令计算出哈希值,以哈希值重命名证书文件,后缀为“.0”

openssl x509 -subject_hash_old -in '/home/browser/Desktop/charles.pem'

红字为需要替换的证书文件

99ba415f”为计算出来的哈希值

 7、用之前得到的哈希值重命名上一步的.pem文件,并将后缀pem改为0,最后得到证书文件,例如99ba415f.0”(这边pem文件不要直接替换,复制出来改,留一个后面步骤用

8、将证书文件导入手机/sdcard/Download/下

adb push 证书 /sdcard/Download/

9、 将正如copy到/system/etc/security/cacerts/下,更改文件权限为644,并重启设备,命令如下

cd /system/etc/security/cacerts/

cp /sdcard/Download/aa786bbf.0 https://blog.csdn.net/Instinctty/article/details/   (红色部分要用自己的)

如果第二步操作失败,请参照下节内容

10、问题一:如图 

解决方法

adb root

adb disable-verity

adb reboot

adb root

adb remount

adb shell

mount -o rw,remount /system

 如果上图中命令执行失败,解决方案参照步骤11

11、问题二:如图

解决方法

获取手机rootremount权限后,直接执行如下命令,更改为644权限,并重启设备

cp /sdcard/Download/99ba415f.0 https://blog.csdn.net/Instinctty/article/details/

12、手机中导入证书charles.pemsdcard

设置-WLAN-高级设置-安装证书,选择“charles.pem,输入“CA”,点击确定,提示“已安装CA”

13、验证结果:设置-安全-信任的凭证,滑到页面底部,可以看到如图证书

14、Proxy->Proxy Settings,设置端口,将Enable transp…前面的复选框勾上

15、 Proxy->SSL Proxying Settings,在Location下面点击Add增加

16、 关闭电脑防火墙(才会弹出允许连接的提示框),手机连接电脑ip代理,打开charles进行https抓包测试暂不确定需不需要这一步,目前未关闭防火墙也能抓包

  I   II   III   IV