android 7.0之后导入证书解决fiddler等软件无法解析加密报文 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 技术分享 >

android 7.0之后导入证书解决fiddler等软件无法解析加密报文

发表时间:2020-10-19

发布人:葵宇科技

浏览次数:48

背景

7.0之后Android默认不相信用户自己安装的证书,需要程序自己实现是否相信用户证书。在此背景下,fiddler无法抓包https加密的报文,这种情况下解决办法只有两个,一个是不用android7.0以上的设备。。通常模拟器都是6.0目前,所以还可以。还有一个方法就是安装系统的根证书。我们这里就采用的第二个方法。

条件

一台root的手机,这里使用的是nexus6p

方式

1.先从fiddler中下载需要的证书,即在本地8888端口下载即可。我这里下载到的证书名字为:fiddlerRoot.cer

2.得到证书的哈希值:

openssl x509 -inform DER -subject_hash_old -in fiddlerRoot.cer | head -1
得到类似字符串:e5c3944b

(网上看到,如果是crt格式证书,命令为:openssl x509 -inform PEM -subject_hash_old -in CA_Name.crt | head -1)

3.重命名文件,将证书命名为e5c3944b.0

4.拷贝文件到手机存放根证书的目录:我这里不知道为什么直接adb进行root操作不行,所以是先拷贝到sdcard,然后再mv到存放根证书的目录

1)adb push e5c3944b.0 /sdcard/tmp/e5c3944b.0

2) adb shell

3) root权限 :su

4)重新挂载system分区为可读写:mount -o rw,remount /system

5) mv /sdcard/tmp/e5c3944b.0 /system/etc/security/cacerts/e5c3944b.0

6) cd /system/etc/security/cacerts

6) chmod 644 e5c3944b.0

5.重启设备即可

上述一顿操作之后,就可以实现大多数应用的ssl解密了,还不行的试试xposed插件,justtrustme,可以破解ssl pining

相关案例查看更多