解决Charles不能抓到https的问题

1.用Charles导出证书,随便命名 charles.pem

 

 

2.安装open ssl(http://slproweb.com/products/Win32OpenSSL.html),然后配置环境变量,把openssl安装路径bin的路径(例如 C:\OpenSSL-Win64\bin)加入到操作系统的系统环境变量Path中

 

 

 


3.将导出的的证书(charles.pem)导入电脑中

4.在cmd中输入

openssl x509 -subject_hash_old -in <Certificate_File>  
<Certificate_File>为刚才下载的证书(charles.pem),这个路径为绝对路径


然后将 charles.pem 这个文件改为 生成的数字加.0,例如

 

 

 

5.然后在用前端根证书导入的方法导入证书
adb root
adb remount      
adb push 0505096d.0 /etc/security/cacerts/             
adb shell chmod 644 /etc/security/cacerts/0505096d.0

如果remount或push失败,需要执行以下命令
adb disable-verity
adb reboot

6.以上方法一般可以抓到了,如果还是不行,需要配置 Proxy——SSL Proxying Settings——SSL Proxying,勾选Enable ——SSL Proxying,点击“add”,将Host和Port配置为*,如下图所示:

 

posted @ 2019-09-26 09:43  舵把子  阅读(11458)  评论(0编辑  收藏  举报