天天看點

Fiddler Web Debugger 使用教程

Fiddler 下載下傳位址 :https://www.telerik.com/download/fiddler

win8之後用“Fiddler for .NET4”而win8之前用“Fiidler for .NET2”比較好

Fiddler Web Debugger 使用教程

1. Fiddler 抓包簡介

Fiddler是通過改寫HTTP代理,讓資料從它那通過,來監控并且截取到資料。當然Fiddler很屌,在打開它的那一瞬間,它就已經設定好了浏覽器的代理了。當你關閉的時候,它又幫你把代理還原了,是不是很貼心。。。

Fiddler Web Debugger 使用教程

1) 字段說明

Fiddler想要抓到資料包,要確定Capture Traffic是開啟,在File –> Capture Traffic。開啟後再左下角會有顯示,當然也可以直接點選左下角的圖示來關閉/開啟抓包功能。

Fiddler Web Debugger 使用教程

Fiddler開始工作了,抓到的資料包就會顯示在清單裡面,下面總結了這些都是什麼意思:

Fiddler Web Debugger 使用教程
名稱 含義
# 抓取HTTP Request的順序,從1開始,以此遞增
Result HTTP狀态碼
Protocol 請求使用的協定,如HTTP/HTTPS/FTP等
Host 請求位址的主機名
URL 請求資源的位置
Body 該請求的大小
Caching 請求的緩存過期時間或者緩存控制值
Content-Type 請求響應的類型
Process 發送此請求的程序:程序ID
Comments 允許使用者為此回話添加備注
Custom 允許使用者設定自定義值
圖示
Fiddler Web Debugger 使用教程
請求已經發往伺服器
Fiddler Web Debugger 使用教程
已從伺服器下載下傳響應結果
Fiddler Web Debugger 使用教程
請求從斷點處暫停
Fiddler Web Debugger 使用教程
響應從斷點處暫停
Fiddler Web Debugger 使用教程
請求使用 HTTP 的 HEAD 方法,即響應沒有内容(Body)
Fiddler Web Debugger 使用教程
請求使用 HTTP 的 POST 方法
Fiddler Web Debugger 使用教程
請求使用 HTTP 的 CONNECT 方法,使用 HTTPS 協定建立連接配接隧道
Fiddler Web Debugger 使用教程
響應是 HTML 格式
Fiddler Web Debugger 使用教程
響應是一張圖檔
Fiddler Web Debugger 使用教程
響應是腳本格式
Fiddler Web Debugger 使用教程
響應是 CSS 格式
Fiddler Web Debugger 使用教程
響應是 XML 格式
Fiddler Web Debugger 使用教程
響應是 JSON 格式
Fiddler Web Debugger 使用教程
響應是一個音頻檔案
Fiddler Web Debugger 使用教程
響應是一個視訊檔案
Fiddler Web Debugger 使用教程
響應是一個 SilverLight
Fiddler Web Debugger 使用教程
響應是一個 FLASH
Fiddler Web Debugger 使用教程
響應是一個字型
Fiddler Web Debugger 使用教程
普通響應成功
Fiddler Web Debugger 使用教程
響應是 HTTP/300、301、302、303 或 307 重定向
Fiddler Web Debugger 使用教程
響應是 HTTP/304(無變更):使用緩存檔案
Fiddler Web Debugger 使用教程
響應需要用戶端證書驗證
Fiddler Web Debugger 使用教程
服務端錯誤
Fiddler Web Debugger 使用教程
會話被用戶端、Fiddler 或者服務端終止

2). Statistics 請求的性能資料分析

好了。左邊看完了,現在可以看右邊了

随意點選一個請求,就可以看到Statistics關于HTTP請求的性能以及資料分析了(不可能安裝好了Fiddler一條請求都沒有…):

Fiddler Web Debugger 使用教程

3). Inspectors 檢視資料内容

Inspectors是用于檢視會話的内容,上半部分是請求的内容,下半部分是響應的内容:

Fiddler Web Debugger 使用教程

4). AutoResponder 允許攔截指定規則的請求

AutoResponder允許你攔截指定規則的求情,并傳回本地資源或Fiddler資源,進而代替伺服器響應。

看下圖5步,我将“baidu”這個關鍵字與我電腦“f:\Users\YukiO\Pictures\boy.jpeg”這張圖檔綁定了,點選Save儲存後勾選Enable rules,再通路baidu,就會被劫持。

這個玩意有很多比對規則,如:

1. 字元串比對(預設):隻要包含指定字元串(不區分大小寫),全部認為是比對

字元串比對(baidu) 是否比對
http://www.baidu.com 比對
http://pan.baidu.com
http://tieba.baidu.com
2. 正規表達式比對:以“regex:”開頭,使用正規表達式來比對,這個是區分大小寫的
字元串比對(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
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程

4). Composer 自定義請求發送伺服器

Composer允許自定義請求發送到伺服器,可以手動建立一個新的請求,也可以在會話表中,拖拽一個現有的請求

Parsed模式下你隻需要提供簡單的URLS位址即可(如下圖,也可以在RequestBody定制一些屬性,如模拟浏覽器User-Agent)

Fiddler Web Debugger 使用教程

5). Filters 請求過濾規則

Fiters 是過濾請求用的,左邊的視窗不斷的更新,當你想看你系統的請求的時候,你重新整理一下浏覽器,一大片不知道哪來請求,看着礙眼,它還一直重新整理你的螢幕。這個時候通過過濾規則來過濾掉那些不想看到的請求。

Fiddler Web Debugger 使用教程

勾選左上角的Use Filters開啟過濾器,這裡有兩個最常用的過濾條件:Zone和Host

1、Zone 指定隻顯示内網(Intranet)或網際網路(Internet)的内容:
Fiddler Web Debugger 使用教程
2、Host 指定顯示某個域名下的會話:
Fiddler Web Debugger 使用教程
如果框框為黃色(如圖),表示修改未生效,點選紅圈裡的文字即可

6). Timeline 請求響應時間

在左側會話視窗點選一個或多個(同時按下 Ctrl 鍵),Timeline 便會顯示指定内容從服務端傳輸到用戶端的時間:

Fiddler Web Debugger 使用教程

2. Fiddler 設定解密HTTPS的網絡資料

Fiddler可以通過僞造CA憑證來欺騙浏覽器和伺服器。Fiddler是個很會裝逼的好東西,大概原理就是在浏覽器面前Fiddler僞裝成一個HTTPS伺服器,而在真正的HTTPS伺服器面前Fiddler又裝成浏覽器,進而實作解密HTTPS資料包的目的。

解密HTTPS需要手動開啟,依次點選:

1. Tools –> Fiddler Options –>  HTTPS

Fiddler Web Debugger 使用教程

2. 勾選Decrypt HTTPS Traffic

Fiddler Web Debugger 使用教程

3. 點選OK

Fiddler Web Debugger 使用教程

3. Fiddler 抓取Iphone / Android資料包

想要Fiddler抓取移動端裝置的資料包,其實很簡單,先來說說移動裝置怎麼去通路網絡,看了下面這張圖,就明白了。

Fiddler Web Debugger 使用教程

可以看得出,移動端的資料包,都是要走wifi出去,是以我們可以把自己的電腦開啟熱點,将手機連上電腦,Fiddler開啟代理後,讓這些資料通過Fiddler,Fiddler就可以抓到這些包,然後發給路由器(如圖):

Fiddler Web Debugger 使用教程

1. 打開Wifi熱點,讓手機連上(我這裡用的360wifi,其實随意一個都行)

Fiddler Web Debugger 使用教程

2. 打開Fidder,點選菜單欄中的 [Tools] –> [Fiddler Options]

Fiddler Web Debugger 使用教程

3. 點選 [Connections] ,設定代理端口是8888, 勾選 Allow remote computers to connect, 點選OK

Fiddler Web Debugger 使用教程

4. 這時在 Fiddler 可以看到自己本機無線網卡的IP了(要是沒有的話,重新開機Fiddler,或者可以在cmd中ipconfig找到自己的網卡IP)

Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程

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

Fiddler Web Debugger 使用教程

6. 通路網頁輸入代理IP和端口,下載下傳Fiddler的證書,點選下圖FiddlerRoot certificate

Fiddler Web Debugger 使用教程

【注意】:如果打開浏覽器碰到類似下面的報錯,請打開Fiddler的證書解密模式(Fiddler 設定解密HTTPS的網絡資料)

No root certificate was found. Have you enabled HTTPS traffic decryption in Fiddler yet?      
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程

7. 安裝完了證書,可以用手機通路應用,就可以看到截取到的資料包了。(下圖選中是布卡漫畫的資料包,下面還有QQ郵箱的)

Fiddler Web Debugger 使用教程

4. Fiddler 内置指令與斷點

Fiddler還有一個藏的很深的指令框,就是眼前,我用了幾年的Fiddler都沒有發現它,偶爾在别人的文章發現還有這個小功能,還蠻好用的,整理下記錄在這裡。

FIddler斷點功能就是将請求截獲下來,但是不發送,這個時候你可以幹很多事情,比如說,把包改了,再發送給伺服器君。還有balabala一大堆的事情可以做,就不舉例子了。

Fiddler Web Debugger 使用教程
指令 對應請求項 介紹 示例
? All 問号後邊跟一個字元串,可以比對出包含這個字元串的請求 ?google
> 大于号後面跟一個數字,可以比對出請求大小,大于這個數字請求 >1000
< 小于号跟大于号相反,比對出請求大小,小于這個數字的請求 <100
= 等于号後面跟數字,可以比對HTTP傳回碼 =200
@ @後面跟Host,可以比對域名 @www.baidu.com
select select後面跟響應類型,可以比對到相關的類型 select image
cls 清空目前所有請求
dump 将所有請求打包成saz壓縮包,儲存到“我的檔案\Fiddler2\Captures”目錄下
start 開始監聽請求
stop 停止監聽請求
斷點指令 
bpafter bpafter後邊跟一個字元串,表示中斷所有包含該字元串的請求 bpafter baidu(輸入bpafter解除斷點)
bpu 跟bpafter差不多,隻不過這個是收到請求了,中斷響應 bpu baidu(輸入bpu解除斷點)
bps 後面跟狀态嗎,表示中斷所有是這個狀态碼的請求 bps 200(輸入bps解除斷點)
bpv / bpm HTTP方法 隻中斷HTTP方法的指令,HTTP方法如POST、GET bpv get(輸入bpv解除斷點)
g / go 放行所有中斷下來的請求 g

示例示範:

Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程

斷點指令:

斷點可以直接點選Fiddler下圖的圖示位置,就可以設定全部請求的斷點,斷點的指令可以精确設定需要截獲那些請求。如下示例:

Fiddler Web Debugger 使用教程

指令:

Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程

bpv

Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程
Fiddler Web Debugger 使用教程

轉載自:Fiddler抓包工具總結 

參考:網絡爬蟲中Fiddler抓取PC端網頁資料包與手機端APP資料包 

   Fiddler抓取HTTPS最全(強)攻略

   fiddler抓web請求 

   (轉)Fiddler教程(Web調試工具)

繼續閱讀