安卓手机添加系统证书方法(HTTPS抓包)
目錄1. 導出證書(以Charles為例)2. 安卓證書儲存格式3. 將導出的證書計算hash值4. 生成系統系統預設格式證書文件5. 上傳證書
安卓7.0以后,安卓不信任用戶安裝的證書,所以抓https時無法解碼請求,對于第三方應用,需要將證書添加為系統證書,網上解決方法較多,比如使用安卓模擬器(兼容性差,很多應用閃退),使用xposed框架等,這里使用安卓手機添加證書。
注:需要手機有root權限,以下操作以小米9 SE為準,其他品牌手機操作可能有差別。
1. 導出證書(以Charles為例)
help --> SSL Proxying --> Save Charles Root Certificate...
2. 安卓證書儲存格式
證書路徑:
/system/etc/security/cacerts
文件命名格式(如果計算出來的hash值已經存在則編號依次+1):
<證書Hash值>.編號
3. 將導出的證書計算hash值
需要安裝openssl: win10下安裝
//以下根據導出的證書格式2選1
//.cer格式證書
openssl x509 -inform DER -subject_hash_old -in 證書文件.cer
//.pem格式證書
openssl x509 -inform PEM -subject_hash_old -in 證書文件.pem
計算結果:
4. 生成系統系統預設格式證書文件
//cer格式
openssl x509 -inform DER -text -in xxx.cer > 0dd2455e.0
//pem格式
openssl x509 -inform PEM -text -in xxx.pem > 0dd2455e.0
最后編輯一下輸出的文件,把 -----BEGIN CERTIFICATE----- 到最后的這部分移動到開頭。結果如下
5. 上傳證書
上傳證書文件0dd2455e.0到手機/system/etc/security/cacerts路徑下。
方法1: 使用adb連接
執行:
1. adb push 0dd2455e.0 /sdcard
2. adb shell
3. su
4. mount -o remount,rw /system
#mount -o rw,remount /system
5. cp /sdcard/0dd2455e.0 /system/etc/security/cacerts/
6. chmod 644 /system/etc/security/cacerts/0dd2455e.0
方法2: 使用第三方文件管理器(推薦)
下載酷安市場app --> 分別搜索 Syslock 和 RE管理器 并下載安裝(其他應用市場下載也可以)
給 Syslock 和 RE管理器 root權限(以小米為例:安全中心-->應用管理-->權限-->ROOT權限管理-->找到應用并開啟)
打開Syslock并解鎖 /system (每次重啟后都得開啟一次)
將文件拷貝至手機中
使用RE管理器將文件拷貝到 /system/etc/security/cacerts 下
修改文件權限
到此然后重啟手機。就可以正常抓https數據包了。
也可以到手機 設置->安全->信任憑據-->系統 查看。
總結
以上是生活随笔為你收集整理的安卓手机添加系统证书方法(HTTPS抓包)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 保留意见、否定意见、无法表示意见的区别
- 下一篇: 羊城通薅羊毛6折公交算法