本篇文章內容介紹Fiddler手機抓包
閱讀目錄
- 手機抓包的作用
- Fiddler手機抓包的原理
- 手機抓包環境的准備
- 設置Fiddler允許遠程電腦連接
- 設置手機的WLAN網絡和代理
- 測試Fiddler監聽手機HTTP
- iOS手機安裝證書
- 測試Fiddler監聽手機HTTPS
- Android手機安裝證書
- 卸載Fiddler證書
手機抓包的作用
Fiddler不但可以監聽PC計算機上的HTTP/HTTPS報文,也可以監聽手機上發出的HTTP/HTTPS報文。
要學習Fiddler手機抓包,那么要知道Fiddler對手機的抓包有什么用呢?
1.用於對移動端站點的接口進行測試,分析數據。
2.用於修改手機的請求或響應 。
3.用於Fiddler對手機端的響應進行重定向,把HTTP請求轉發到本地開發環境,提高程序調試和測試的效率。
例如:對運行在微信公眾號中的站點的接口進行測試或調試,還有微信小程序,小程序只能在手機上運行,所以必須用手機抓包。
Fiddler手機抓包的原理

手機抓包環境的准備
1.電腦上已經安裝Fiddler
2.手機和電腦處在同一局域網
設置Fiddler允許遠程電腦連接
要想讓電腦上的Fiddler能監聽手機上的報文,我們首先要設置Fiddler允許遠程電腦連接,啟動Fiddler,單擊菜單欄中Tools->Options->Connections選項卡,勾上“Allow Remote computer to connect”,點擊“OK”(設置后記得要重啟Fiddler)

設置手機的WLAN網絡和代理
只設置Fiddler允許遠程連接還不夠,還要設置手機的網絡和代理
(1)設置手機的網絡連接和電腦處於同一個無線網絡
(2)手動設置手機WLAN的HTTP代理
先要讓手機的和電腦處於同一個無線網絡,然后把手機的HTTP代理設置為和電腦一樣的ip地址, 要知道電腦的網絡ip地址, 可通過cmd命令ipconfig查看電腦的ip地址

從上圖得知我的電腦ip地址是192.168.1.124,所以手機連的無線局域網中把HTTP代理設置的服務器ip填此地址,端口號填8888, 如下圖所示

測試Fiddler監聽手機HTTP
我們此時就可以來監聽手機發出的HTTP報文了,在手機瀏覽器中輸入http://www.5khouse.com,前往此地址

此時fiddler就能監聽到手機瀏覽器發出的HTTP報文了,如下圖所示

但是如果瀏覽器里面輸入的是https://www.baidu.com,則會出現如下無法訪問的情況

這是因為Fiddler要監聽HTTPS的數據報文,手機里面必須安裝Fiddler證書。
iOS手機安裝證書
這里以iphone XR為例,打開iOS手機內置的的Safari瀏覽器,在地址欄中輸入http://ipaddress:8888 ,這里我的 ipaddress 就是我計算機的內網地址 192.168.1.124,所以就是 http://192.168.1.124:8888

前往此地址

點擊FiddlerRoot certificate,選擇允許

點擊安裝

如果手機設置了鎖屏密碼,則彈出密碼框要求輸入鎖屏密碼,輸入完密碼后點擊安裝就把證書安裝成功了。

測試Fiddler監聽手機HTTPS
接下來測試fiddler監聽手機端HTTPS報文,在此之前先保證Fiddler本身是可以監聽HTTPS請求報文的,設置如下:

訪問https://www.baidu.com,但是往往此時仍然無法訪問HTTPS網站,這是因為安裝的證書默認沒有啟用,需要手動去開啟。
在手機中依次進入 設置 –> 通用 –> 關於本機 –> 證書信息設置,將Fiddler的證書開關打開就好了

Android手機安裝證書
安卓系統的手機用上面這種方法經常不容易成功,可以把證書從電腦中導入手機里面進行安裝,
單擊菜單欄中Tools->Options->HTTPs選項卡,點擊"Actions",在彈出的列表中選擇“Export Root Certificate to Desktop”

點擊過后,證書就會導出到桌面上,證書的文件名為FiddlerRoot.cer 。
接下來把證書復制到手機當中,可以采取通過PC端的微信發到手機微信中
接收的文件是存放在tencent->MicroMsg->Download路徑中

通過進入手機的 設置->更多設置->系統安全->從SD卡安裝->內部存儲空間,找到tencent->MicroMsg->Download文件夾中的這個文件,點擊安裝,會提示為證書取一個名字,隨便取一個好記的名字。

點擊"確定"按鈕就安裝好了。
卸載手機的Fiddler證書
想要卸載Fiddler證書,這里以iOS系統為例
在手機中依次進入 設置 –> 通用 –> 描述文件 ,將Fiddler的證書移除就好了

