把charles, Fiddler,BurpSuite证书安装到android根目录,解决抓包安卓App提示网络异常

问题背景

接着上回抓包异常解决办法是用xposed框架出现弊端,在使用的时候微信 抖音等不允许在xposed中,这回直接把证书安装到系统目录彻底解决安卓系统>7.0,且应用不信任用户安装的证书文件的问题

Fiddler证书安装到安卓根目录

  1. 下载fiddler证书到电脑上
  2. 打开命令窗口,执行以下命令,查看证书信息
    1
    2
    ## Fiddler文件
    openssl x509 -inform DER -subject_hash_old -in FiddlerRoot.cer
    Fiddler文件

保存上图执行命令后第一行输出内容,转换证书格式:,把上个命令第一行输入内容,命名为新文件名称+.0后缀格式,如果证书名字一样明明为文件名+.1即可,以此类推还可以文件名+.2 文件名+.3….

1
openssl x509 -inform DER -in FiddlerRoot.cer -text > e5742ab9.0

编辑输出的文件,把”—–BEGIN CERTIFICATE—–”到文件结束这部分移动到文件首部
执行adb命令连接手机,获取权限,把文件夹挂载为读写模式,把文件复制到证书根目录

1
2
3
4
5
6
7
adb root

adb remount

adb shell mount -o rw,remount /system

adb push e5742ab9.0 /system/etc/security/cacerts

以上就OK了。如果不放心可以cd 到对应目录,检查文件是否存在,文件权限是否与其他证书一致
证书安装OK,其他代理选项正常配置即可

Charles证书安装到安卓根目录

  1. 下载证书到电脑上
  2. 打开命令窗口执行以下命令,查看证书信息
    1
    openssl x509 -subject_hash_old -in charles-ssl-proxying-certificate.pem
    Charles文件

保存上图执行命令后第一行输出内容,转换证书格式:,把上个命令第一行输入内容,命名为新文件名称+.0后缀格式

1
mv charles-ssl-proxying-certificate.pem e5742ab9.0

执行adb命令连接手机,获取权限,把文件夹挂载为读写模式,把文件复制到证书根目录

1
2
3
4
5
6
7
adb root

adb remount

adb shell mount -o rw,remount /system

adb push e5742ab9.0 /system/etc/security/cacerts

以上就OK了。如果不放心可以cd 到对应目录,检查文件是否存在,文件权限是否与其他证书一致
证书安装OK,其他代理选项正常配置即可

问题解决

error: no devices/emulators found或者adb: unable to connect for root: no devices/emulators found

1
2
3
4
5
adb disable-verity 

adb reboot # 重启

然后重新按照上面的步骤操作

如果提示adb命令参数错误,找一个版本高点的adb工具包

Author: chacebai
Link: http://www.spyhex.com/2019/2019-把charles-Fiddler-BurpSuite证书安装到android根目录/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.