把 charles,Fiddler 證書安裝到安卓根目錄,解決安卓微信 7.0 版本以后安裝證書也無法抓包問題,需要 root


 

首先文章解決的是安卓手機安裝證書后依然無法抓包 https 請求。

問題背景

  1. 安卓系統>7.0,且應用不信任用戶安裝的證書文件
 

 

Fiddler 證書安裝到安卓根目錄

  1. 下載 fiddler 證書到電腦上
  2. 打開命令窗口,執行以下命令,查看證書信息
openssl x509 -inform DER -subject_hash_old -in FiddlerRoot.cer

 

 

 

  1. 保存上圖執行命令后第一行輸出內容,轉換證書格式:,把上個命令第一行輸入內容,命名為新文件名稱 +.0 后綴格式
openssl x509 -inform DER -in FiddlerRoot.cer -text > e5742ab9.0
  1. 編輯輸出的文件,把"-----BEGIN CERTIFICATE-----"到文件結束這部分移動到文件首部
  2. 執行 adb 命令連接手機,獲取權限,把文件夾掛載為讀寫模式,把文件復制到證書根目錄
adb root

adb remount

adb shell mount -o rw,remount /system

adb push e5742ab9.0 /system/etc/security/cacerts

  1. 以上就 OK 了。如果不放心可以 cd 到對應目錄,檢查文件是否存在,文件權限是否與其他證書一致
  2. 證書安裝 OK,其他代理選項正常配置即可

Charles 證書安裝到安卓根目錄

  1. 下載證書到電腦上
  2. 打開命令窗口執行以下命令,查看證書信息
openssl x509 -subject_hash_old -in charles-ssl-proxying-certificate.pem

 

 

 

  1. 保存上圖執行命令后第一行輸出內容,轉換證書格式:,把上個命令第一行輸入內容,命名為新文件名稱 +.0 后綴格式
mv charles-ssl-proxying-certificate.pem e5742ab9.0
  1. 執行 adb 命令連接手機,獲取權限,把文件夾掛載為讀寫模式,把文件復制到證書根目錄
adb root

adb remount

adb shell mount -o rw,remount /system

adb push e5742ab9.0 /system/etc/security/cacerts

  1. 以上就 OK 了。如果不放心可以 cd 到對應目錄,檢查文件是否存在,文件權限是否與其他證書一致
  2. 證書安裝 OK,其他代理選項正常配置即可

問題解決

  1. error: no devices/emulators found 或者 adb: unable to connect for root: no devices/emulators found
adb disable-verity 

adb reboot  # 重啟

然后重新按照上面的步驟操作

如果提示 adb 命令參數錯誤,找一個版本高點的 adb 工具包


免責聲明!

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



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