1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
准备
一台已root的手机
Openssl
证书生成
将Filddler或者其他抓包程序的证书导出,一般为xxx.cer或者xxx.pem

使用openssl的x509指令进行cer证书转pem证书 和 用md5方式显示pem证书的hash值

#1. 证书转换,已经是pem格式的证书不需要执行这一步
openssl x509 -inform DER -in xxx.cer -out cacert.pem

#2. 进行MD5的hash显示

#openssl版本在1.0以上的版本的执行这一句
openssl x509 -inform PEM -subject_hash_old -in cacert.pem

#openssl版本在1.0以下的版本的执行这一句
openssl x509 -inform PEM -subject_hash -in cacert.pem

将第二条指令输出的类似347bacb5的值进行复制

tips: 查看openssl版本的指令openssl version

将pem证书重命名
使用上面复制的值(类似于347bacb5)对pem证书进行重命名

mv cacert.pem 347bacb5.0
1
将新证书放入手机系统证书目录
手机系统目录位置是:

/system/etc/security/cacerts

需要拷贝至此目录必须拥有root权限

重启Android设备以生效
拷贝证书至/system/etc/security/cacerts之后,重启手机就可以使证书生效了

error

Read-only file system

mount -o exec

mount -o rw,remount /system

mount -o rw,remount /system

mount -o rw,remount /

adb root; adb remount

都试试

1
2
3
4
5
6
7
8
9
10
11
12
1|sailfish:/data/local/tmp # mount - o rw,remount /system
mount: Max 2 arguments

v 9a5ba575.0 /system/etc/security/cacerts/ <
mv: /system/etc/security/cacerts//9a5ba575.0: Read-only file system
v 9a5ba575.0 /system/etc/security/cacerts/ <
mv: /system/etc/security/cacerts//9a5ba575.0: Read-only file system
v 9a5ba575.0 /system/etc/security/cacerts/ <
mv: /system/etc/security/cacerts//9a5ba575.0: Read-only file system
v 9a5ba575.0 /system/etc/security/cacerts/ <
mv: /system/etc/security/cacerts//9a5ba575.0: Read-only file system
1|sailfish:/data/local/tmp #

adb push ~/Downloads/9a5ba575.0 /data/local/tmp

cd /data/local/tmp

cp 9a5ba575.0 /system/etc/security/cacerts/

mount -o remount,rw /sysyem/bin

mount - o remount,rw /

cp 9a5ba575.0 /system/etc/security/cacerts/

mv /data/local/tmp/9a5ba575.0 /system/etc/security/cacerts/9a5ba575.0

img

Links

Android 7 以上版本,绕过CA限制,抓取https

https://www.jianshu.com/p/035f7d7a0f7e

给Android7及以上的手机安装系统级证书,实现Fiddler或者其他程序的HTTPS的抓包

https://blog.csdn.net/djzhao627/article/details/102812783