android 7.0之(zhī)後導入證書解決fiddler等軟件無法解析加密報文
發表時(shí)間:2020-10-19
發布人(rén):融晨科技
浏覽次數:214
背景
7.0之(zhī)後Android默認不(bù)相信用戶自己安裝的(de)證書,需要(yào / yāo)程序自己實現是(shì)否相信用戶證書。在(zài)此背景下,fiddler無法抓包https加密的(de)報文,這(zhè)種情況下解決辦法隻有兩個(gè),一個(gè)是(shì)不(bù)用android7.0以(yǐ)上(shàng)的(de)設備。。通常模拟器都是(shì)6.0目前,所以(yǐ)還可以(yǐ)。還有一個(gè)方法就(jiù)是(shì)安裝系統的(de)根證書。我們這(zhè)裏就(jiù)采用的(de)第二個(gè)方法。
條件
一台root的(de)手機,這(zhè)裏使用的(de)是(shì)nexus6p
方式
1.先從fiddler中下載需要(yào / yāo)的(de)證書,即在(zài)本地(dì / de)8888端口下載即可。我這(zhè)裏下載到(dào)的(de)證書名字爲(wéi / wèi):fiddlerRoot.cer
2.得到(dào)證書的(de)哈希值:
openssl x509 -inform DER -subject_hash_old -in fiddlerRoot.cer | head -1
得到(dào)類似字符串:e5c3944b
(網上(shàng)看到(dào),如果是(shì)crt格式證書,命令爲(wéi / wèi):openssl x509 -inform PEM -subject_hash_old -in CA_Name.crt | head -1)
3.重命名文件,将證書命名爲(wéi / wèi)e5c3944b.0
4.拷貝文件到(dào)手機存放根證書的(de)目錄:我這(zhè)裏不(bù)知道(dào)爲(wéi / wèi)什麽直接adb進行root操作不(bù)行,所以(yǐ)是(shì)先拷貝到(dào)sdcard,然後再mv到(dào)存放根證書的(de)目錄
1)adb push e5c3944b.0 /sdcard/tmp/e5c3944b.0
2) adb shell
3) root權限 :su
4)重新挂載system分區爲(wéi / wèi)可讀寫: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.重啓設備即可
上(shàng)述一頓操作之(zhī)後,就(jiù)可以(yǐ)實現大(dà)多數應用的(de)ssl解密了(le/liǎo),還不(bù)行的(de)試試xposed插件,justtrustme,可以(yǐ)破解ssl pining