mitmproxy——抓取http、https


  mitmproxy是一個支持HTTP和HTTPS的抓包程序,有類似Fiddler、Charles的功能。除了命令行形式的控制台,mitmproxy還有兩個關聯組件:mitmdump和mitmweb。

  mitmdump:它是mitmproxy的命令行接口,利用它我們可以對接Python腳本,用Python實現監聽后的處理。

  mitmweb:它是一個Web程序,通過它我們可以清楚觀察mitmproxy捕獲的請求。

  mitmproxy使用:

  終端鍵入:

    $ mitmproxy --listen-host 電腦IP地址 -p 端口號

    出現初始界面

手機連上手動代理后出現抓包信息

 

很好用的教程:https://greenrobot.me/devpost/how-to-debug-android-http-get-started/

 這樣就能使用mitmproxy抓到http請求了!

但是!這時會發現mitmproxy不僅抓不到https請求,而且還會阻斷https請求!

解決辦法:

  啟動mitmproxy之后,手機網頁搜索mitm.it選擇匹配的證書下載安裝之后就能抓到https的請求了~

  雖然只用了一句話就解決這個問題了,但是我試了好久~哭唧唧~這個mitm.it我嘗試了好多次才能正常訪問~不知道咋回事~

  終於弄出來了,給自己呱唧呱唧!

接下來的問題就是,怎樣能把想要的信息打印出來?

  mitmdump提供了專門的日志輸出功能,可以設定不同級別以不同顏色輸出結果。ctx模塊有log功能,調用不同的輸出方法就可以輸出不同顏色的結果,以方便我們做調試。

  簡單的嘗試一下:

from mitmproxy import ctx


def request(flow):

    flow.request.headers['User-Agent'] = 'MitmProxy'


    ctx.log.info(str(flow.request.headers))

    flow.request.query["who"] = "baby!"

    ctx.log.warn(str(flow.request.query))

    ctx.log.error(str(flow.request.headers))

 

敲好用的良心教程:https://juejin.im/entry/5b3473b7e51d4558cf6e9abe 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM