Fiddler 模擬器抓包,SSL抓包不到


 之前安裝了Fiddler 抓包雷電模擬器中的數據,很容易抓包到,最近測試抓包,但是一直抓包不到數據,網友反映是因為雷電升級了的原因,4.0以上都抓包不到了

今天安裝了逍遙模擬器,設置好后,馬上就抓包到了,但是SSL的https,抓包不到實質數據,全部提示:Tunnel to

 

 

 

網上搜索了一堆,找到了解決方案:

原因:之前在模擬器中安裝證書的時候,是直接訪問PC端的地址+端口,下載並安裝證書的,這樣證書安裝后會在用戶證書這里

但是現在的SSL,需要把證書推到系統證書里面才行

安卓上證書的目錄是放在 /System/etc/security/cacerts 中,但是不能直接把證書從PC端復制到安卓中

所以需要做幾件事情

1.從Fiddler中導出證書,導出來的證書一般是.cer 格式的,我們要把它轉換成 .pem 格式。

   轉換格式的時候,需要用於命令:

  使用openssl的時候,命令出錯的話,需要先下載一個openssl 並安裝

 

https://slproweb.com/products/Win32OpenSSL.html

#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 

 

 

  命令執行后生成 269953fb, 然后把這個pem文件手工修改成 269953fb.0

   將pem證書重命名,使用上面復制的值(類似於269953fb)對pem證書進行重命名,

  用 mv cacert.pem  269953fb.0 會出錯,我就手工修改了。可能是mv這個命令我這邊環境不對

 

2. 再用adb命令把這個改名后的證書文件推送到系統證書里面去。不能手工從PC復制進去,也找不到這個目錄

    

adb root
adb remount
adb disable-verity
adb push 269953fb.0 /system/etc/security/cacerts
adb enable-verity
adb reboot

 

 執行到這里,重啟一下模擬器,就可以抓到包了

 

 

參考:

https://blog.csdn.net/weixin_53485288/article/details/118786741

https://helloworddm.blog.csdn.net/article/details/98363056


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM