上篇Fiddler教程,我們教了大家Fiddler安裝配置及如何使用Fiddler進行基本的Http抓包及模擬請求,今天給大家介紹下如何使用Fiddler進行手機抓包。
運行環境為Windows 10,使用手機為iPhone 7,iOS11系統。
0. 准備工作
首先需要確保手機及電腦在同一個局域網內,如連接了同一個無線路由器。
1. Fiddler配置
1. 運行Fiddler后打開配置項:Tools –> Options

2. 打開配置項HTTPS,勾選“Capture HTTPS CONNECTs”,同時勾選“Decrypt HTTPS traffic”,彈出的安裝證書對話框時選擇“是”。如果需要監聽不可信的證書的HTTPS請求的話,需要勾選“Ignore server certificate errors (unsafe)”。

3. 選擇Connections選項卡,選中"Allow remote computers to connect":允許遠程機器(pc/手機)連接Fiddler作為代理(這也是為什么Fiddler可以抓取手機請求的原因),默認使用端口號為8888

4. 保存配置后,重啟Fiddler
2. iPhone配置
2.1 獲取Fiddler所在機器ip地址
使用ipconfig命令查看即可,如我們這里是192.168.2.177

2.2 配置iPhone無線局域網代理
1) 打開iPhone設置 -> 無線局域網,選擇並點擊我們已連接的無線網,進入無線網詳情頁面;下拉至最下方,選擇HTTP代理 -> 配置代理

2) 選擇手動,填入服務器IP及端口號后點擊“存儲”保存即可,如這里我們填入192.168.2.177及8888

2.3 安裝手機證書
這一步配置是為了Fiddler可以抓取手機上的HTTPS請求。如果你只需抓取HTTP請求,可以忽略這一步。
1) 在iPhone Safiri瀏覽器中打開http://192.168.2.177:8888,其中ip地址為Fiddler所在機器ip,8888為配置的Fiddler代理端口號
2) 點擊"FiddlerRoot certificate"下載證書

3) 在打開的“安裝描述文件”界面,點擊右上角“安裝”按鈕,輸入密碼后,選擇安裝即可

3. 抓包示例
1. 我們在Safiri瀏覽器中打開任意網址,如我的博客地址:http://www.cnblogs.com/lovesoo/,在Fiddler中可以看到本次HTTPS請求,其中UA是iphone

2. 我們打開任意APP,如手機QQ,在Fiddler中同樣可以看到QQ本次訪問的所有HTTP及HTTPS請求消息

同理,Android手機也是相同的操作步驟,在配置無線局域網代理及安裝證書后,就可以通過Fiddler抓取手機瀏覽器,APP等發出的HTTP或HTTPS類型請求了,在此恕不贅述。
