fiddler沒有手機客戶端,都是安裝在PC上,要實現(xiàn)對手機上的程序抓包,則需要對PC上的fiddler和手機端做一些配置。步驟如下:
手機上的應(yīng)用很多涉及到個人信息,采用比較安全的HTTPS加密過,而fiddler默認只捕獲http會話而不抓取HTTPS報文,導(dǎo)致打開fiddler后就打不開https網(wǎng)頁(比如百度),解決辦法:打開Fiddler->Tool->Fiddler Options->HTTPS tab,勾選上并Capture HTTPS CONNECTs(捕獲 HTTPS 連接)和 Decrypt HTTPS traffic (HTTPS 請求解密),并安裝證書(首次使用無證書,會彈出是否信任fiddler證書和安全提示,直接點擊yes就行),重啟Fiddler生效。
fiddler HTTPS配置
如果想要捕獲手機上的通信數(shù)據(jù),就需要手機連接上Fiddler代理,而Fiddler默認是不允許其他設(shè)備進行連接的,解決辦法:點擊 Fiddler->Tools -> Options,在 Connections 面板選中 Allow remote computers to connect 允許其他設(shè)備連接(此操作需重啟Fiddler生效)。
允許遠程接入
電腦IP
需要在移動終端(手機或pad)上指定代理服務(wù)器為Fiddler所在主機IP(需要處于同一網(wǎng)絡(luò)),端口默認8888。
要保證手機和安裝有fiddler的電腦處在同一局域網(wǎng)內(nèi),手機能ping通電腦。方法:家用或辦公環(huán)境把PC和手機WLAN連接上同一個路由器的無線SSID獲取到同一網(wǎng)段內(nèi)的IP地址即可。臺式機要插入無線網(wǎng)卡才能連WiFi,最好用筆記本電腦和手機連同一WiFi很方便。如下圖,我的手機IP是192.168.1.104,與電腦192.168.1.106可互通,就能訪問192.168.1.106:8888。
手機IP
在手機上需要安裝Fiddler根證書,因為Fiddler是通過自己生成的證書對網(wǎng)絡(luò)請求重新簽名進行https會話解密的,如果不安裝證書的話只能抓取HTTP請求。
(1)手機和電腦連接同一個網(wǎng)絡(luò),打開手機瀏覽器,輸入Fiddler Server地址http://ipv4.fiddler:8888/(因為fiddler裝在PC上,所以Fiddler Server地址就是PC的IP地址,帶上端口號8888,我的是http://192.168.1.106:8888/), 跳轉(zhuǎn)到 Fiddler Echo Service 證書下載頁,點擊FiddlerRoot certificate下載并安裝;
下載證書.png
證書.png
(2) 為證書命名后點擊確定;
為證書命名
(3)要求設(shè)置一個手機密碼,自己設(shè)置一個,記住密碼就行,最后不用了去系統(tǒng)-安全-密碼中去掉即可;
設(shè)置密碼
更改手機無線網(wǎng)的代理方法:打開系統(tǒng)設(shè)置-WLAN,長按WiFi接入的SSID修改網(wǎng)絡(luò),點擊高級選項,代理選擇手動,主機名輸入fiddler的電腦ip地址192.168.1.106,端口號輸入8888,保存即可。
代理設(shè)置
PC上和手機上的配置完成后就可以操作手機,在電腦上用fiddler抓包了,比如訪問一些網(wǎng)站和APP,fiddler中就會顯示捕獲到的手機上HTTP/HTTPS通訊記錄,抓包成功。
抓包結(jié)束后,需要手動還原手機狀態(tài),方法如下(不同機型可能有些微差別):
(1) 停止電腦對手機的網(wǎng)絡(luò)監(jiān)控:系統(tǒng)設(shè)置-WLAN,長按wifi修改網(wǎng)絡(luò),高級選項找到代理,去掉手動代理即可;
(2)刪除手機中證書:安卓系統(tǒng)設(shè)置 系統(tǒng) 設(shè)備安全 受信任的憑據(jù) 用戶 ,點擊證書刪除即可;
(3) 刪除手機上密碼:手機系統(tǒng)—安全—密碼,刪除系統(tǒng)密碼即可。