前言
我的靶場 (DVWA) 已經在伺服器 (LAMP) 上完美運行,而這一切都搭建在作業系統 (Kali Linux) 中。今天,將正式拿出滲透測試中不可或缺的神器——Burp Suite。
什麼是 Burp Suite?簡單來說,它是一個攔截式代理 (Intercepting Proxy)。在正常情況下,瀏覽器會直接和網站伺服器溝通。但啟動 Burp Suite 後,所有的溝通都會先經過它。
正常流程:
你的瀏覽器 <--> DVWA 網站伺服器
使用 Burp Suite 後的流程:
瀏覽器 <--> [Burp Suite] <--> DVWA 網站伺服器
這代表什麼?這意味著,從瀏覽器發出的每一個請求 (Request),以及伺服器回傳的每一個回應 (Response),都會被 Burp Suite 鉅細靡遺地記錄下來。更重要的是,可以在封包傳出去之前攔截它、分析它,甚至修改它!這就是 Web 滲透測試的核心所在。
第一步:啟動 Burp Suite
Kali Linux 已經為我們內建了 Burp Suite Community Edition 。
點擊桌面左上角的 Kali 龍形圖示。
在應用程式選單中,找到 「03 - Web Application Analysis」 -> 「burpsuite」。
啟動時,它會詢問專案類型,我們選擇 「Temporary project」 (臨時專案) 即可,然後點擊「Next」。
接著選擇 「Use Burp defaults」 (使用預設設定),點擊「Start Burp」。
第二步:設定瀏覽器代理 (Proxy)
為了讓瀏覽器的流量經過 Burp Suite,我們必須手動設定 Firefox 的代理伺服器。
打開 Kali 中的 Firefox 瀏覽器。
點擊右上角的選單按鈕 (三條橫線),選擇 「Settings」 (設定)。
在左側選擇 「General」 (一般),然後將頁面捲動到最下方的 「Network Settings」 (網路設定),點擊「Settings...」按鈕。
在跳出的視窗中,選擇 「Manual proxy configuration」 (手動設定代理)。
在 「HTTP Proxy」 欄位中,輸入 127.0.0.1。
在旁邊的 「Port」 (埠號) 欄位中,輸入 8080。
勾選 「Also use this proxy for HTTPS」 (也將此代理用於 HTTPS)。
點擊「OK」儲存設定。
第三步:安裝 Burp CA 憑證 (處理 HTTPS 的關鍵)
設定完代理後,如果你嘗試瀏覽 http://127.0.0.1 (我的 DVWA),一切正常。但如果嘗試瀏覽任何 https 網站 (例如 https://google.com),瀏覽器會跳出嚴重的安全性警告。
這是因為 Burp Suite 作為中間人,解密了 HTTPS 流量,但瀏覽器不信任 Burp Suite 自己簽發的憑證。我們必須手動告訴 Firefox:「我信任 Burp Suite」。
確保 Burp Suite 正在運行,且 Firefox 代理已設定好。
在 Firefox 網址列輸入 http://burp/ 或 http://127.0.0.1:8080。
會看到一個歡迎頁面,點擊右上角的 「CA Certificate」 下載憑證檔案 (cacert.der)。
再次進入 Firefox 的 「Settings」,這次選擇 「Privacy & Security」 (隱私與安全)。
捲動到最下方,找到 「Certificates」 (憑證),點擊 「View Certificates...」 (檢視憑證)。
在跳出的憑證管理器中,選擇 「Authorities」 (憑證機構) 分頁,點擊 「Import...」 (匯入)。
選擇剛剛下載的 cacert.der 檔案。
在接下來的對話框中,勾選「Trust this CA to identify websites.」 (信任此 CA 以識別網站),然後點擊「OK」。
現在,再試著瀏覽 https 網站,會發現一切都恢復正常了!
今日總結與明日預告
Burp Suite 作為代理的運作原理。
如何設定瀏覽器,將流量導向 Burp Suite。
如何安裝 CA 憑證以處理加密的 HTTPS 流量。
明天任務將會是,如何成功攔截並檢視一個 HTTP 請求!