Burp Suite 是用於攻擊web 應用程序的集成平臺。它包含了許多Burp工具,這些不一樣的burp工具經過協同工做,有效的分享信息,支持以某種工具中的信息爲基礎供另外一種工具使用的方式發起攻擊。這些工具設計了許多接口,以促進加快攻擊應用程序的過程。全部的工具都共享一個能處理並顯示HTTP 消息,持久性,認證,代理,日誌,警報的一個強大的可擴展的框架。它是一個基於Java的Web滲透測試框架,已成爲信息安全專業人員使用的行業標準工具套件。 Burp Suite可幫助您識別漏洞並驗證影響Web應用程序的攻擊媒介。
burpsuite的模塊幾乎包含整個安全測試過程,從最初對目標程序的信息採集,到漏洞掃描及其利用,多模塊間高融合的配合,使得安全測試的過程更加高效。
在(安全人員經常使用工具表)[http://sectools.org/]中,burpsuite排在第13位,且排名在不斷上升,因而可知它在安全人員手中的重要性。web
攔截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應用程序。cookie
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:刪除選中代理地址。框架
應用智能感應的網絡爬蟲,它能完整的枚舉應用程序的內容和功能。編輯器
Control選項
用來開始和中止 Burp Spider,監視它的進度,以及定義 spidering 的範圍。
ide
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的最大數目。將此選項設置爲一個合理的數字能夠幫助避免爬行「無限」的內容。
高級工具,執行後,它能自動地發現web 應用程序的安全漏洞。
Scan queue選項
掃描隊列,這裏將顯示掃描隊列的狀態 進度 結果等。
主要包含如下內容:
- 索引號的項目,反映該項目的添加順序。
- 目的地協議,主機和URL 。
- 該項目的當前狀態,包括完成百分比。
- 項目掃描問題的數量(這是根據所附的最嚴重問題的重要性和彩色化) 。
- 在掃描項目的請求數量進行。
- 網絡錯誤的數目遇到的問題。
- 爲項目建立的插入點的數量。
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應該跳過某些測試。
一個定製的高度可配置的工具,對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上編輯這些選項,大部分設置也能夠在攻擊時對已在運行的窗口進行修改。
一個靠手動操做來觸發單獨的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:形同於右鍵菜單。