Fiddler 抓包工具總結(jié)
閱讀目錄
1. Fiddler 抓包簡(jiǎn)介
??? 1). 字段說(shuō)明
??? 2). Statistics 請(qǐng)求的性能數(shù)據(jù)分析
??? 3). Inspectors 查看數(shù)據(jù)內(nèi)容
??? 4). AutoResponder 允許攔截制定規(guī)則的請(qǐng)求
??? 5). Filters 請(qǐng)求過(guò)濾規(guī)則
??? 6). Timeline 請(qǐng)求響應(yīng)時(shí)間
2. Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù)
3. Fiddler 抓取Iphone / Android數(shù)據(jù)包
4. Fiddler 內(nèi)置命令與斷點(diǎn)
序章
Fiddler是一個(gè)蠻好用的抓包工具,可以將網(wǎng)絡(luò)傳輸發(fā)送與接受的數(shù)據(jù)包進(jìn)行截獲、重發(fā)、編輯、轉(zhuǎn)存等操作。也可以用來(lái)檢測(cè)網(wǎng)絡(luò)安全。反正好處多多,舉之不盡呀!當(dāng)年學(xué)習(xí)的時(shí)候也蠻費(fèi)勁,一些蠻實(shí)用隱藏的小功能用了之后就忘記了,每次去網(wǎng)站上找也很麻煩,所以搜集各大網(wǎng)絡(luò)的資料,總結(jié)了一些常用的功能。
Fiddler 下載地址 :https://www.telerik.com/download/fiddler
如有需要綠色漢化包請(qǐng)聯(lián)系我發(fā)給你.?
下載Fiddler要FQ,我費(fèi)了好大得勁才翻出去下載到…
win8之后用“Fiddler for .NET4”而win8之前用“Fiidler for .NET2”比較好

1. Fiddler 抓包簡(jiǎn)介
Fiddler是通過(guò)改寫(xiě)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ì)話(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,再訪(fǎng)問(wèn)baidu,就會(huì)被劫持。
這個(gè)玩意有很多匹配規(guī)則,如:
1. 字符串匹配(默認(rèn)):只要包含指定字符串(不區(qū)分大小寫(xiě)),全部認(rèn)為是匹配
字符串匹配(baidu)是否匹配
http://www.baidu.com匹配
http://pan.baidu.com匹配
http://tieba.baidu.com匹配
2. 正則表達(dá)式匹配:以“regex:”開(kāi)頭,使用正則表達(dá)式來(lái)匹配,這個(gè)是區(qū)分大小寫(xiě)的
字符串匹配(regex:.+.(jpg?|?gif?|?bmp?) $)是否匹配
http://bbs.fishc.com/Path1/query=foo.bmp&bar不匹配
http://bbs.fishc.com/Path1/query=example.gif匹配
http://bbs.fishc.com/Path1/query=example.bmp匹配
http://bbs.fishc.com/Path1/query=example.Gif不匹配


4). Composer 自定義請(qǐng)求發(fā)送服務(wù)器
Composer允許自定義請(qǐng)求發(fā)送到服務(wù)器,可以手動(dòng)創(chuàng)建一個(gè)新的請(qǐng)求,也可以在會(huì)話(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ì)話(huà):

如果框框?yàn)辄S色(如圖),表示修改未生效,點(diǎn)擊紅圈里的文字即可
6). Timeline 請(qǐng)求響應(yīng)時(shí)間
在左側(cè)會(huì)話(huà)窗口點(diǎn)擊一個(gè)或多個(gè)(同時(shí)按下 Ctrl 鍵),Timeline 便會(huì)顯示指定內(nèi)容從服務(wù)端傳輸?shù)娇蛻?hù)端的時(shí)間:

2. Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù)
Fiddler可以通過(guò)偽造CA證書(shū)來(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è)備怎么去訪(fǎng)問(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ú)線(xiàn)網(wǎng)卡的IP了(要是沒(méi)有的話(huà),重啟Fiddler,或者可以在cmd中ipconfig找到自己的網(wǎng)卡IP)


5. 在手機(jī)端連接PC的wifi,并且設(shè)置代理IP與端口(代理IP就是上圖的IP,端口是Fiddler的代理端口8888)

6. 訪(fǎng)問(wèn)網(wǎng)頁(yè)輸入代理IP和端口,下載Fiddler的證書(shū),點(diǎn)擊下圖FiddlerRoot certificate

【注意】:如果打開(kāi)瀏覽器碰到類(lèi)似下面的報(bào)錯(cuò),請(qǐng)打開(kāi)Fiddler的證書(shū)解密模式(Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù))
No root certificate was found. Have you enabled HTTPS traffic decryptioninFiddler yet?




7. 安裝完了證書(shū),可以用手機(jī)訪(fǎng)問(wèn)應(yīng)用,就可以看到截取到的數(shù)據(jù)包了。(下圖選中是布卡漫畫(huà)的數(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一大堆的事情可以做,就不舉例子了。

命令對(duì)應(yīng)請(qǐng)求項(xiàng)介紹示例
?All問(wèn)號(hào)后邊跟一個(gè)字符串,可以匹配出包含這個(gè)字符串的請(qǐng)求?google
>Body大于號(hào)后面跟一個(gè)數(shù)字,可以匹配出請(qǐng)求大小,大于這個(gè)數(shù)字請(qǐng)求>1000
<Body小于號(hào)跟大于號(hào)相反,匹配出請(qǐng)求大小,小于這個(gè)數(shù)字的請(qǐng)求<100
=Result等于號(hào)后面跟數(shù)字,可以匹配HTTP返回碼=200
@Host@后面跟Host,可以匹配域名@www.baidu.com
selectContent-Typeselect后面跟響應(yīng)類(lèi)型,可以匹配到相關(guān)的類(lèi)型select image
clsAll清空當(dāng)前所有請(qǐng)求cls
dumpAll將所有請(qǐng)求打包成saz壓縮包,保存到“我的文檔\Fiddler2\Captures”目錄下dump
startAll開(kāi)始監(jiān)聽(tīng)請(qǐng)求start
stopAll停止監(jiān)聽(tīng)請(qǐng)求stop
斷點(diǎn)命令
bpafterAllbpafter后邊跟一個(gè)字符串,表示中斷所有包含該字符串的請(qǐng)求bpafter baidu(輸入bpafter解除斷點(diǎn))
bpuAll跟bpafter差不多,只不過(guò)這個(gè)是收到請(qǐng)求了,中斷響應(yīng)bpu baidu(輸入bpu解除斷點(diǎn))
bpsResult后面跟狀態(tài)嗎,表示中斷所有是這個(gè)狀態(tài)碼的請(qǐng)求bps 200(輸入bps解除斷點(diǎn))
bpv / bpmHTTP方法只中斷HTTP方法的命令,HTTP方法如POST、GETbpv get(輸入bpv解除斷點(diǎn))
g / goAll放行所有中斷下來(lái)的請(qǐng)求g
示例演示:
?

>

<

=

@

select

cls

dump

斷點(diǎn)命令:
斷點(diǎn)可以直接點(diǎn)擊Fiddler下圖的圖標(biāo)位置,就可以設(shè)置全部請(qǐng)求的斷點(diǎn),斷點(diǎn)的命令可以精確設(shè)置需要截獲那些請(qǐng)求。如下示例:

命令:
bpafter


bps


bpv


g / go

