由於安卓7.1后采用了SSL pining技術,導致即使在手機或PC端已安裝根證書場景下,抓出來的包仍然顯示Tunnel to 443;解決辦法就是xposed + JustTrustMe;
Xposed框架安裝
安裝Xposed框架的前提是手機具有root權限,由於我用的華為榮耀V10手機在出廠時對BootLoader加了鎖,因此需要先對其解鎖后再root;
- 淘寶找商家幫忙獲取BootLoader解鎖碼,解鎖碼是16位數字;記得當時我是花了50塊錢解鎖BL,對方說花100塊可以直接root, 我以為解鎖BL后很容易就可以root,被我斷然拒絕;事后看真應該聽人家的,少吃兩頓飯,能省不少時間在上面;解鎖后手機系統從EMUI 10.0變成EMUI 8.0了;
- 雙擊打開華為工具箱,點擊解鎖bootloader后輸入16位解鎖碼,然后根據指引解鎖華為手機;
- 解壓His96X_TWRP_8.X_v2(rec).rar,雙擊run.bat根據里面的教程刷入第三方recovery;
- 在手機上安裝XposedInstaller_3.1.5.apk,然后將xposed-v90-sdk26-arm64-beta4-test1.zip和xposed-uninstaller-20180117-arm64.zip放到內存或SD卡上;
- 進入到recovery界面(關機狀態下同時按住開機鍵+音量上鍵進入,或者在手機連上電腦情況下通過華為工具箱中重啟到Recovery進入),點擊“安裝”后選擇上一步所放zip的目錄刷入重啟即可;
- 對於安卓8.0系統,一定要用xposed-v90-sdk26-arm64-beta4-test1這個xposed框架,其他如xposed-v90-beta3會出現刷完變磚的情況;
- 上面所提軟件都歸檔在這里,提取碼為k6ij;
JustTrustMe安裝
安裝完Xposed框架后,下載JustTrustMe並安裝(注意該apk安裝后是沒有桌面圖標的),安裝完后進入xposed->模塊,勾選即激活了,后面抓包遇到https消息就可以正常解析出來了;
安裝抓包軟件
手機端抓包:Packet Capture
安裝Packet Capture軟件就好
PC端抓包:Fiddler
要在PC端抓手機的上網請求,需要保證手機與PC處於同一局域網內,同時進行如下設置:
1. PC端設置
Fiddler -> Tools -> Options... -> HTTPS;勾選Capture HTTPS CONNECTs以及Decrypt HTTPS traffic:

另外去Connections中設置Fiddler監聽端口號(保持默認8888就可以),同時勾選Allow remote computers to connect;

最后查看PC端所連WIFI地址,如下192.168.101.5:

2. 手機端設置
在手機設置->無線和網絡->WLAN中,為手機所連Wifi手動添加代理,服務器主機名填PC端IP:192.168.101.5,服務器端口填Fiddler監聽地址:8888;
設置好后,手機發出的請求就可以通過代理從而能夠被Fiddler攔截並解析了;
FAQ
1. adb devices返回could not read ok from ADB Server
問題現象:開發者模式已打開、USB調試開關已打開情況下,使用奇兔刷機助手或者華為手機實用工具箱都連接不上手機,adb devices則彈出如下錯誤

問題原因:5037端口被占用了,netstat -ano | findstr 5037檢查一下

解決辦法:Ctrl + Alt + Delete打開任務管理器,找到該pid,關閉任務
2. adb devices返回unauthorized
當前還未找到辦法,當前使用了奇兔刷機的TWRP來安裝xposed框架;
