Fiddler修改請求、返回數據
相信你們有聽過說“繞過前端”,但是可能想不到要怎樣才能繞過前端呢?
首先,我們要知道什麽是繞過前端?比如:登錄用戶名限制數字、6位,用戶在登錄頁面填寫用戶名符合要求,使用Fiddler作為代理,攔截登錄請求,修改這個請求提交的用戶名(非數字、大於6位),此時的用戶名就是不符合前端設置的要求了,若是通過Fiddler修改請求的數據,這種就叫做繞過前端。
然後,為什麽會有通過測試繞過前端呢?再舉個例子:下單付款->若是通過Fiddler攔截了請求,更改了商品的價格為1,再重新發送到服務器,如果此時的後端沒有做校驗的話,此時的商品價格只需要一元購買,要是將價格改為負數呢?余額是不是要增加了?隨時繞過前端更改價格,後端沒有做校驗的話,後果簡直不堪想象,這個就是需要通過繞過前端看後端有沒有做檢驗的重要性!!!
那麽怎麽通過Fiddler修改請求和返回的數據呢?
第一種:右鍵選中請求 ->replay -> Ruissue and Edit -> 修改參數後 ->run to completion
第二種:設置斷點 ->攔截請求後,對請求頭或響應的數據 進行修改
- rules ->Automatic BreakPoints -> Before request :攔截客戶端發送到服務器的請求,修改header的內容
- rules ->Automatic BreakPoints -> After response :攔截服務器響應的數據,修改後,再返回到客戶端
Before request :在Fiddler攔截到請求,沒有發送到服務器之前
操作步驟:
- 準備抓取請求前,選擇rules ->Automatic BreakPoints -> Before request,選擇這個規則後,此時瀏覽器屬於堵塞狀態(處於一直加載中,因為被攔截了,請求發送不到服務器,一直在嘗試發送)
- 找到需要修改的請求,可以修改header 、WebForms的參數等
- 修改之後,取消規則 -》Disabled
- 最後,點擊run to completion,此時再觀察瀏覽,查看修改的內容是不是已經生效
實際操作:設置斷點
這個圖標就代表連接被攔截了,選中即可跳轉到Inspectors,可修改請求的內容
攔截登錄請求,修改登錄的用戶名,再點擊run to completion,修改的內容會重新提交到服務器
修改內容之後,將規則取消 ,再點擊 run to completion
After response :攔截服務器響應的數據,修改後,再返回到客戶端
操作步驟:
- 選擇 rules ->Automatic BreakPoints -> After response ,選擇這個之後,頁面也是處於加載中(被攔截了)
- 選擇要修改的請求,修改返回的數據,TextView可以修改返回的響應數據
- 將rules取消,即Disabled
- 最後點擊run to completion,觀察頁面的返回結果,是不是已經被修改了
Fiddler修改請求、返回數據