Android7以上https抓包
阿新 • • 發佈:2021-07-20
1. 問題描述
1.1 執行環境
1.2 問題描述
- virtualXposed 不一定支援Android模擬器
- 無法抓包 https 請求
1.3 問題原因
Android7 以後,系統分了系統證書和使用者證書,使用者安裝的fiddler屬於使用者證書,抓https的請求需要系統證書才行
1.4 抓包工具
fiddler
2. 解決步驟
主要就是把 fiddler 從 使用者證書 轉到 系統證書
2.1 解決需要的環境(自行下載、安裝和配置)
- cer/pem:抓包證書
- adb:用來上傳操作手機
- openssl:用來編譯證書
2.2 首先計算 原證書的 hash值
# .cer格式證書 openssl x509 -inform DER -subject_hash_old -in <證書檔案.cer> # .pem格式證書 openssl x509 -inform PEM -subject_hash_old -in <證書檔案.pem>
2.3 新建新證書檔案,操作見 2.2 步驟截圖
2.4 重新編譯原證書 成一個 新證書
# cer格式
openssl x509 -inform DER -text -in xxx.cer 269953fb.0
# pem格式
openssl x509 -inform PEM -text -in xxx.pem 269953fb.0
2.5 上傳 新證書,使新證書為 系統證書
adb push C:\Users\23983\Desktop\269953fb.0 /sdcard # /system 目錄只讀,我們需要賦予讀寫許可權,然後重新掛載 adb shell mount -o remount,rw /system # 把新證書放到 /system/etc/security/cacerts/ 目錄下 cp /sdcard/269953fb.0 /system/etc/securtiy/cacerts/ # 給新證書 重新授權 chmod 644 /system/etc/security/cacerts/269953fb.0 # 重啟 reboot
3. 之後其他的就是正常的抓包設定
例如:設定抓包代理等等