Fiddler結合wireshark實現手機端抓包-綜合各類教程的合集

Fiddler結合wireshark實現手機端抓包

背景:

由於各種調試需要,我們可能需要對移動端產品進行抓包方便分析問題定位問題。這裏有兩個常用工具,結合起來就可以實現手機端各類數據包抓取。

場景:在測試手機客戶端時,有時候需要查看網絡請求狀況。使用在IDE中查看log的方式,能夠解決問題,但是會比較複雜。

問題:wireshark不能夠做代理,而fiddler主要是抓HTTP請求,沒有wireshark強大。結合兩者就能夠使用抓取手機端的HTTP以及TCP的請求了,而不需要再使用TCPdump這樣的工具。

第一章:手機用fiddler抓包http

電腦最好是筆記本或者使用臺式機但用無線網卡上網,這樣能和手機方便的保持統一局域網內;該章節參考網上做法,並結合幾個不同版本的步驟,解決了一些坑,基本步驟一致

一.對PC(筆記本)參數進行配置

   1. 配置fiddler允許監聽到https(fiddler默認只抓取http格式的)

         打開Fiddler菜單項Tools->TelerikFiddler Options->HTTPS

         勾選CaptureHTTPS CONNECTs,點擊Actions,

         勾選Decrypt HTTPS trafficIgnore servercertificate errors兩項,點擊OK(首次點擊會彈出是否信任fiddler證書和安全提示,直接點擊yes就行),見圖:

 

2.配置fiddler允許遠程連接

         上一步窗口中點擊Tools->TelerikFiddler Options->Connections,勾選allow remote computers to connect,默認監聽端口爲8888(下圖Fiddler listens on port就是端口號),若端口被佔用可以設置成其他的,配置好後要重新啓動fiddler,如下圖:

 

點擊完成之後,PC端配置完成,接下來開始配置手機端,以安卓爲例,iOS方法同安卓;

二.對手機端進行參數配置

         首先要保證手機和電腦都處於同一個網絡;

         然後要知道電腦的ip地址(當然這個電腦是安裝fiddler的電腦),電腦ip地址可通過cmd,輸入ipconfig查詢,或網絡共享中ipv4找到,我的是192.168.103.53,

         再者要知道fiddler的端口號,Tools->TelerikFiddler Options->Connections,port中值就是端口號,一般默認爲8888;接下來開始操作手機;

1.第一步:手機和電腦連接同一個網絡,打開手機瀏覽器,輸入http://ip:端口號,點擊前往;見下圖:

        

2.第二步:前往之後會跳轉到證書下載頁,見下圖:

         點擊FiddlerRootcertificate下載證書;

        

3.第三步:點擊下載之後,安裝證書並起個名字,隨便寫就行,點擊確定;

        

4.第四步:要求設置一個手機密碼,自己設置一個,記住密碼就行,最後不用了去系統-安全-密碼中去掉即可;

        

5.第五步:更改手機無線網的代理

         手機系統設置-無線網-點擊高級,代理選擇手動,主機名就是fiddler的電腦ip地址,端口號,就是fiddler的端口號,與瀏覽器中ip:端口號保持一致,點擊確定即可,

此處詳細做法是:

找到手機Wifi列表:

長按Wifi熱點,選擇修改網絡配置。

代理設置爲:手動;代理主機名爲你的電腦Ip,端口就是剛纔Fiddler設置的端口。

6.第六步:操作手機,電腦fiddler中會顯示一些http信息,成功;

7.第七步:可能出現的問題及解決:

錯誤:根證書創建不正確:

解決:

打開自己安裝的Fiddler的路徑下,按住shift   右擊在此處打開命令行窗口

輸入以下命令

makecert.exe -r -ss my -n "CN=DO_NOT_TRUST_FiddlerRoot, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com" -sky signature -eku 1.3.6.1.5.5.7.3.1 -h 1 -cy authority -a sha1 -m 120 -b 10/12/2020

三.其他

1.停止電腦對手機的網絡監控

         系統設置-wifi,找到代理,去掉即可;

2.刪除手機中證書                       

         安卓系統設置—安全—收信任的憑證—用戶,點擊證書刪除即可;

3.刪除手機上密碼

         手機系統—安全—密碼,刪除系統密碼即可;

第二章:手機用wireshark抓包(各類協議)

前提:按照第一章的步驟已經設置好了fiddler的代理

步驟:

  (1)

結果:

OK,我們可以看到從本地網卡過的所有請求。

可能出現的錯誤:找不到接口

解決方法:

1、安裝wincap

2、且以管理員身份打開cmd 執行 net start npf

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章