手機app數據的爬取之mitmproxy安裝教程


mitmproxy是一個支持HTTP和HTTPS的抓包程序,類似Fiddler、Charles的功能,只不過它通過控制台的形式操作。

此外,mitmproxy還有兩個關聯組件,一個是mitmdump,它是mitmproxy的命令行接口,利用它可以對接Python腳本,實現監聽后的處理;另一個是mitmweb,它是一個Web程序,通過它以清楚地觀察到mitmproxy捕獲的請求。

本節中,我們就來了解一下mitmproxy、mitmdump和mitmweb的安裝方式。

1. 相關鏈接

2. pip安裝

最簡單的安裝方式還是使用pip,直接執行如下命令即可安裝:

 

 

這是最簡單和通用的安裝方式,執行完畢之后即可完成mitmproxy的安裝,另外還附帶安裝了mitmdump和mitmweb這兩個組件。如果不想用這種方式安裝,也可以選擇后面列出的專門針對各個平台的安裝方式或者Docker安裝方式。

3. Windows下的安裝

可以到GitHub上的Releases頁面(鏈接為:https://github.com/mitmproxy/mitmproxy/releases/)獲取安裝包,如圖1-59所示。圖1-59 下載頁面

比如,當前的最新版本為2.0.2,則可以選擇下載Windows下的exe安裝包mitmproxy-2.0.2-windows-installer.exe,下載后直接雙擊安裝包即可安裝。

注意,在Windows上不支持mitmproxy的控制台接口,但是可以使用mitmdump和mitmweb。

4. Linux下的安裝

在Linux下,可以下載編譯好的二進制包(下載地址https://github.com/mitmproxy/mitmproxy/releases/),此發行包一般是最新版本,它包含了最新版本的mitmproxy和內置的Python 3環境,以及最新的OpenSSL環境。

如果你的環境里沒有Python 3和OpenSSL環境,建議使用此種方式安裝。

下載之后,需要解壓並將其配置到環境變量:

 

 

這樣就可以將3個可執行文件移動到了/usr/bin目錄。而一般情況下,/usr/bin目錄都已經配置在了環境變量下,所以接下來可以直接調用這3個工具了。

5. Mac下的安裝

Mac下的安裝非常簡單,直接使用Homebrew即可,命令如下:

 

 

執行命令后,即可完成mitmproxy的安裝。

6. Docker安裝

mitmproxy也支持Docker,其DockerHub的地址為https://hub.docker.com/r/mitmproxy/mitmproxy/

在Docker下,mitmproxy的安裝命令為:

 

 

這樣就在8080端口上啟動了mitmproxy和mitmdump。

如果想要獲取CA證書,可以選擇掛載磁盤選項,命令如下:

 

 

這樣就可以在~/.mitmproxy目錄下找到CA證書。

另外,還可以在8081端口上啟動mitmweb,命令如下:

 

 

更多啟動方式可以參考Docker Hub的安裝說明。

7. 證書配置

對於mitmproxy來說,如果想要截獲HTTPS請求,就需要設置證書。mitmproxy在安裝后會提供一套CA證書,只要客戶端信任了mitmproxy提供的證書,就可以通過mitmproxy獲取HTTPS請求的具體內容,否則mitmproxy是無法解析HTTPS請求的。

首先,運行以下命令產生CA證書,並啟動mitmdump:

 

 

接下來,我們就可以在用戶目錄下的.mitmproxy目錄里面找到CA證書,如圖1-60所示。

圖1-60 證書文件

證書一共5個,表1-1簡要說明了這5個證書。

表1-1 5個證書及其說明

名稱

描述

mitmproxy-ca.pem

PEM格式的證書私鑰

mitmproxy-ca-cert.pem

PEM格式證書,適用於大多數非Windows平台

mitmproxy-ca-cert.p12

PKCS12格式的證書,適用於Windows平台

mitmproxy-ca-cert.cer

與mitmproxy-ca-cert.pem相同,只是改變了后綴,適用於部分Android平台

mitmproxy-dhparam.pem

PEM格式的秘鑰文件,用於增強SSL安全性

下面我們介紹一下Windows、Mac、iOS和Android平台下的證書配置過程。

Windows

雙擊mitmproxy-ca.p12,就會出現導入證書的引導頁,如圖1-61所示。

圖1-61 證書導入向導

直接點擊“下一步”按鈕即可,會出現密碼設置提示,如圖1-62所示。

圖1-62 密碼設置提示

這里不需要設置密碼,直接點擊“下一步”按鈕即可。

接下來需要選擇證書的存儲區域,如圖1-63所示。這里點擊第二個選項“將所有的證書都放入下列存儲”,然后點擊“瀏覽”按鈕,選擇證書存儲位置為“受信任的根證書頒發機構”,接着點擊“確定”按鈕,然后點擊“下一步”按鈕。

圖1-63 選擇證書存儲區域

最后,如果有安全警告彈出,如圖1-64所示,直接點擊“是”按鈕即可。

圖1-64 安全警告

這樣就在Windows下配置完CA證書了。

Mac

Mac下雙擊mitmproxy-ca-cert.pem即可彈出鑰匙串管理頁面,然后找到mitmproxy證書,打開其設置選項,選擇“始終信任”即可,如圖1-65所示。

圖1-65 證書配置

iOS

將mitmproxy-ca-cert.pem文件發送到iPhone上,推薦使用郵件方式發送,然后在iPhone上可以直接點擊附件並識別安裝,如圖1-66所示。

圖1-66 證書安裝頁面

點擊“安裝”按鈕之后,會跳到安裝描述文件的頁面,點擊“安裝”按鈕,此時會有警告提示,如圖1-67所示。

圖1-67 安裝警告頁面

繼續點擊右上角的“安裝”按鈕,安裝成功之后會有已安裝的提示,如圖1-68所示。

圖1-68 安裝成功頁面

如果你的iOS版本是10.3以下的話,此處信任CA證書的流程就已經完成了。

如果你的iOS版本是10.3及以上版本,還需要在“設置”→“通用”→“關於本機”→“證書信任設置”將mitmproxy的完全信任開關打開,如圖1-69所示。此時,在iOS上配置信任CA證書的流程就結束了。

圖1-69 證書信任設置

Android

在Android手機上,同樣需要將證書mitmproxy-ca-cert.pem文件發送到手機上,例如直接復制文件。

接下來,點擊證書,便會出現一個提示窗口,如圖1-70所示。

圖1-70 證書安裝頁面

這時輸入證書的名稱,然后點擊“確定”按鈕即可完成安裝。


免責聲明!

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



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