Fiddler抓包常用功能


通過上一篇文章Fiddler移動端抓包,我們知道了Fiddler抓包原理以及怎樣進行移動端抓包,接下來介紹Fiddler中常用的功能。

Fiddler中常用的功能如下:

  • 停止抓包
  • 清空會話窗內容
  • 過濾請求
  • 解碼
  • 設置斷點

一. 停止抓包

二. 清空會話窗

方法一,工具欄工具:

方法二,命令行形式:

當然,命令行工具也還支持其他命令的輸入,這里不做過多說明。

三. 過濾請求

打開Fiddler抓包時,會話窗口會顯示很多的請求,但我們只需要抓取到目標請求數據,這時就可以設置過濾。

過濾可以分為兩種方式:只顯示目標請求,只抓取目標端的請求。區別在於,前者是抓取所有請求但只顯示目標請求數目,后者是只抓取某個端的請求數據。

只顯示目標請求

操作步驟如下:

如界面右側下方所示,還可以勾選更多的條件進行過濾展示,這里不做過多說明,有興趣的可以自行嘗試。

只抓取目標端的請求

例如,我們只想對移動端抓包時,我們可以設置只抓取移動端的請求,進行如下設置:

四. 解碼

在抓取某些請求的時候,會發現返回的內容中出現了亂碼,如下圖所示

這是HTML被壓縮了的原因, 我們可以通過一下兩種方式去解壓縮。

方法一,點擊Responsebody is encoded.Click to decode.,如下:

方法二,先選中工具欄中的Decode,再請求抓包,這樣顯示的請求結果便是解碼后的結果。如下:

解碼后結果如下圖所示:

五. 設置斷點

有時進行調試時,我們需要偽造客戶端請求和服務器響應,那么這個時候就需要設置斷點。

偽造客戶端請求

偽造客戶端請求,即在客戶端點擊請求后、正式向服務器發送請求之前,修改原來的請求參數再發送請求,這需要設置斷點為Before Requests,步驟說明如下:

  1. 通過菜單選項或快捷鍵F11進行設置,如下圖步驟,點擊選擇Before Requests

    經過第一步的設置,我們再次去抓包,會發現在左側會話窗口中,所有請求都標記成了中斷,請求未發送成功而是被Fiddler中斷了,且此時客戶端可以看到數據加載異常。

    會話窗口中找到對應的請求,點擊選擇,右側選擇Inspectors,會顯示一行操作欄,點擊Run to Completion便可繼續發送被中斷的請求。

    但我們的目的是斷點后修改請求數據再發送請求。

  2. 找到對應的請求,修改請求數據

    以登錄Testerhome為例,先將設置斷點為Before Requests,在瀏覽器中輸入正確的賬號和密碼,點擊登錄,然后在Fiddler中找到該請求,將密碼清空,再點擊Run to Completion繼續發送請求,服務器會返回什么樣的結果,下面我們來驗證。

    可以看到,瀏覽器輸入正確的賬號密碼應該是要登錄成功的,但我們通過Fiddler打斷點后,對該登錄接口的請求參數做了修改之后再請求,返回錯誤:賬號或密碼錯誤,請重試。

偽造服務器響應

偽造服務器響應,即在響應返回給客戶端之前,將響應內容修改再返回,這需要設置斷點為After Responses。接下來還是以TestHome網站登錄接口為例,修改它的響應內容。步驟如下:

  1. 先將斷點規則設置為After Responses,如下:

  2. 正常登錄后會跳轉至TesterHome網站首頁,但此時我們可以修改返回參數,讓其登錄后跳轉至百度頁面,設置如下:

    如上圖所示,將圖中返回參數改成百度地址 (TextView形式下可對返回參數進行修改),再點擊Run to Completion,我們會看到登錄成功后跳轉到了百度頁面,而不是TestHome首頁。

注意事項

設置斷點的功能應有如下注意:

  • Inspectors中,在請求參數顯示窗口WebForms中可以修改請求參數,在響應參數顯示窗口TextView中可以修改返回參數。

  • 通過菜單選項或快捷鍵F11進行斷點設置,是全局有效的,即會對所有的HTTP請求都打上斷點

  • 如果只需要對某個服務器發出的請求設置斷點,可使用Fiddler的命令行工具輸入命令,Before Requests命令為bpu 服務器地址After Response命令為bpafter 服務器地址,如下圖所示:

  • 設置斷點后,需要取消斷點設置,需要將斷點設置成Disabled,操作如下:

  • 也可使用快捷工具進行斷點設置,如下圖所示位置,點擊切換即可:

六. 總結

Fiddler除了以上介紹的功能外,還有其他功能,如:

  • 限制網速,用於模擬弱網測試

  • 簡單的接口測試

  • mock

  • 結合第三方插件實現更多功能


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM