Burp Suite初學者教程


什么是Burp Suite

Burp Suite 是用於攻擊web 應用程序的集成平台。它包含了許多Burp工具,這些不同的burp工具通過協同工作,有效的分享信息,支持以某種工具中的信息為基礎供另一種工具使用的方式發起攻擊。這些工具設計了許多接口,以促進加快攻擊應用程序的過程。所有的工具都共享一個能處理並顯示HTTP 消息,持久性,認證,代理,日志,警報的一個強大的可擴展的框架。它是一個基於Java的Web滲透測試框架,已成為信息安全專業人員使用的行業標准工具套件。 Burp Suite可幫助您識別漏洞並驗證影響Web應用程序的攻擊媒介。
burpsuite的模塊幾乎包含整個安全測試過程,從最初對目標程序的信息采集,到漏洞掃描及其利用,多模塊間高融合的配合,使得安全測試的過程更加高效。
在(安全人員常用工具表)[http://sectools.org/]中,burpsuite排在第13位,且排名在不斷上升,由此可見它在安全人員手中的重要性。

功能模塊

  • Proxy模塊
  • Spider模塊
  • Scanner模塊
  • Intruder模塊
  • Repeater模塊

Proxy模塊

攔截HTTP/S的代理服務器,作為一個在瀏覽器和目標應用程序之間的中間人,允許你攔截,查看,修改在兩個方向上的原始數據流。

Intercept選項

  • Forward:用於發送數據。當把所需要的HTTP請求編輯編輯完成后,手動發送數據。
  • Drop:將該請求包丟棄。
  • Intercept is off/on:攔截開關。當處於off狀態下時,BurpSuite會自動轉發所攔截的所有請求;當處於on狀態下時,BurpSuite會將所有攔截所有符合規則的請求並將它顯示出來等待編輯或其他操作。
  • Action:功能菜單,與右鍵菜單內容相同,在這可以將請求包發送到其他的模塊或者對數據包進行其他的操作,菜單中的詳細功能我們會在后續課程中陸續說明。

http history選項

詳細信息:(#)請求索引號、Host(主機)、Method(請求方式)、URL(請求地址)、Params(參數)、Edited(編輯)、Status(狀態)、Length(響應字節長度)、MIME type(響應的MLME類型)、Extension(地址文件擴展名)、Title(頁面標題)、Comment(注釋)、SSL、IP(目標IP地址)、Cookies、Time(發出請求時間)、Listener port(監聽端口)。

WebSockets history選項

這個版塊用於記錄WebSockets的數據包,是HTML5中最強大的通信功能,定義了一個全雙工的通信信道,只需Web上的一個 Socket即可進行通信,能減少不必要的網絡流量並降低網絡延遲。

Options選項
該版塊主要用於設置代理監聽、請求和響應,攔截反應,匹配和替換,ssl等。
以代理監聽(Proxy Listeners)為例:

代理偵聽器是偵聽從您的瀏覽器傳入的連接本地HTTP代理服務器。它允許您監視和攔截所有的請求和響應,並且位於BurpProxy的工作流的心臟。默認情況下,Burp默認監挺127.0.0.1地址,端口8080。要使用這個監聽器,你需要配置你的瀏覽器使用127.0.0.1:8080作為代理服務器。此默認監聽器是必需的測試幾乎所有的基於瀏覽器的所有Web應用程序。

  • add:添加一個新的代理地址。
  • binding:新建一個代理,bind to port-綁定端口號 ,bind to address -綁定ip地址
  • request hadning:這些設置包括選項來控制是否BurpSuite重定向通過此偵聽器接收到的請求:
  • Redirect to host - 如果配置了這個選項,Burp會在每次請求轉發到指定的主機,而不必受限於覽器所請求的目標。需要注意的是,如果你正使用該選項,則可能需要配置匹配/替換規則重寫的主機中的請求,如果服務器中,您重定向請求預期,不同於由瀏覽器發送一個主機頭。
  • Redirect to port - 如果配置了這個選項,Burp會在每次請求轉發到指定的端口,而不必受限於瀏覽
  • Force use of SSL - 如果配置了這個選項,Burp會使用HTTPS在所有向外的連接,即使傳入的請求中使用普通的HTTP。您可以使用此選項,在與SSL相關的響應修改選項結合,開展sslstrip般的攻擊使用Burp,其中,強制執行HTTPS的應用程序可以降級為普通的HTTP的受害用戶的流量在不知不覺中通過BurpProxy代理。
  • Certificate:這些設置控制呈現給客戶端的SSL服務器的SSL證書。
  • Generate CA-signed per-host certificate-這是默認選項。安裝后,BurpSuite創造了一個獨特的自簽名的證書頒發機構(CA)證書,並將此計算機上使用,每次BurpSuite運行。當你的瀏覽器發出SSL連接到指定的主機,Burp產生該主機,通過CA證書簽名的SSL證書。您可以安裝BurpSuite的CA證書作為在瀏覽器中受信任的根,從而使每個主機的證書被接受,沒有任何警報。您還可以導出其他工具或Burp的其他實例使用CA證書。
  • Generate a CA-signed certificate with a specific hostname---||這類似於前面的選項;然而,Burp會產生一個單一的主機證書與每一個SSL連接使用,使用您指定的主機名。在進行無形的代理時,此選項有時是必要的,因為客戶端沒有發送連接請求,因此Burp不能確定SSL協議所需的主機名。你也可以安裝BurpSuite的CA證書作為受信任的根。
  • Use a custom certificate---||-此選項使您可以加載一個特定的證書(在PKCS#12格式)呈現給你的瀏覽器。如果應用程序使用它需要特定的服務器證書(例如一個給定序列號或證書鏈)的客戶端應該使用這個選項。
  • edit:編輯選中的代理地址。相關選項類似於add,不再敘述。
  • remove:刪除選中代理地址。

Spider模塊

應用智能感應的網絡爬蟲,它能完整的枚舉應用程序的內容和功能。

Control選項
用來開始和停止 Burp Spider,監視它的進度,以及定義 spidering 的范圍。

  • Spider Status:用來開始和停止 Burp Spider,監視它的進度。
  • Spider running:運行蜘蛛。這里顯示的一些 Spider 進度的指標,讓你能看到剩余的內容和工作量的大小。
  • Clear queues:清除隊列。停止並清除正在運行的爬行線程。
  • 工作量內容:
  • Requests made:已經發出的請求
  • bytes transferred:傳輸的字節
  • requests queued:未發送的請求
  • forms queued:排隊的表格
  • Spider Scope:精准的定義 spidering 的范圍。
  • Use suite scope [defined in target tab]:使用套件范圍[在目標標簽中定義]- Use custom scope:使用自定義的范圍。選擇該項后會出現詳細的配置列表,如圖:

Options選項
這個選項里包含了許多控制 Burp Spider 動作的選項。

  • Crawler Settings:爬蟲設置。設置控制蜘蛛爬行的基本Web內容。
  • check robots.txt:檢測robot.txt文件。選擇后Burp Spider會要求和處理robots.txt文件,提取內容鏈接。
  • Detect custom "not found" responese:檢測自定義的'not found'響應。打開后Burp Spider會從每個域請求不存在的資源,編制指紋與診斷“not found”響應其它請求檢測自定義“not found”的響應。
  • ignore links to non-text content:忽略非文本內容的連接。這個選項被選中,Spider 不會請求非文本資源。使用這個選項,會減少 spidering 時間。
  • request the root of all directories:請求所有的根目錄。如果這個選項被選中,Burp Spider 會請求所有已確認的目標范圍內的 web 目錄,如果在這個目標站點存在目錄遍歷, 這選項將是非常的有用。
  • make a non-parameterized request to each dynamic page:對每個動態頁面進行非參數化的請求。如果這個選項被選中,Burp Spider 會對在范圍內的所有執行動作的 URL 進行無參數的 GET 請求。如果期待的參數沒有被接收, 動態頁面會有不同的響應,這個選項就能成功地探測出額外的站點內容和功能。
  • Maximum link depth:這是Burp Suite在種子 URL 里的瀏覽”hops”的最大數。0表示讓Burp Suite只請求種子 URL。如果指定的數值非常大,將會對范圍內的鏈接進行無限期的有效跟蹤。將此選項設置為一個合理的數字可以幫助防止循環Spider在某些種類的動態生成的內容。
  • Maximum parameterized requests per URL:請求該蜘蛛用不同的參數相同的基本URL的最大數目。將此選項設置為一個合理的數字可以幫助避免爬行“無限”的內容。

Scanner模塊

高級工具,執行后,它能自動地發現web 應用程序的安全漏洞。

Scan queue選項
掃描隊列,這里將顯示掃描隊列的狀態 進度 結果等。

  • 主要包含以下內容:
    1. 索引號的項目,反映該項目的添加順序。
    1. 目的地協議,主機和URL 。
    1. 該項目的當前狀態,包括完成百分比。
    1. 項目掃描問題的數量(這是根據所附的最嚴重問題的重要性和彩色化) 。
    1. 在掃描項目的請求數量進行。
    1. 網絡錯誤的數目遇到的問題。
    1. 為項目創建的插入點的數量。

Linve scanning選項
實時掃描可讓您決定哪些內容通過使用瀏覽器的目標應用,通過BurpProxy服務器進行掃描。您可以實時主動掃描設定live active scanning(積極掃描)和live passive(被動掃描)兩種掃描模式。

  • Live Active Scanning:積極掃描。當瀏覽時自動發送漏洞利用代碼。
  • Don't scan:不開啟掃描。
  • Use suite scope[defined in target tab]:如果你已經配置了一套全范圍的目標為你目前的工作,那么你可以簡單地通知Burp主動掃描落在該范圍內的每個請求。
  • Use custom scope:自定義掃描。選中后會出現編輯列表,可以使用URL匹配規則定義自定義范圍。
  • Live Passive Scanning:被動掃描。只分析流量不發送任何請求。
  • Don't scan:不開啟掃描。
  • Scan everything:掃描所有。掃描所有經過代理的流量。
  • Use suite scope[defined in target tab]:如果你已經配置了一套全范圍的目標為你目前的工作,那么你可以簡單地通知Burp主動掃描落在該范圍內的每個請求。
  • Use custom scope:自定義掃描。選中后會出現編輯列表,可以使用URL匹配規則定義自定義范圍

Issue definitions選項
漏洞列表,列出了burp可以掃描到的漏洞詳情。

這里詳細說明了常見漏洞的介紹,這里不做詳細介紹。

Options選項
包含Burp掃描選項進行攻擊的插入點,主動掃描引擎,主動掃描優化,主動掃描區和被動掃描區域。

  • Attack Insertion Points:攻擊的插入點。設定將攻擊放在哪個位置。
  • URL parameter values:將攻擊代碼放在URL中。
  • Body parameter values - 將攻擊代碼放在正文中,包括標准形式生成的參數參數值,屬性的多重編碼的參數,如上傳的文件名, XML參數值和屬性,和JSON值。
  • Cookie parameter values - 將攻擊代碼放在HTTP Cookie的值中。
  • Parameter name - 任意添加的參數的名稱。
  • HTTP headers - 在引用頁和用戶代理標頭的值。測試這些插入點通常可以檢測如SQL注入或跨站腳本持續在日志記錄功能的問題。
  • AMF string parameters- 內AMF編碼的郵件的任何字符串數據的值。
  • REST-style URL parameters - URL的文件路徑部分中的所有目錄和文件名令牌的值。測試每一個插入點可以並處顯著開銷,如果你相信應用程序使用這些位置傳送參數數據,才應使用。
  • Cheange Parameter locations (causes many more scan requests):修改參數的位置(會產生更多的掃描請求),可以一些防火牆或過濾器。
  • URL to body
  • URL to cookie
  • Body to URL
  • Cookie to URL
  • Cookie to body
  • Use Nested Insertion Points:使用嵌套插入點。嵌套的插入時,會使用一個插入點的基值包含可識別的格式的數據。 例如,一個URL參數可能包含Base64編碼數據,並且將解碼后的值可能又包含JSON或XML數據。與使用啟用嵌套插入點的選項,Burp會為輸入在每個嵌套級別中的每個單獨的項目適合的插入點。
  • Maximum Insertion Points Per Request:限制每個請求的最大插入點。
  • Skip server-side injction tests for these parameters / skip all tests for these parameters :跳過列表中參數的測試。設定讓您指定請求參數的Burp應該跳過某些測試。

Intruder模塊

一個定制的高度可配置的工具,對web應用程序進行自動化攻擊,如:枚舉標識符,收集有用的數據,以及使用fuzzing 技術探測常規漏洞。

Target
用於配置目標服務器進行攻擊的詳細信息。

  • Host:這是目標服務器的IP地址或主機名。
  • Port:這是目標服務的端口號。
  • Use HTTPS:這指定的SSL是否應該被使用
    在BurpSuite任何請求處,右鍵菜單選擇“Send to intruder”選項,將自動發送到此模塊下並自動填充以上內容。

Positions
設置Payloads的插入點以及攻擊類型(攻擊模式)。

  • attack type:攻擊模式設置
  • sniper:對變量依次進行破解。多個標記依次進行。
  • battering ram:對變量同時進行破解。多個標記同時進行。
  • pitchfork:每一個變量標記對應一個字典,取每個字典的對應項。
  • cluster bomb:每個變量對應一個字典,並且進行交集破解,嘗試各種組合。適用於用戶名+密碼的破解。
  • add:插入一個新的標記
  • clear:清除所有的標記
  • auto:自動設置標記,一個請求發到該模塊后burpsuite會自動標記cookie URL等參數
  • refresh:如果必要的話,這可以要求模板編輯器的語法高亮。

Payloads
設置payload,配置字典。

Options
此選項卡包含了request headers,request engine,attack results ,grep match,grep_extrack,grep payloads和redirections。你可以發動攻擊之前,在主要Intruder的UI上編輯這些選項,大部分設置也可以在攻擊時對已在運行的窗口進行修改。

Repeater模塊

一個靠手動操作來觸發單獨的HTTP 請求,並分析應用程序響應的工具。

Repeater是用於手動操作和發送個別HTTP請求,並分析應用程序的響應一個簡單的工具。您可以發送一個內部請求從Burp任何地方到Repeater,修改請求並且發送。

  • 可以從Proxy history、site map、Scanner等模塊中右鍵菜單send to repeater發送到repeater,對頁面數據進行修改發送。
  • 點擊go,發送請求,右邊響應請求。
  • 可以通過“<“和”>“來返回上一次和下一個操作。
  • 單擊”x“可以刪除當前測試請求頁面。
  • 底部的功能用於搜索條件,可以用正則表達式,底部右邊顯示匹配結果數。
    該模塊的設置在菜單欄 Repeater中,主要選項如下:
  • Update Content-length:更新頭部長度。
  • Unpack gzip/deflate:該選項控制Burp是否自動解壓縮在收到的答復的gzip和deflate壓縮內容。
  • Follow redirections:在遇到重定向時Burp該怎么處理
  • Never:不會跟隨任何重定向。
  • On-site only:中繼器將只跟隨重定向到使用相同的主機,端口和協議的URL。
  • In-scope Only:中繼器將只跟隨重定向到的目標范圍之內的URL。
  • Always:中繼器將跟隨重定向到任何URL任何責任。
  • Process cookies in redirections:當被重定向后是否提交cookie。
  • View:設置響應/請求版塊的布局方式。
  • Action:形同於右鍵菜單。


免責聲明!

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



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