Mitmproxy(man-in-the-middle proxy)
一、什么是Mitmproxy?
二、Mitmproxy的工作原理與特性
三、Mitmproxy與Fiddler、Charles異同
四、安裝Mitmproxy,有兩種安裝方式
五、安裝Mitmproxy證書兩種方式
六、Mimtproxy配置常見問題
七、Mimtproxy應(yīng)用擴展
一、什么是Mitmproxy?
是一款免費、開放的基于Python 開發(fā)的交互式HTTPS代理工具。
二、Mitmproxy的工作原理與特性
工作原理如下:
client-->mitmproxy-->server
server-->mitmproxy-->client
特性:
1、支持Web
2、支持終端
3、支持Python腳本
4、可以記錄和重放
三、Mitmproxy與Fiddler、Charles異同
1、相同點
- 都是用來捕獲 HTTP,HTTPS 請求的(其他協(xié)議比如 TCP,UDP,IP,ICMP 等就用Wireshark)
- 抓包、斷點調(diào)試、請求替換、構(gòu)造請求、模擬弱網(wǎng)等
2、不同點
- Fiddler只能運行在Windows系統(tǒng);Mitmproxy、Charles是跨平臺的,可運行在Windows、Mac或Linux系統(tǒng)等。
- Fiddler、Mitmproxy開源免費、Charles是收費的(可破解)。
- Mitmproxy支持命令行交互模式、GUI界面,F(xiàn)iddler、Charles僅支持GUI界面(Fiddler底部有個命令行工具叫做 QuickExec)
四、安裝Mitmproxy,有兩種安裝方式
1、pip install mitmproxy
mitmproxy 提供了三個命令,啟動模式不同:
- mitmproxy -> 提供一個命令行界面(該命令不支持windows)。
- mitmdump -> 提供一個簡單的終端輸出。
- mitmweb -> 提供一個瀏覽器界面。
2、進入Mitmproxy.org,下載安裝包
依賴項:
五、安裝Mitmproxy證書兩種方式
1、 進入C:\Users\用戶.mitmproxy目錄,PC安裝mitmproxy-ca-cert.p12,手機安裝mitmproxy-ca-cert.pem,手機安裝完成后,添加信任
2、 在手機wifi或瀏覽器中,手動設(shè)置代理后,瀏覽器輸入mitm.it,選擇對應(yīng)的系統(tǒng)證書,下載完成后,去設(shè)置-描述文件中安裝,添加信任
六、Mimtproxy配置常見問題
1、 打開mitm.it,顯示“Invalid host header”
確認wifi中設(shè)置的端口號是否有沖突,使用mitmdump –p 8889修改監(jiān)聽端口號,重新設(shè)置代理
2、 打開mitm.it,顯示If you can see this, traffic is not passing through mitmproxy.
未配置代理
3、 打開mitm.it,一直加載中不顯示任何內(nèi)容
確認是否打開其他代理