利用mitmproxy實現抖音Cookie,設備ID獲取(一)
先講解一下思路,是利用mitmproxy代理https協議,從而判定抖音個人資訊介面,在個人資訊介面的返回體接收時將用戶資訊數據,以及Header頭(主要是Cookie),Query體(包含設備ID)進行遠程存儲,用於請求後續其他介面,從而實現抖音設備登錄授權,這個方法只有初次設備需要安裝證書這塊比較複雜,後續只要連接某個WIFI設置好代理地址就可以授權登錄了,抖音每次帳號登錄態持續時間較長,不易出現掉登的問題,所以能夠在帳號較多以及,掉登後重登讓業務人員也能夠自行登錄,避免開發人員每次去抓包更新登錄態的問題。
1.什麼是mitmproxy
?
用官網的簡單介紹:mitmproxy
是一個免費開源的互動式HTTPS代理。
簡單理解一下就是類似Fiddler
、Charles
的一個抓包工具,但是不同的是mitmproxy
是可編程的,可以根據提供的Python API
可進行編程,在代理中加入自己的業務邏輯程式碼,並且能夠篡改轉發返回以及請求體。
官網地址://www.mitmproxy.org/
2.安裝mitmproxy
安裝官方文檔針對環境需求進行安裝,我這裡採用pip安裝,只需要執行sudo pip3 install mitmproxy
命令即可,你也可以選擇通過其他方式進行安裝。
3.運行mitmproxy
在命令行中運行mitmdump
出現以下資訊則運行成功
Proxy server listening at //*:8080
手機連接代理
1.連接手機WIFI(測試階段需要連接統一區域網WIFI),隨後點擊紅圈處進行代理設置
2.點擊代理選擇手動輸入以下資訊
主機名: 這裡輸入運行`mitmdump`服務的區域網IP|線上環境則為外網IP
埠:8080(默認埠)
然後點擊右上角√保存
3.查看代理是否成功
手機上點擊或者訪問http網站,看到一下資訊則表示代理成功
但是隨後依舊會發現會出現大量的
這個情況是因為目前只是成功代理了HTTP協議而HTTPS協議還需要安裝證書信任才能正常代理,之前有用過Fiddler
、Charles
之類的童鞋應該是知道的。
4.安裝HTTPS信任證書
首先需要注意一點,IOS設備可以直接安裝證書,而Android手機7.0以下才能直接安裝證書而7.0+則需要ROOT將證書注入到系統中才能正常進行代理。
IOS:
4-1-1.用手機自帶瀏覽器 輸入mitm.it 訪問網站。
4-1-2.選擇Apple,允許配置描述文件的下載。
4-1-3.IOS設備進入手機設置-通用-描述文件-找到mitmproxy 點擊安裝。
4-1-4.IOS設備進入手機設置-通用-關於本機-證書信任設置 打開mitmproxy
Android:
這裡以7.0+設備為例,因為7.0以下流程與IOS基本相同,只需要下載安裝即可,默認信任 不用信任設置。
當前採用的是 紅米 5 Plus,開發版系統(默認ROOT)
安裝教程://docs.mitmproxy.org/stable/howto-install-system-trusted-ca-android/
5.查看HTTPS代理是否成功
殺死抖音進程,重啟抖音App點擊菜單中的 「我」
查看控制台可以發現用戶資訊介面已經代理成功(目前抖音版本搜索/user/profile/self/
)
目前已經完成了mitmproxy整個代理流程,後續將講解如何進行編程完成用戶資訊相關數據存儲,用於後續介面使用。
下一章:利用mitmproxy實現抖音Cookie,設備ID獲取(二)