Fiddler 學習筆記

本文根據 全網最全最細Fiddler抓包工具,沒有之一【檸檬班】 整理所得後端

1. Fiddler 介紹

  • Fiddler 是位於客戶端和服務端之間的 HTTP 代理
  • 目前最經常使用的 HTTP 抓包工具之一
  • 功能很是強大,是 Web 調試的利器瀏覽器

    • 監控瀏覽器全部的 HTTP / HTTPS 流量
    • 查看、分析請求的內容細節
    • 僞造客戶端請求和服務器響應
    • 測試網站性能
    • 解密 HTTPS 的 Web 會話
    • 全局、局部斷點功能
    • 第三方插件
  • 使用場景緩存

    • 接口調試、接口測試、線上環境調試、Web 性能分析
    • 判斷先後端 bug、開發環境 hosts 配置、mock 假數據、弱網斷網測試

2. 工做原理

工做原理.JPG

3. 安裝

略。安全

3. 界面介紹

界面介紹

3.1 菜單欄

  • 設置代理端口:Tools > Options > Connections > 修改 Fiddler listens on port 值便可
  • 隱藏創建通道的鏈接:Rules > Hide CONNECTs(經常使用)
  • 隱藏 304 會話:Rules > Hide 304s(經常使用)

3.2 工具條

從左到右按順序服務器

  • WinConfig:略
  • 氣泡(對話框)圖標:添加備註,在 File > Save 保存會話給別人看的時候有用
  • Replay:重發選中的請求(快捷鍵 r),同時按住 shift 能夠重複發屢次
  • × 圖標:刪除會話,快捷鍵 ctrl + x 刪除全部會話
  • Go:在會話進入斷點時恢復會話
  • Stream:流模式,通常不用
  • Decode:對全部會話解碼
  • Keep:保留會話條數,例如 100 條、250 條等等
  • 瞄準圖標:按住不放,而後將「十字圖標」拖動到想要監聽的進程,好比拖到 Chrome 瀏覽器,那麼就只會捕捉到 Chrome 的請求
  • Find:快捷鍵 ctrl + f
  • Save:保存當前會話爲一個 .saz 後綴的文件
  • 相機圖標:截圖
  • 時鐘圖標:計時器,右鍵取消
  • IE 圖標:快速打開瀏覽器
  • Clear Cache:清除 IE 瀏覽器緩存
  • TextWizard:打開轉碼工具
  • Tearoff:拆分面板
  • 搜索框:進入 https://social.msdn.microsoft...
  • 電腦圖標:顯示本機網絡信息

3.3 監控面板(會話列表)

展現了 Fiddler 抓取到的每條 HTTP 請求,每一條稱爲一個 session,每條 session 都包含了網絡

  • #:序號,按照頁面加載順序遞增
  • Result:狀態碼
  • Protocal:協議,如 HTTP、HTTPS
  • Host:域名
  • URL:請求地址
  • Body:請求大小,單位爲 byte
  • Caching:緩存相關信息
  • Content-Type:MIME 類型
  • Process:發出該請求的進程
  • Comments:備註
  • Custom:用戶經過腳本設置的自定義值

3.4 命令行 + 狀態欄

3.4.1 命令行

命令行幫助文檔 session

3.4.2 狀態欄

從左到右按順序ide

  • Capturing:正在捕捉請求中,點一下就能夠取消捕捉
  • 篩選不一樣進程發出的會話
  • 斷點,點一下在發起請求以前進入斷點,點兩下在請求響應響應以後進入斷點
  • 附加信息

3.5 輔助標籤 + 工具

3.5.1 Statistics(統計)

請求的性能和其餘數據分析,如 DNS 解析時間,創建 TCP/IP 鏈接的時間等工具

3.5.2 Inspectors(檢查器)

能夠以不一樣的格式(Headers、TextView、Raw 等等)查看請求報文和響應報文性能

3.5.3 AutoResponder(自動相應器)

攔截某一請求,而後進行以下操做

  • 使用 Fiddler 內置的響應
  • 自定義響應
  • 重定向到本地的資源

能夠攔截 js 文件製做釣魚網站或者 mock 假數據

比方說,項目在正式環境出了問題,直接在正式環境修改代碼是不合理的,此時就能夠用 AutoResponder 將請求攔截,而後重定向到指定的響應內容

Fiddler 具體設置以下

  1. 勾選 Enable rules
  2. 勾選 Unmatched requests passthrough
  3. 點擊 Add Rule
  4. 在 Rule Editor 輸入要攔截的地址
  5. 在 Rule Editor 選擇要採起的響應
  6. 點擊 Save

3.5.4 Composer(創做者)

簡單的接口測試工具

3.5.5 Filter(過濾器)

多維度的過濾規則,包括

  • Hosts過濾

    zone filter 分爲了 intranet 局域網(內網)和internet 互聯網(外網)

    Flag the following Hosts 標示(重要處)一下的域名

  • Client Process過濾(客戶端進程)
  • Request Headers 過濾
  • Breakpoints(打斷點)
  • Response Status Code 過濾
  • Response Type and Size 過濾
  • Response Headers 過濾

Fiddler 具體設置

  1. 勾選 Use Filters(記得取消勾選
  2. 勾選好過濾條件
  3. 點擊右上角(Use Filters 右邊)的 Actions > Run filterset now

4. 斷點

  • 能夠在請求前篡改請求數據
  • 能夠在響應後篡改響應數據
  • 模擬網絡超時的狀況

Fiddler 具體設置

  • 全局斷點:Rules > Automatic Breakpoints > Before Requests 或者 After Responses(也能夠直接在最下面的狀態欄設置,3.4.2 有介紹)
  • 局部斷點

    • 請求前斷點:在下面的命令行處輸入 bpu login,便可將請求中帶有 login 的請求中斷,再次輸入 bpu 取消斷點
    • 響應後斷點:在下面的命令行處輸入 bpafter login,便可將請求中帶有 login 的請求中斷,再次輸入 bpafter 取消斷點

5. 弱網測試

Fiddler 具體設置:Rules > Performance > Simulate Modem Speeds

還能夠自定義限速的狀態,具體操做:

  1. Rules > Customize Rules
  2. 在代碼中搜索「if (m_SimulateModem) {」,找到後修改裏面的數值便可(記得要勾選 Rules > Performance > Simulate Modem Speeds

5. HTTPS 抓包

Fiddler 具體操做:Tools > Options > HTTPS > 勾選 Decrypt HTTPS traffic

若是仍是不能抓取 HTTPS 請求,執行下面操做:

  1. Tools > Options > HTTPS > Actions > 點擊 Reset All Certificates,而後一直點肯定來安裝 fiddler 證書
  2. 而後 Tools > Options > HTTPS > Actions > 點擊 Open Windows Certificate Manager 打開管理計算機證書界面
  3. 在 Windows 的管理計算機證書界面,點擊操做 > 查找證書 > 搜索 fiddler,能查找到相應的證書即設置成功

5.1 Firefox 設置(IE 和 Chrome 執行上述操做便可)

  1. Firefox 右上角 > 選項(或者地址欄輸入 about:preferences) > 找到網絡設置(不一樣版本可能的位置不同),選中「使用系統代理設置」
  2. Fiddler > Tools > Options > HTTPS > Actions > 點擊 Export Root Certificate to Desktop 導出證書到桌面
  3. Firefox 右上角 > 選項 > 找到證書模塊,點擊查看證書 > 選擇證書機構 > 點擊導入,選擇第 2 步的證書,而後將提示框中的選項都勾中,點擊肯定,重啓 Firefox 便可

6. 抓 iOS 設備中的 App 的包

  1. Fiddler > Tools > Options > Connections > 勾選 Allow remote computers to connect
  2. Fiddler > Tools > Options > HTTPS > 勾選 Capture HTTPS CONNECTS 和勾選 Decrypt HTTPS traffic
  3. 將 iOS 設備和電腦鏈接 WiFi 並設置代理,服務器填寫電腦 IP,端口填寫 Fiddler 設置的端口(Tools > Options > Connections > Fiddler listens on port)
  4. iOS 設備使用瀏覽器打開 192.168.1.103:8888(電腦 IP 和 Fiddler 設置的端口),而後點擊 FiddlerRoot certificate 進行安裝操做
  5. 安裝成功後,iOS 設備設置 > 通用 > 關於本機 -> 證書信任設置中信任剛安裝的 Fiddler 證書便可
  6. 記得關閉代理

7. 抓 Android 設備中的 App 的包

  1. 同 iOS 設備
  2. 同 iOS 設備
  3. 同 iOS 設備
  4. 同 iOS 設備
  5. 安裝後,在(華爲手機,其餘安卓機相似)設置 > 安全 > 受信任的憑據 > 選擇用戶,查看是否有 Fiddler 的證書,若是有即設置成功了。若是沒有,則在設置 > 安全 > 從 sd 卡安裝 > 安裝剛剛下載的證書便可
  6. 記得關閉代理

8. 其餘問題

  • 卸載 Fiddler 以後瀏覽器上不了網

    Windows 系統,打開更改代理設置,關掉代理便可

相關文章
相關標籤/搜索