Burp Suite 攔截代理工具入門

A beginner's guide to Burp Suite proxy interception tool for web security testing

Burp Suite 簡介

Burp Suite 是由 PortSwigger 公司開發的一款整合式網頁應用程式安全測試工具。它是滲透測試人員和安全研究人員最常使用的工具之一,提供了一系列功能強大的模組,用於分析和攻擊網頁應用程式。

主要特點

  • 攔截代理(Proxy):攔截和修改瀏覽器與目標伺服器之間的 HTTP/HTTPS 流量
  • 爬蟲(Spider):自動探索網站的內容和功能
  • 掃描器(Scanner):自動掃描常見的網頁漏洞(僅限專業版)
  • 入侵者(Intruder):進行自動化的客製攻擊
  • 重放器(Repeater):手動修改和重新發送請求
  • 解碼器(Decoder):編碼和解碼各種格式的資料

版本比較

功能Community Edition(免費版)Professional Edition(專業版)
Proxy 攔截
Repeater
Decoder
自動掃描
進階 Intruder有限制

安裝與設定

系統需求

  • 作業系統:Windows、macOS 或 Linux
  • Java Runtime Environment(JRE)8 或更高版本
  • 建議記憶體:至少 4GB RAM

安裝步驟

  1. 下載 Burp Suite

    前往 PortSwigger 官方網站 下載適合您作業系統的版本。

  2. 安裝 Java(如果尚未安裝)

    1
    2
    3
    4
    5
    6
    
    # Ubuntu/Debian
    sudo apt update
    sudo apt install default-jre
    
    # macOS (使用 Homebrew)
    brew install openjdk
    
  3. 執行 Burp Suite

    下載完成後,執行安裝程式或直接運行 JAR 檔案:

    1
    
    java -jar burpsuite_community_vX.X.X.jar
    
  4. 初始設定

    首次啟動時,選擇「Temporary project」和預設設定即可開始使用。

Proxy 攔截設定

Proxy 模組是 Burp Suite 的核心功能,它允許您攔截、檢視和修改通過的 HTTP/HTTPS 請求和回應。

設定攔截代理

  1. 開啟 Proxy 設定

    在 Burp Suite 中,前往 Proxy > Options 標籤頁。

  2. 設定監聽埠

    預設情況下,Burp Suite 會在 127.0.0.1:8080 監聽。您可以根據需要修改:

    • 點擊「Add」新增監聽器
    • 設定綁定位址和埠號
    • 勾選「Running」啟用監聽器
  3. 設定 HTTPS 攔截

    為了攔截 HTTPS 流量,需要安裝 Burp 的 CA 憑證:

    • 開啟瀏覽器,設定代理後訪問 http://burp
    • 點擊「CA Certificate」下載憑證
    • 將憑證安裝到系統或瀏覽器的信任儲存區

攔截規則設定

Proxy > Options > Intercept Client Requests 中,您可以設定攔截規則:

  • URL 匹配:只攔截特定網域或路徑的請求
  • 方法匹配:只攔截特定 HTTP 方法(GET、POST 等)
  • 參數匹配:只攔截包含特定參數的請求

瀏覽器設定

Firefox 設定

  1. 開啟 Firefox,進入 設定 > 網路設定
  2. 選擇「手動設定 Proxy」
  3. 在 HTTP Proxy 和 HTTPS Proxy 中輸入:
    • 主機:127.0.0.1
    • 連接埠:8080
  4. 勾選「對所有通訊協定使用此 Proxy 伺服器」

Chrome 設定

Chrome 使用系統代理設定,您可以:

  1. 使用擴充功能:安裝 FoxyProxy 擴充功能
  2. 命令列啟動
    1
    
    google-chrome --proxy-server="127.0.0.1:8080"
    

安裝 CA 憑證

為了避免 HTTPS 網站出現憑證錯誤:

  1. 確保瀏覽器已設定 Burp Proxy
  2. 訪問 http://burp
  3. 點擊「CA Certificate」下載
  4. 在瀏覽器中匯入憑證(Firefox:設定 > 隱私與安全性 > 檢視憑證 > 匯入

基本功能介紹

1. Proxy - 攔截與修改請求

這是 Burp Suite 最基本也是最重要的功能。

使用方式:

  • Proxy > Intercept 標籤頁中,開啟「Intercept is on」
  • 當請求被攔截時,您可以:
    • Forward:發送請求到目標伺服器
    • Drop:丟棄該請求
    • 修改請求內容:直接在編輯區修改

範例:修改參數值

1
2
3
4
5
POST /login HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded

username=admin&password=test123

2. HTTP History - 檢視歷史記錄

所有通過 Proxy 的請求都會記錄在 Proxy > HTTP history 中。

功能:

  • 檢視所有請求和回應
  • 依據狀態碼、MIME 類型、參數等篩選
  • 右鍵選單可將請求發送到其他工具

3. Repeater - 重複發送請求

Repeater 允許您手動修改並重新發送請求,非常適合用於測試漏洞。

使用方式:

  1. 從 HTTP history 中右鍵選擇「Send to Repeater」
  2. 在 Repeater 標籤頁中修改請求
  3. 點擊「Send」發送請求
  4. 檢視回應結果

範例:測試 SQL 注入

1
2
GET /search?id=1' OR '1'='1 HTTP/1.1
Host: example.com

4. Intruder - 自動化攻擊

Intruder 可以對請求中的特定位置進行自動化測試。

攻擊類型:

  • Sniper:單一位置,逐一測試 payload
  • Battering ram:所有位置使用相同 payload
  • Pitchfork:多個位置使用不同 payload 列表(平行)
  • Cluster bomb:多個位置使用不同 payload 列表(組合)

使用方式:

  1. 發送請求到 Intruder
  2. 在 Positions 標籤頁中標記要測試的位置
  3. 在 Payloads 標籤頁中設定 payload 列表
  4. 點擊「Start attack」開始攻擊

5. Decoder - 編碼解碼工具

Decoder 提供各種編碼和解碼功能。

支援的編碼方式:

  • URL 編碼
  • HTML 編碼
  • Base64
  • ASCII Hex
  • MD5 / SHA 雜湊

使用方式:

  1. 在 Decoder 標籤頁中貼上要處理的資料
  2. 選擇「Decode as」或「Encode as」
  3. 選擇編碼類型

6. Comparer - 比較工具

用於比較兩個請求或回應之間的差異。

使用場景:

  • 比較不同參數值的回應差異
  • 分析認證前後的回應變化

總結

Burp Suite 是一款功能強大的網頁安全測試工具。本文介紹了基本的安裝設定和常用功能,包括:

  1. Proxy:攔截和修改 HTTP/HTTPS 流量
  2. Repeater:手動測試和重放請求
  3. Intruder:自動化攻擊測試
  4. Decoder:編碼解碼工具

建議初學者先熟悉 Proxy 和 Repeater 的操作,這是進行網頁滲透測試的基礎。隨著經驗的累積,可以逐步學習更進階的功能。

參考資源

comments powered by Disqus
Built with Hugo
Theme Stack designed by Jimmy