设备:华为p9
华为p9,mitmproxy 抓包安卓7以上ca证书安装方法 安卓7到9 (包含)
zhuanlan.zhihu.com/p/259255855
用charles或fiddler抓app包的https接口必须要安装ca证书,才能正常抓包,
安卓7之前把ca证书安装到用户证书下即可,但安卓7以上只有系统级证书才能被信任,所以为了能正常抓包,需要把ca证书安装到系统证书下
准备工作:
电脑安装了Charles(其他抓包工具也是一样的原理) 一台已root手机(模拟器也可以,但部分app会检测) 电脑安装adb 没准备好的网上找吧,很多相关内容
Charles基础配置也到网上找吧,只说抓取https的配置
Proxy > SSL Proxying Settings > add . 或者*.443
制作证书
1、 导出证书
# 使用adb 导出证书到电脑
➜ Downloads adb pull /sdcard/baidu/searchbox/downloads/cer.crt
用手机的第三方浏览器,比如 夸克(小米自带浏览器不行),通过微信等方式,传递给电脑。
➜ Desktop openssl x509 -inform PEM -subject_hash_old -in mitmproxy-ca-cert.cer
c8750f0d
-----BEGIN CERTIFICATE-----
MIIDoTCCAomgAwIBAgIGDsX46zf/MA0GCSqGSIb3DQEBCwUAMCgxEjAQBgNVBAMM
省略
-----END CERTIFICATE-----
重命名
➜ Desktop mv mitmproxy-ca-cert.cer c8750f0d.0
导入手机
连接手机shell
➜ Desktop adb -s PBV7N16826002589 shell
127|HWEVA:/ $ su
HWEVA:/ # cd /system/etc/security/cacerts
HWEVA:/system/etc/security/cacerts # mount -o rw,remount /system
或者
1|olivelite:/system/etc/security/cacerts # mount -o rw,remount /
推送
➜ 这台电脑的安卓mitmproxy证书 adb push c8750f0d.0 /sdcard/
c8750f0d.0: 1 file pushed. 0.1 MB/s (1318 bytes in 0.018s)
HWEVA:/ # cd sdcard/
1|HWEVA:/sdcard # mv c8750f0d.0 /system/etc/security/cacerts
HWEVA:/sdcard #
重启
reboot