1、mitmproxy的介紹
- mitmproxy 就是用於 MITM 的 proxy,MITM 即中間人攻擊(Man-in-the-middle attack)。用於中間人攻擊的代理首先會向正常的代理一樣轉發請求,保障服務端與客戶端的通信,其次,會適時的查、記錄其截獲的數據,或篡改數據,引發服務端或客戶端特定的行爲。
- mitmproxy可以用個使用python腳本截獲請求信息進入修改重新發送給服務端;也可以通過截獲響應信息,修改返回給客戶端
- 這個的優勢是修改腳本,保存即會生效
2、安裝與使用
2.1、安裝
- mac端安裝軟件:brew install mitmproxy
- Windows端安裝軟件:在https://github.com/mitmproxy/mitmproxy/releases/上下載對應的exe安裝包,點擊安裝即可
2.2、啓動mitmproxy代理
- 指定端口啓動:mitmweb -p 5050
- 指定腳本啓動:mitmweb -p 5050 -s xxx.py(在該腳本目錄下執行,否則需要寫絕對路徑)
- 在服務器上啓動(指定端口、指定web頁面的端口):mitmweb -p 6666 --web-iface 0.0.0.0 --web-port 8081 --set block_global=false(注意:在阿里雲服務器上要開發代理端口和web頁面打開的端口,使其能夠正常使用)
2.3、手機端證書安裝
- ios端:在瀏覽器中打開mitm.it網站,下載apple類型進行安裝,在“設置–>通用–>關於本機–>證書信任設置”信任該證書,就可以抓包https鏈接
- Android端:在瀏覽器中打開mitm.it網站,下載Android類型進行安裝。
- pc端:在瀏覽器中打開mitm.it網站,下載apple類型進行安裝。
2.4、使用該軟件抓包
- 啓動好mitmproxy後,在手機中設置代理服務器的ip和端口
- 若是電腦端啓動,ip爲電腦端鏈接wifi的ip,端口爲啓動時候設置的端口
- 若是服務器端啓動,ip爲服務器的ip,端口爲啓動時候設置的端口