『言善信』Fiddler工具 — 12、Fiddler過濾器(Filters)詳解

繁華似錦Fighting發表於2021-06-15

1、Filters介紹

Filters:過濾器,幫助我們過濾請求。

如果需要過濾掉與測試專案無關的抓包請求,更加精準的展現抓到的請求,而不是雜亂的一堆,那功能強大的 Filters 過濾器能幫到你。

總結:Filters過濾器的作用,過濾出我們想要的請求,不需要的請求忽略掉。

2、Filters介面說明

Filters介面如下圖:

image

說明:

Use Filters(使用過濾):這個勾選之後,過濾器才會生效。

Actions(指定行為):四個選項說明

  • Run Filterset now:使用當前的過濾規則。
  • load Filterset:載入(以前儲存的)過濾規則。
  • Save Filterset:儲存當前的過濾規則(非常實用,如針對每個應用測試設定一套過濾規則)。
  • Help:會跳轉到Fiddler幫助頁面。

(1)Hosts:主機過濾

主機過濾下面有兩個下拉框,第一個下拉框是過濾區域網,第二個下拉框是過濾廣域網。(較常用)

區域網過濾:展示區域網內容

  • No Zone Filter:預設選項,不設定區域過濾器。
  • show only Intranet Hosts:只顯示內網的Hosts,即過濾掉外網的Hosts。此時,只顯示URL請求目標伺服器在內網的請求。
  • show only internet Hosts:與上相對應,只顯示外網的Hosts。

廣域網過濾:展示廣域網內容

  • No Host Filter:預設選項,不設定過濾主機IP條件。
  • Hide the following Hosts:隱藏輸入到下面文字框中的Hosts。
  • Show only the following Hosts:僅顯示輸入到下面文字框中的Hosts。
  • Flag the following Hosts:標識下邊輸入的主機名的會話(加粗)。

說明:

只想顯示 www.51ste.com的請求,則選中Show only the following Hosts ,並在下面輸入框中填入 www.51ste.com即可。此時,哪怕是http://51ste.com的請求,也會被過濾掉,顯示不出來。

(2)Client Process:客戶端程式過濾

是對客戶端的程式進行過濾,通過配置只過濾/不過濾哪些程式的請求。(用的不多)

  • Show only traffic from:你可以指定只顯示哪個Windows程式中的請求,右側會列出當前所有的 Windows 程式。
  • Show only Internet Explorer traffic:只顯示IE發出的請求。
  • Hide trafficfrom service host:隱藏來自service host的請求。如果不勾選,會出現很多其他後臺網路資料流。

(3)Request Headers :根據請求頭資訊進行過濾。

Request Headers:常用。

  • Show only if URL contains:僅顯示URL中包含指定字串的請求,字串可以是URL中的一部分,多個字串用空格分開。(多個表示 “或”,即只要URL包含任一字串,都會顯示),也可以使用EXACT:字首來限定大小寫,或者使用REGEX:字首正規表示式或完整的URL。
  • Hide if URL contains:僅隱藏URL中包含指定字串的請求(字串可以是URL中的一部分,多個用空格分開, 可以是正則或完整的URL,同上)。
  • Flag requests with headers:標記帶有特定header的請求,如果在web session列表中存在該請求,會加粗顯示。
    例如,我想突出顯示header資訊中帶有token欄位的URL請求,即可以勾選上這項,並在後面輸入:token。
  • Delete request headers: 刪除請求中指定的Header欄位。(在進行測試時非常有用,比如去掉URL中的token資訊,判斷伺服器是否有做token校驗)
  • Set request Header:在URL請求中新增頭欄位,與上一條對應。前面輸入欄位,後面輸入值。

(4)Breakpionts:設定斷點

很少用,畢竟可以通過bpubpafter以及改寫規則js設定斷點。

  • Break request on Post:針對所有Post請求設定斷點。
  • Break request on GET with query string:給所有帶引數的 GET 請求設定斷點。
  • Break on XMLHttpRequest:針對所有Ajax請求設定斷點。
  • Break response on Content-type:針對響應報文中header欄位中,Content-Type屬性匹配成功的請求設定斷點。

(5)Response Status Code:響應狀態碼過濾

根據URL請求響應狀態碼進行過濾,用的不多。

  • Hide success(2xx):隱藏響應狀態碼為2xx的URL請求,如:響應狀態碼為200的URL請求將隱藏掉。
  • Hide non-2xx:隱藏響應狀態碼不是2xx的URL請求。
  • Hide Authentication demands(401,407):隱藏認證(響應狀態碼為:401 407)的URL
    請求。這些響應需要使用者進一步確認證書,authentication demands是認證需求的意思。
  • Hide redirects(300,301,302,303,307):隱藏重定向(響應狀態碼為:300,301,302,303,07)的URL請求。
  • Hide Not Modifield(304):隱藏不是快取的狀態碼(304)的URL請求。 304是請求的資源從上次起沒有發生變更返回的狀態碼。

(6)Response Type and Size :根據響應型別和報文大小進行過濾

用的較少。

  • 下拉選單選擇要顯示的型別
    • Show all Content-Type:顯示所有型別Content-Type的請求,Content-Type即為響應結果header資訊中Content-Type欄位。
    • Show only IMAGE/*:僅顯示響應型別為圖片的請求。
      即響應header中Content-Type=IMAGE/的請求,*為萬用字元。
    • Show only HTML:僅顯示響應型別為HTML的請求。
    • Show only TEXT/CSS:僅顯示響應型別為text/css的請求。
    • Show only SCRIPTS:僅顯示響應型別為Scripts的請求。
    • Show only XML:僅顯示響應型別為XML的請求。
    • Show only JSON:僅顯示響應型別為Json的請求。
    • Hide IMAGE/*:隱藏所有響應型別為圖片的請求。
  • Hide smaller than:隱藏小於指定大小響應結果的請求。
    大小可以在 Inpsectors 中響應結果部分的 Transformer 中檢視。
  • Hide larger than:隱藏大於指定大小響應結果的請求。
  • Time HeatMap:時間的熱圖。
  • Block script files:阻止返回正常JS檔案。如果響應是指令碼檔案,那麼響應 404。
  • Block image files:阻止返回正常圖片檔案。如果響應是圖片檔案,那麼響應 404。
  • Block SWF files:阻止返回正常SWF檔案。如果響應是SWF 檔案,那麼響應 404。
    swf(shock wave flash):是Macromedia(現已被ADOBE公司收購)公司的動畫設計軟體Flash的專用格式。
  • Block CSS files:阻止返回正常CSS檔案。如果響應是 CSS 檔案,那麼響應 404。

提示:這個功能可以測試CSS、JS等載入失敗的情況下頁面的展示情況。

(7)Response Header:根據響應頭資訊進行過濾

根據URL請求響應header資訊進行過濾處理,用的較少。

  • Flag responses that set cookies:會話列表的響應中有cookies資訊的加上標識(斜體)。
  • Flag responses with headers:會話列表裡標記響應中帶有特定header的請求(即加粗)。
  • Delete response headers:會話列表裡刪除響應資訊中,有指定的Header欄位的會話。
  • Set response header:在響應中新增header欄位。
    如新增Transfer-Encoding: chunked,前面填寫Transfer-Encoding,後面填寫chunked

參考:http://www.51ste.com/share/det-925.html

相關文章