win8之后用“Fiddler for .NET4”而win8之前用“Fiidler for .NET2”比較好
1. Fiddler 抓包簡(jiǎn)介
Fiddler是通過(guò)改寫HTTP代理,讓數(shù)據(jù)從它那通過(guò),來(lái)監(jiān)控并且截取到數(shù)據(jù)。當(dāng)然Fiddler很屌,在打開(kāi)它的那一瞬間,它就已經(jīng)設(shè)置好了瀏覽器的代理了。當(dāng)你關(guān)閉的時(shí)候,它又幫你把代理還原了,是不是很貼心。。。
1) 字段說(shuō)明
Fiddler想要抓到數(shù)據(jù)包,要確保Capture Traffic是開(kāi)啟,在File –> Capture Traffic。開(kāi)啟后再左下角會(huì)有顯示,當(dāng)然也可以直接點(diǎn)擊左下角的圖標(biāo)來(lái)關(guān)閉/開(kāi)啟抓包功能。
Fiddler開(kāi)始工作了,抓到的數(shù)據(jù)包就會(huì)顯示在列表里面,下面總結(jié)了這些都是什么意思:
2). Statistics 請(qǐng)求的性能數(shù)據(jù)分析
好了。左邊看完了,現(xiàn)在可以看右邊了
隨意點(diǎn)擊一個(gè)請(qǐng)求,就可以看到Statistics關(guān)于HTTP請(qǐng)求的性能以及數(shù)據(jù)分析了(不可能安裝好了Fiddler一條請(qǐng)求都沒(méi)有…):
3). Inspectors 查看數(shù)據(jù)內(nèi)容
Inspectors是用于查看會(huì)話的內(nèi)容,上半部分是請(qǐng)求的內(nèi)容,下半部分是響應(yīng)的內(nèi)容:
4). AutoResponder 允許攔截指定規(guī)則的請(qǐng)求
AutoResponder允許你攔截指定規(guī)則的求情,并返回本地資源或Fiddler資源,從而代替服務(wù)器響應(yīng)。
看下圖5步,我將“baidu”這個(gè)關(guān)鍵字與我電腦“f:\Users\YukiO\Pictures\boy.jpeg”這張圖片綁定了,點(diǎn)擊Save保存后勾選Enable rules,再訪問(wèn)baidu,就會(huì)被劫持。
這個(gè)玩意有很多匹配規(guī)則,如:
1. 字符串匹配(默認(rèn)):只要包含指定字符串(不區(qū)分大小寫),全部認(rèn)為是匹配
2. 正則表達(dá)式匹配:以“regex:”開(kāi)頭,使用正則表達(dá)式來(lái)匹配,這個(gè)是區(qū)分大小寫的
4). Composer 自定義請(qǐng)求發(fā)送服務(wù)器
Composer允許自定義請(qǐng)求發(fā)送到服務(wù)器,可以手動(dòng)創(chuàng)建一個(gè)新的請(qǐng)求,也可以在會(huì)話表中,拖拽一個(gè)現(xiàn)有的請(qǐng)求
Parsed模式下你只需要提供簡(jiǎn)單的URLS地址即可(如下圖,也可以在RequestBody定制一些屬性,如模擬瀏覽器User-Agent)
5). Filters 請(qǐng)求過(guò)濾規(guī)則
Fiters 是過(guò)濾請(qǐng)求用的,左邊的窗口不斷的更新,當(dāng)你想看你系統(tǒng)的請(qǐng)求的時(shí)候,你刷新一下瀏覽器,一大片不知道哪來(lái)請(qǐng)求,看著礙眼,它還一直刷新你的屏幕。這個(gè)時(shí)候通過(guò)過(guò)濾規(guī)則來(lái)過(guò)濾掉那些不想看到的請(qǐng)求。
勾選左上角的Use Filters開(kāi)啟過(guò)濾器,這里有兩個(gè)最常用的過(guò)濾條件:Zone和Host
1、Zone 指定只顯示內(nèi)網(wǎng)(Intranet)或互聯(lián)網(wǎng)(Internet)的內(nèi)容:
2、Host 指定顯示某個(gè)域名下的會(huì)話:
如果框框?yàn)辄S色(如圖),表示修改未生效,點(diǎn)擊紅圈里的文字即可
6). Timeline 請(qǐng)求響應(yīng)時(shí)間
在左側(cè)會(huì)話窗口點(diǎn)擊一個(gè)或多個(gè)(同時(shí)按下 Ctrl 鍵),Timeline 便會(huì)顯示指定內(nèi)容從服務(wù)端傳輸?shù)娇蛻舳说臅r(shí)間:
2. Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù)
Fiddler可以通過(guò)偽造CA證書來(lái)欺騙瀏覽器和服務(wù)器。Fiddler是個(gè)很會(huì)裝逼的好東西,大概原理就是在瀏覽器面前Fiddler偽裝成一個(gè)HTTPS服務(wù)器,而在真正的HTTPS服務(wù)器面前Fiddler又裝成瀏覽器,從而實(shí)現(xiàn)解密HTTPS數(shù)據(jù)包的目的。
解密HTTPS需要手動(dòng)開(kāi)啟,依次點(diǎn)擊:
1. Tools –> Fiddler Options –> HTTPS
2. 勾選Decrypt HTTPS Traffic
3. 點(diǎn)擊OK
3. Fiddler 抓取Iphone / Android數(shù)據(jù)包
想要Fiddler抓取移動(dòng)端設(shè)備的數(shù)據(jù)包,其實(shí)很簡(jiǎn)單,先來(lái)說(shuō)說(shuō)移動(dòng)設(shè)備怎么去訪問(wèn)網(wǎng)絡(luò),看了下面這張圖,就明白了。
可以看得出,移動(dòng)端的數(shù)據(jù)包,都是要走wifi出去,所以我們可以把自己的電腦開(kāi)啟熱點(diǎn),將手機(jī)連上電腦,F(xiàn)iddler開(kāi)啟代理后,讓這些數(shù)據(jù)通過(guò)Fiddler,F(xiàn)iddler就可以抓到這些包,然后發(fā)給路由器(如圖):
1. 打開(kāi)Wifi熱點(diǎn),讓手機(jī)連上(我這里用的360wifi,其實(shí)隨意一個(gè)都行)
2. 打開(kāi)Fidder,點(diǎn)擊菜單欄中的 [Tools] –> [Fiddler Options]
3. 點(diǎn)擊 [Connections] ,設(shè)置代理端口是8888, 勾選 Allow remote computers to connect, 點(diǎn)擊OK
4. 這時(shí)在 Fiddler 可以看到自己本機(jī)無(wú)線網(wǎng)卡的IP了(要是沒(méi)有的話,重啟Fiddler,或者可以在cmd中ipconfig找到自己的網(wǎng)卡IP)
5. 在手機(jī)端連接PC的wifi,并且設(shè)置代理IP與端口(代理IP就是上圖的IP,端口是Fiddler的代理端口8888)
6. 訪問(wèn)網(wǎng)頁(yè)輸入代理IP和端口,下載Fiddler的證書,點(diǎn)擊下圖FiddlerRoot certificate
【注意】:如果打開(kāi)瀏覽器碰到類似下面的報(bào)錯(cuò),請(qǐng)打開(kāi)Fiddler的證書解密模式(Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù))
7. 安裝完了證書,可以用手機(jī)訪問(wèn)應(yīng)用,就可以看到截取到的數(shù)據(jù)包了。(下圖選中是布卡漫畫的數(shù)據(jù)包,下面還有QQ郵箱的)
4. Fiddler 內(nèi)置命令與斷點(diǎn)
Fiddler還有一個(gè)藏的很深的命令框,就是眼前,我用了幾年的Fiddler都沒(méi)有發(fā)現(xiàn)它,偶爾在別人的文章發(fā)現(xiàn)還有這個(gè)小功能,還蠻好用的,整理下記錄在這里。
FIddler斷點(diǎn)功能就是將請(qǐng)求截獲下來(lái),但是不發(fā)送,這個(gè)時(shí)候你可以干很多事情,比如說(shuō),把包改了,再發(fā)送給服務(wù)器君。還有balabala一大堆的事情可以做,就不舉例子了。
斷點(diǎn)命令:
斷點(diǎn)可以直接點(diǎn)擊Fiddler下圖的圖標(biāo)位置,就可以設(shè)置全部請(qǐng)求的斷點(diǎn),斷點(diǎn)的命令可以精確設(shè)置需要截獲那些請(qǐng)求。如下示例:
命令:
評(píng)論