1. 程式人生 > 其它 >抓包工具:Fiddler下載、安裝、使用 教程

抓包工具:Fiddler下載、安裝、使用 教程

 

文章目錄

 

抓包工具:Fiddler下載、安裝、使用 教程

Fiddler是一款免費網路代理除錯工具。

Fiddler是一個蠻好用的抓包工具,可以將網路傳輸傳送與接受的資料包進行截獲、重發、編輯、轉存等操作。也可以用來檢測網路安全。反正好處多多,舉之不盡呀!

當年學習的時候也蠻費勁,一些蠻實用隱藏的小功能用了之後就忘記了,每次去網站上找也很麻煩,所以蒐集各大網路的資料,總結了一些常用的功能。

一、Fiddler 下載

注意:Fiddler2需要.NET v2,Fiddler4需要.NET v4,不過這些也不用怎麼管,下載用預設的就好了。

官網下載:https://www.telerik.com/fiddler

百度網盤連結: https://pan.baidu.com/s/14C0bOTICZADj03ZGx_eygw 提取碼: chdi

二、Fiddler 安裝

由於是Fiddler只支援Windows XP到Windows 10,安裝我就不多說了,exe傻瓜式安裝,大家都能明白。

三、Fiddler 使用

先給大家簡單說一下,Fiddler這款抓包工具,與別人工具還是有所不同的。

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

1、開啟或關閉抓包功能

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

2、欄位說明

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

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

3、Statistics 請求的效能資料分析

好了,左邊看完了,現在可以看右邊了;隨意點選一個請求,就可以看到Statistics關於HTTP請求的效能以及資料分析了。

4、Inspectors 檢視資料內容

Inspectors是用於檢視會話的內容,上半部分是請求的內容,下半部分是響應的內容;

5、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 匹配

  1. 正則表示式匹配:以“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 不匹配

6、Composer 自定義請求傳送伺服器

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

Parsed模式下你只需要提供簡單的URLS地址即可(如下圖,也可以在RequestBody定製一些屬性,如模擬瀏覽器User-Agent)

7、Filters 請求過濾規則

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

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

Zone 指定只顯示內網(Intranet)或網際網路(Internet)的內容:

Host 指定顯示某個域名下的會話:

如果框框為黃色(如圖),表示修改未生效,點選紅圈裡的文字即可!

8、Timeline 請求響應時間

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

9、Fiddler 設定解密HTTPS的網路資料

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

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

(1)、Tools –> Fiddler Options –> HTTPS;

(2)、勾選Decrypt HTTPS TrafficDecrypt

(3)、點選OK

10、Fiddler 內建命令與斷點

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

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

命令 對應請求項 介紹 示例
? All 問號後邊跟一個字串,可以匹配出包含這個字串的請求 ?google
> Body 大於號後面跟一個數字,可以匹配出請求大小,大於這個數字請求 >1000
< Body 小於號跟大於號相反,匹配出請求大小,小於這個數字的請求 <100
= Result 等於號後面跟數字,可以匹配HTTP返回碼 =200
@ Host @後面跟Host,可以匹配域名 @www.baidu.com
select Content-Type select後面跟響應型別,可以匹配到相關的型別 select image
cls All 清空當前所有請求 cls
dump All 將所有請求打包成saz壓縮包,儲存到“我的文件\Fiddler2\Captures”目錄下 dump
start All 開始監聽請求 start
stop All 停止監聽請求 stop

斷點命令

bpafter All bpafter後邊跟一個字串,表示中斷所有包含該字串的請求 bpafter baidu(輸入bpafter解除斷點)
bpu All 跟bpafter差不多,只不過這個是收到請求了,中斷響應 bpu baidu(輸入bpu解除斷點)
bps Result 後面跟狀態嗎,表示中斷所有是這個狀態碼的請求 bps 200(輸入bps解除斷點)
bpv / bpm HTTP方法 只中斷HTTP方法的命令,HTTP方法如POST、GET bpv get(輸入bpv解除斷點)
g / go All 放行所有中斷下來的請求 g

bpafter 命令示例:

斷點命令:

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

轉自:https://www.dianjilingqu.com/