一、什么是Fiddler?
Fiddler是位于客戶端和服務(wù)器端之間的代理,能夠記錄客戶端和服務(wù)器之間的所有請求,并且可以針對特定請求進(jìn)行再一步分析。
Fiddler 是以代理web服務(wù)器的形式工作的,它使用默認(rèn)代理地址:127.0.0.1,端口:8888,也就是說默認(rèn)監(jiān)聽在安裝本機(jī)的127.0.0.1::8888,如果需要抓局域網(wǎng)內(nèi)其他機(jī)器的包,需要勾選上 “Allow remote computersto connect” ,允許遠(yuǎn)程設(shè)備連接,會設(shè)置監(jiān)聽為0.0.0.0:8888
當(dāng)Fiddler退出的時候它會自動注銷,這樣就不會影響別的 程序。不過如果Fiddler非正常退出,這時候因為Fiddler沒有自動注銷,會造成網(wǎng)頁無法訪問,解決的辦法是重新啟動下Fiddler。
二、Windows下使用Fiddler進(jìn)行抓包
1. 下載安裝Fiddler
打開官網(wǎng)鏈接:https://www.telerik.com/download/fiddler 進(jìn)行下載,一路默認(rèn)安裝,不贅述。
2. 設(shè)置Fiddler
打開設(shè)置:Tools --> Options --> HTTPS

選中【Decrpt HTTPS traffic】Fiddler就可以截獲HTTPS請求,第一次會彈出證書安裝提示

如果沒有彈出安裝提示,點擊Actions --> Trust Root Certificate,否則可跳過下面一張截圖。

安裝證書的過程中,可以留意一下紅框里面的內(nèi)容,
DO_NOT_TRUST_FiddlerRoot就是證書的名稱一路選【是】/【Yes】,安裝證書。
檢測證書是否安裝成功,可以點擊Actions --> open windows certificate Manager


設(shè)置允許遠(yuǎn)程連接:Tools --> Options --> Connections,留意端口號

重啟fillder,使得配置生效,并查看端口監(jiān)聽,命令行中輸入
netstat -ano | findstr "8888"(如果你的端口號不是8888,請自動更換)。
3. 設(shè)置安卓Android
查看電腦IP,打開命令行,輸入ipconfig,留意IPv4和子網(wǎng)掩碼

設(shè)置代理,關(guān)閉 4G、5G網(wǎng)絡(luò),使用WIFI,使得手機(jī)和Fiddler在同一局域網(wǎng)。這里以小米手機(jī)為例。
長按當(dāng)前WIFI,選擇代理設(shè)置


打開手機(jī)瀏覽器,輸入【IP:端口】下載證書。在我這個例子中,就應(yīng)該輸入:
192168.18.241:8888
安裝成功后,可以在手機(jī)的信任憑證中查看到DO_NOT_TRUST_FiddlerRoot(不同手機(jī)查看方式不同,可在設(shè)置中搜索“信任”)

每連一臺fiddler,提供的證書都是不一樣的,測試完一個場景,記得在證書管理里刪除,因為這個證書只對應(yīng)這臺fiddler,沒法用于連其他的fiddler。
4. 進(jìn)行抓包測試
打開手機(jī)中要被抓包的APP,查看抓包內(nèi)容。

此時Fiddler抓的是PC和APP上的所有請求,如果只想抓APP的,可以在Fiddler上開啟過濾功能。打開設(shè)置:Tools --> Options --> HTTPS,選擇【from remote clients only】

from all processes 抓所有的請求
from browsers only 只抓瀏覽器的請求
from non-browsers only 只抓非瀏覽器的請求
from remote clients only 只抓遠(yuǎn)程客戶端請求
感謝閱讀!
文章參考:https://blog.csdn.net/michaelwoshi/article/details/114173158 , 感謝大佬?。?/p>
