發表日期:2018-04 文章編輯:小燈 瀏覽次數:3559
Getting Started
Burp Suite 是用于攻擊web 應用程序的集成平臺。它包含了許多工具,并為這些工具設計了許多接口,以促進加快攻擊應用程序的過程。所有的工具都共享一個能處理并顯示HTTP 消息,持久性,認證,代理,日志,警報的一個強大的可擴展的框架。本文主要介紹它的以下特點:
1.Target(目標)——顯示目標目錄結構的的一個功能
2.Proxy(代理)——攔截HTTP/S的代理服務器,作為一個在瀏覽器和目標應用程序之間的中間人,允許你攔截,查看,修改在兩個方向上的原始數據流。
3.Spider(蜘蛛)——應用智能感應的網絡爬蟲,它能完整的枚舉應用程序的內容和功能。
4.Scanner(掃描器)——高級工具,執行后,它能自動地發現web 應用程序的安全漏洞。
5.Intruder(入侵)——一個定制的高度可配置的工具,對web應用程序進行自動化攻擊,如:枚舉標識符,收集有用的數據,以及使用fuzzing 技術探測常規漏洞。
6.Repeater(中繼器)——一個靠手動操作來觸發單獨的HTTP 請求,并分析應用程序響應的工具。
7.Sequencer(會話)——用來分析那些不可預知的應用程序會話令牌和重要數據項的隨機性的工具。
8.Decoder(解碼器)——進行手動執行或對應用程序數據者智能解碼編碼的工具。
9.Comparer(對比)——通常是通過一些相關的請求和響應得到兩項數據的一個可視化的“差異”。
10.Extender(擴展)——可以讓你加載Burp Suite的擴展,使用你自己的或第三方代碼來擴展Burp Suit的功能。
11.Options(設置)——對Burp Suite的一些設置
測試工作流程
Burp支持手動的Web應用程序測試的活動。它可以讓你有效地結合手動和自動化技術,使您可以完全控制所有的BurpSuite執行的行動,并提供有關您所測試的應用程序的詳細信息和分析。 讓我們一起來看看Burp Suite的測試流程過程吧。 如下圖
簡要分析
代理工具可以說是Burp Suite測試流程的一個心臟,它可以讓你通過瀏覽器來瀏覽應用程序來捕獲所有相關信息,并讓您輕松地開始進一步行動,在一個典型的測試中,偵察和分析階段包括以下任務:
手動映射應用程序-使用瀏覽器通過BurpSuite代理工作,手動映射應用程序通過以下鏈接,提交表單,并通過多步驟的過程加強。這個過程將填充代理的歷史和目標站點地圖與所有請求的內容,通過被動蜘蛛將添加到站點地圖,可以從應用程序的響應來推斷任何進一步的內容(通過鏈接、表單等)。也可以請求任何未經請求的站點(在站點地圖中以灰色顯示的),并使用瀏覽器請求這些。
在必要是執行自動映射-您可以使用BurpSuite自動映射過程中的各種方法。可以進行自動蜘蛛爬行,要求在站點地圖未經請求的站點。請務必在使用這個工具之前,檢查所有的蜘蛛爬行設置。
使用內容查找功能發現,可以讓您瀏覽或蜘蛛爬行可見的內容鏈接以進一步的操作。
使用BurpSuite Intruder(入侵者)通過共同文件和目錄列表執行自定義的發現,循環,并確定命中。
注意,在執行任何自動操作之前,可能有必要更新的BurpSuite的配置的各個方面,諸如目標的范圍和會話處理。
分析應用程序的攻擊面 - 映射應用程序的過程中填入代理服務器的歷史和目標站點地圖與所有的BurpSuite已抓獲有關應用程序的信息。這兩個庫中包含的功能來幫助您分析它們所包含的信息,并評估受攻擊面的應用程序公開。此外,您可以使用BurpSuite的目標分析器報告的攻擊面的程度和不同類型的應用程序使用的URL 。
接下來主要介紹下BurpSuite的各個功能吧。先介紹Proxy功能,因為Proxy起到一個心臟功能,所有的應用都基于Proxy的代理功能。
Burp Suite功能按鈕鍵翻譯對照
導航欄???
BurpBurpSuitesave state wizard保存狀態向導
restore state恢復狀態Remember setting記住設置
restore defaults恢復默認Intruder入侵者
Start attack開始攻擊(爆破)Actively scan defined insertion points定義主動掃描插入點
Repeater中繼器New tab behavior新標簽的行為
Automatic payload positions自動負載位置config predefined payload lists配置預定義的有效載荷清單
Update content-length更新內容長度unpack gzip/deflate解壓gzip/放棄
Follow redirections跟隨重定向process cookies in redirections在重定向過程中的cookies
View視圖Action行為
功能項???
Target目標Proxy代理
Spider蜘蛛Scanner掃描
Intruder入侵者Repeater中繼器
Sequencer定序器Decoder解碼器
Comparer比較器Extender擴展
Options設置Detach分離
Filter過濾器SiteMap網站地圖
Scope范圍Filter by request type通過請求過濾
Intercept攔截response Modification響應修改
match and replace匹配和替換ssl pass throughSSL通過
Miscellaneous雜項spider status蜘蛛狀態
crawler settings履帶式設置passive spidering被動蜘蛛
form submission表單提交application login應用程序登錄
spider engine蜘蛛引擎scan queue掃描隊列
live scanning現場掃描live active scanning現場主動掃描
live passive scanning現場被動掃描attack insertion points攻擊插入點
active scanning optimization主動掃描優化active scanning areas主動掃描區域
passive scanning areas被動掃描區域Payload有效載荷
payload processing有效載荷處理select live capture request選擇現場捕獲請求
token location within response內響應令牌的位置live capture options實時捕捉選項
Manual load手動加載Analyze now現在分析
Platform authentication平臺認證Upstream proxy servers上游代理服務器
Grep Extrack提取??
Proxy功能
Burp Proxy相當于BurpSuite的心臟,通過攔截,查看和修改所有的請求和響應您的瀏覽器與目標Web服務器之間傳遞。 下面了解有關BurpProxy:
Using BurpProxy http、https
http
設置代理的方法:以http ie為例:
工具>>Internet選項>>連接>>局域網>>勾選代理服務器填寫地址127.0.0.1端口8080
這里端口可以隨便定義但是要跟burp的監聽端口要一致然后保存再到Proxy的Options中添加add
這樣http協議的監聽就可以了,當intercept is on表示開啟攔截功能,反之
這樣就代表攔截成功,我們可以右擊send to Repeater去修改數據再發送,也可以右擊改變提交請求方式(change request method)比如get或者post等功能
https
1.以管理員權限運行ie瀏覽器
2.像http那樣配置好代理
3.在地址欄訪問https地址,單擊繼續
4.點擊錯誤證書在這個地址欄
5.點擊查看證書
6.在證書路徑選項卡點擊PortSwigger CA,然后再點擊查看證書
7.在常規選項卡里點擊安裝證書
8.在證書導入向導中,選擇“將所有的證書放入下列存儲區”
9.點擊瀏覽
10.以當前用戶或者本機計算機都可以
11.點擊ok完成導入
12.重啟ie(不需要以管理員權限運行) 其它瀏覽器差不多具體請查看官網
http://portswigger.net/burp/Help/proxy_options_installingCAcert.html
Intercept
用于顯示和修改HTTP請求和響應,通過你的瀏覽器和Web服務器之間。在BurpProxy的選項中,您可以配置攔截規則來確定請求是什么和響應被攔截(例如,范圍內的項目,與特定文件擴展名,項目要求與參數,等)。 該面板還包含以下控制:
Forward
當你編輯信息之后,發送信息到服務器或瀏覽器
Drop
當你不想要發送這次信息可以點擊drop放棄這個攔截信息
Interception is on/off
這個按鈕用來切換和關閉所有攔截。如果按鈕顯示Interception is On,表示請求和響應將被攔截或自動轉發根據配置的攔截規則配置代理選項。如果按鈕顯示Interception is off則顯示攔截之后的所有信息將自動轉發。
Action
說明一個菜單可用的動作行為操作可以有哪些操作功能。
Comment field
為請求或響應添加注釋,以便更容易在History選項卡中識別它們。
Highlight
為請求或響應添加顏色,可以在history選項卡和截獲中更容易發現。
History
代理歷史認為每個請求和響應。通過代理可以記錄全部請求和響應。您可以過濾和注釋這個信息來幫助管理它,并使用代理的歷史來測試流程。History(代理歷史)總在更新,即使你把Interception turned off(攔截關閉),允許瀏覽不中斷的同時還監測應用流量的關鍵細節。
History Table
表中顯示已通過代理HTTP消息的所有請求,并且可以查看完整的你所做的任何修改和截獲的信息的請求和響應。 表中包含以下字段:
# (請求索引號)、Host(主機)、Method(請求方式)、URL(請求地址)、Params(參數)、Edited(編輯)、Status(狀態)、Length(響應字節長度)、MIME type(響應的MLME類型)、Extension(地址文件擴展名)、Title(頁面標題)、Comment(注釋)、SSL、IP(目標IP地址)、Cookies、Time(發出請求時間)、Listener port(監聽端口)。
您可以通過單擊任何列標題進行升序或降序排列。如果您在表中雙擊選擇一個項目地址,會顯示出一個詳細的請求和響應的窗口。或者右擊選擇?Show new history window
Display Filter
Proxy histroy有一個可以用來在視圖中隱藏某些內容的功能,以使其更易于分析和你感興趣的工作內容的顯示過濾。 History Table上方的過濾欄描述了當前的顯示過濾器。點擊過濾器欄打開要編輯的過濾器選項。該過濾器可以基于以下屬性進行配置:
Request type
Show only in-scope items--勾選則顯示在范圍內的項目,反之。
MIME type
您可以設定是否顯示或隱藏包含各種不同的MIME類型,如HTML,CSS或圖像的響應。
Status code
您可以設定是否要顯示或隱藏各種HTTP狀態碼響應。
Search term
您可以過濾對反應是否不包含指定的搜索詞。您可以設定搜索詞是否是一個文字字符串或正則表達式,以及是否區分大小寫。如果您選擇了“Negative search (消極搜索)”選項,然后不匹配的搜索詞唯一的項目將被顯示。
File extension
您可以設定是否要顯示或隱藏指定的文件擴展名的項目。
Annotation
您可以設定是否顯示使用用戶提供的評論或僅亮點項目。
Listener
你可以只顯示特定的監聽端口上接收的項目。測試訪問控制時可能有用。 如果設置一個過濾器,隱藏一些項目,這些都沒有被刪除,只是隱藏起來,如果你取消設置相關的過濾器將再次出現。這意味著您可以使用篩選器來幫助您系統地研究了大量代理的歷史來理解各種不同的請求顯示。
Annotations
您可以通過添加注釋和批注亮點代理歷史記錄項。這可能是有用的描述不同要求的目的,并標記了進一步查看。 兩種方式添加亮點: 1)使用在最左邊的表列中的下拉菜單中突出顯示單個項目。 2)可以突出顯示使用上下文菜單中的“亮點”項目的一個或多個選定的項目。 兩種方法添加注釋: 1)雙擊相關條目,注釋列中,添加或編輯就地評論。 2)發表評論使用上下文菜單中的“添加注釋”項目的一個或多個選定的項目。 除了以上兩種,您也可以注釋項目,它們出現在攔截選項卡,這些都將自動出現在歷史記錄表。 當您已經注明想要的請求,您可以使用列排序和顯示過濾器后迅速找到這些項目。
Options
設置代理監聽、請求和響應,攔截反應,匹配和替換,ssl等。
Proxy Listeners
代理偵聽器是偵聽從您的瀏覽器傳入的連接本地HTTP代理服務器。它允許您監視和攔截所有的請求和響應,并且位于BurpProxy的工作流的心臟。默認情況下,Burp默認監聽12.0.0.1地址,端口8080。要使用這個監聽器,你需要配置你的瀏覽器使用127.0.0.1:8080作為代理服務器。此默認監聽器是必需的測試幾乎所有的基于瀏覽器的所有Web應用程序。
1)Binding
這些設置控制Burp怎么代理監聽器綁定到本地網絡接口:
Bind to port---這是將被打開偵聽傳入連接的本地接口上的端口。你將需要使用一個沒有被綁定被其他應用程序的閑置端口。
Bind to address---這是Burp綁定到本地接口的IP地址。
您可以綁定到剛剛127.0.0.1接口或所有接口,或任何特定的本地IP地址。
注意:如果監聽器綁定到所有接口或特定的非loopback接口,那么其他計算機可能無法連接到該偵聽器。這可能使他們發起出站連接,從您的IP地址發起,并以訪問代理服務器歷史的內容,其中可能包含敏感數據,如登錄憑據。你應該只啟用此當你位于一個受信任的網絡上。
BurpSuite讓您創建多個代理服務器的偵聽器,并提供了豐富的控制自己的行為的配置選項。你可能偶爾需要進行測試時不尋常的應用,或與一些非基于瀏覽器的HTTP客戶端進行合作,利用這些選項。
2)Request Handling
這些設置包括選項來控制是否BurpSuite重定向通過此偵聽器接收到的請求:
Redirect to host?- 如果配置了這個選項,Burp會在每次請求轉發到指定的主機,而不必受限于瀏覽器所請求的目標。需要注意的是,如果你正使用該選項,則可能需要配置匹配/替換規則重寫的主機頭中的請求,如果服務器中,您重定向請求預期,不同于由瀏覽器發送一個主機頭。
Redirect to port?- 如果配置了這個選項,Burp會在每次請求轉發到指定的端口,而不必受限于瀏覽器所請求的目標。
Force use of SSL?- 如果配置了這個選項,Burp會使用HTTPS在所有向外的連接,即使傳入的請求中使用普通的HTTP。您可以使用此選項,在與SSL相關的響應修改選項結合,開展sslstrip般的攻擊使用Burp,其中,強制執行HTTPS的應用程序可以降級為普通的HTTP的受害用戶的流量在不知不覺中通過BurpProxy代理。
注意:每一個重定向選項都可以單獨使用。因此,例如,可以將所有請求重定向到一個特定的主機,同時保留原來的端口和協議在每個原始請求中使用。隱形BurpProxy的支持允許非代理感知客戶端直接連接到監聽。
3)Certificate
這些設置控制呈現給客戶端的SSL服務器的SSL證書。使用這些選項可以解決一些使用攔截代理時出現的SSL問題:
你可以消除您的瀏覽器的SSL警報,并需要建立SSL例外。
凡網頁加載來自其他域的SSL保護的項目,您可以確保這些均可由瀏覽器加載,而不需要先手動接受每個引用的域代理的SSL證書。
您可以與拒絕連接到服務器,如果接收到無效的SSL證書胖客戶端應用程序的工作。
下列選項可用:
Use a self-signed 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格式)呈現給你的瀏覽器。如果應用程序使用它需要特定的服務器證書(例如一個給定序列號或證書鏈)的客戶端應該使用這個選項。
4)Exporting and Importing the CA Certificate
您可以導出您安裝特定的CA證書在其他工具或BurpSuite的其他情況下使用,并且可以導入證書Burp在當前實例使用。 您可以選擇要導出的證書只(用于導入到您的瀏覽器或其他設備的信任),或者你可以同時導出的證書及其私鑰。
注意:您不應該透露的私鑰證書給任何不可信的一方。擁有你的證書和密鑰的惡意攻擊者可能可以,即使你不使用Burp攔截瀏覽器的HTTPS流量。
您也可以僅通過訪問http://burp/cert在瀏覽器中導出證書。它使HTTPS請求您的瀏覽器相同的證書,但在一些移動設備上安裝時,設備通過一個URL來下載它是有幫助的。
Interception Options
設置控制哪些請求和響應都停滯用于查看和編輯在攔截選項卡。單獨的設置將應用到請求和響應。
在“Intercept”復選框確定是否有訊息攔截。如果它被選中,然后Burp應用配置的規則對每個消息,以確定它是否應該被攔截。
個別規則可以激活或停用對每個規則的左邊的復選框。規則可以被添加,編輯,刪除,或使用按鈕重新排序。規則可以在消息,包括域名, IP地址,協議, HTTP方法, URL,文件擴展名,參數,cookie ,頭/主體內容,狀態代碼,MIME類型, HTML頁面標題和代理的幾乎任何屬性進行配置偵聽端口。您可以配置規則來只攔截項目的網址是目標范圍之內的。可以使用正則表達式對定義復雜的匹配條件。
規則按順序處理,并且使用布爾運算符AND和OR組合。這些都與處理簡單的“從左到右”的邏輯,其中每個算子的范圍,如下所示:(所有規則之前累積的結果)和/或(當前規則的結果)所有活動的規則在每封郵件進行處理,并最終活動規則應用后的結果確定消息是否被攔截或轉發的背景。“自動更新內容長度”復選框控件時,這已被用戶修改是否Burp自動更新消息的Content-Length頭。使用這個選項通常是必不可少的,當HTTP主體已被修改。
如果有需求,可以在請求結束時自動修復丟失或多余的新行。如果編輯請求不包含標題下面一個空行,Burp會添加此。如果與含有URL編碼參數的身體的編輯請求包含任何換行符在身體的末端,Burp就會刪除這些。這個選項可以是有用的糾正,而手動編輯在攔截視圖的要求,以避免發出無效的請求向服務器發出的錯誤。
Response Modification
設置用于執行自動響應的修改。您可以使用這些選項通過自動重寫應用程序響應的HTML來完成各種任務。 下列選項在數據刪除客戶端控件可能是有用的:
顯示隱藏的表單字段。 (有一個子選項,以突出強調取消隱藏欄在屏幕上,便于識別。 )
啟用已禁用的表單域
刪除輸入字段長度限制
刪除的JavaScript表單驗證
下列選項可用于禁止客戶端邏輯用于測試目的(注意,這些特征并非設計用來作為NoScript的的方式進行安全防御)有用:
刪除所有的JavaScript。
刪除標記。
下列選項可用于提供對受害用戶的流量在不知不覺中被通過BurpSuite代理sslstrip般的攻擊。您可以在與聽者選項強制SSL的傳出請求,以有效地從用戶的連接剝離SSL一起使用這些:
轉換HTTPS為HTTP的鏈接。
刪除cookie安全標志。
Match and Replace
用于自動替換請求和響應通過代理的部分。對于每一個HTTP消息,已啟用的匹配和替換規則依次執行,以及任何適用的替代品制成。規則可以分別被定義為請求和響應,對于消息頭和身體,并且還特別為只請求的第一行。每個規則可以指定一個文字字符串或正則表達式來匹配,和一個字符串來替換它。對于郵件頭,如果匹配條件,整個頭和替換字符串匹配留空,然后頭被刪除。如果指定一個空的匹配表達式,然后替換字符串將被添加為一個新的頭。有可協助常見任務的各種缺省規則 - 這些都是默認為禁用。 匹配多行區域。您可以使用標準的正則表達式語法來匹配郵件正文的多行區域。
在替換字符串,組可以使用其次為索引$引用。所以下面的替換字符串將包含被匹配在上述正則表達式,該標記的名稱:
SSL Pass Through
用于指定目標Web服務器為其Burp會直接通過SSL連接。關于通過這些連接的請求或響應任何細節將在代理攔截視圖或歷史。
通過SSL連接傳遞可以在這情況下是不能直接消除了客戶端的SSL錯誤是非常有用 - 例如,在執行SSL證書釘扎的移動應用程序。如果應用程序訪問多個域,或使用HTTP和HTTPS連接的混合,然后通過SSL連接到特定問題的主機仍然可以讓您以正常方式使用Burp其他交通工作。
如果啟用該選項來自動添加客戶端SSL協商失敗的項目,然后BurpSuite會在客戶端失敗的SSL協議檢測(例如,由于不承認BurpSuite的CA證書),并會自動將相關的服務器添加到SSL通通過列表。
Miscellaneous
控制Burp代理的行為的一些具體細節。下列選項可用:
Use HTTP/1.0 in requests to server?- 該選項控制BurpSuite代理是否強制在請求目標服務器的HTTP 1.0版。默認設置是使用任何的HTTP版本所使用的瀏覽器。然而,一些遺留服務器或應用程序可能需要1.0版本才能正常工作。
Use HTTP/1.0 in responses to client?- 目前所有的瀏覽器都支持這兩個版本1.0和HTTP 1.1 。從1.0版本開始已經減少了一些功能,迫使使用1.0版本有時會很有用,以控制瀏覽器的行為的各個方面,例如防止企圖執行HTTP流水線。
Set response header “Connection:close”?- 這個選項也可能是有用的,以防止HTTP流水線在某些情況下。
Unpack gzip / deflate in requests?- 某些應用程序(通常是那些使用自定義客戶端組件) ,壓縮在請求消息體。該選項控制BurpProxy是否自動解壓縮壓縮請求主體。請注意,某些應用程序可能被破壞,如果他們期望的壓縮體和壓縮已通過Burp被刪除。
Unpack gzip / deflate in responses?- 大多數瀏覽器接受的gzip和響應緊縮壓縮的內容。該選項控制BurpSuite代理是否自動解壓縮壓縮響應機構。請注意,您可以經常防止服務器試圖通過刪除請求(可能使用BurpProxy的匹配和替換功能)的Accept-Encoding頭壓縮的響應。 Disable web interface at http://burp - 如果你不得不配置你的聽眾接受無保護的接口上的連接,并希望阻止他人接觸到Burp瀏覽器控件,此選項可能有用。
Suppress Burp error messages?- 當某些錯誤時,默認情況下BurpSuite返回有意義的錯誤信息到瀏覽器。如果你想在隱身模式下運行Burp,履行人在這方面的中間人攻擊的受害者用戶,那么它可能是有用的抑制這些錯誤信息來掩蓋一個事實,即Burp是參與。
Disable logging to history and site map?- 此選項可以防止Burp從記錄任何請求到代理服務器的歷史或目標站點地圖。如果您使用的是Burp代理對于一些特定用途,如身份驗證到上游服務器或進行匹配和替換操作,并且要避免產生內存和存儲開銷采伐牽扯它可能是有用的。
Enable interception at startup- 此選項可讓您設定是否在Burp時啟動代理截獲應該啟用。您可以選擇始終啟用攔截,始終禁用攔截,或者從Burp上次關閉恢復設置。
Target功能
目標工具包含了SiteMap,用你的目標應用程序的詳細信息。它可以讓你定義哪些對象在范圍上為你目前的工作,也可以讓你手動測試漏洞的過程。
Using Burp Target
在地址欄輸入www.baidu.com,如圖
這樣看起來site map是不是很亂,則可以右擊add to scope,然后點擊Filter勾選Show only in-scope items,此時你再回頭看Site map就只有百度一個地址了,這里filter可以過濾一些參數,show all顯示全部,hide隱藏所有,如果勾選了表示不過濾
針對地址右擊顯示當前可以做的一些動作操作等功能。左圖 針對文件右擊顯示當前可以做一些動作操作等功能。右圖
2)Scope
這個主要是配合Site map做一些過濾的功能,如圖:
Include in scope就是掃描地址或者攔截歷史記錄里右擊有個add to scope就是添加到這了,也可以自己手動添加。
Target分為site map和scope兩個選項卡
SiteMap
中心Site Map匯總所有的信息Burp已經收集到的有關地址。你可以過濾并標注此信息,以幫助管理它,也可以使用SiteMap來手動測試工作流程。
Target Information
SiteMap會在目標中以樹形和表形式顯示,并且還可以查看完整的請求和響應。樹視圖包含內容的分層表示,隨著細分為地址,目錄,文件和參數化請求的URL 。您還可以擴大有趣的分支才能看到進一步的細節。如果您選擇樹的一個或多個部分,在所有子分支所選擇的項目和項目都顯示在表視圖。
該表視圖顯示有關每個項目(URL , HTTP狀態代碼,網頁標題等)的關鍵細節。您可以根據任意列進行排序表(單擊列標題來循環升序排序,降序排序,和未排序) 。如果您在表中選擇一個項目,請求和響應(如適用)該項目顯示在請求/響應窗格。這包含了請求和響應的HTTP報文的編輯器,提供每封郵件的詳細分析。
站點地圖匯總所有的信息BurpSuite已經收集到的有關申請。這包括:
所有這一切都通過代理服務器直接請求的資源。
已推斷出通過分析響應代理請求的任何物品(前提是你沒有禁用被動Spider) 。
內容使用Spider或內容發現功能查找。
由用戶手動添加的任何項目,從其它工具的輸出。
已請求在SiteMap中的項目會顯示為黑色。尚未被請求的項目顯示為灰色。默認情況下(與被動蜘蛛(passviely scan this host)啟用) ,當你開始瀏覽一個典型的應用,大量的內容將顯示為灰色之前,你甚至得到盡可能要求,因為BurpSuite發現在您所請求的內容鏈接到它。您可以刪除不感興趣的地址
Display Filter
Sitemap可以用來隱藏某些內容從視圖中,以使其更易于分析和對你感興趣的工作內容的顯示過濾器 Sitemap上方的過濾欄描述了當前的顯示過濾器。點擊過濾器欄打開要編輯的過濾器選項。該過濾器可以基于以下屬性進行配置:
Request type 你可以只顯示在范圍內的項目,只能與反應項目,或者帶參數的請求。 MIME type 您可以設定是否顯示或隱藏包含各種不同的MIME類型,如HTML,CSS或圖像的響應。 Status code 您可以設定是否要顯示或隱藏各種HTTP狀態碼響應。 Search term 您可以過濾對反應是否不包含指定的搜索詞。您可以設定搜索詞是否是一個文字字符串或正則表達式,以及是否區分大小寫。如果您選擇了“消極搜索”選項,然后不匹配的搜索詞唯一的項目將被顯示。 File extension 您可以設定是否要顯示或隱藏指定的文件擴展名的項目。 Annotation 您可以設定是否顯示使用用戶提供的評論或僅亮點項目。
Annotations
通過添加注釋和批注亮點代理歷史記錄項。這可能是有用的描述不同要求的目的,并標記了進一步查看。
您可以通過添加注釋和批注亮點代理歷史記錄項。這可能是有用的描述不同要求的目的,并標記了進一步查看。
兩種方式添加亮點:
1)使用在最左邊的表列中的下拉菜單中突出顯示單個項目。
2)可以突出顯示使用上下文菜單中的“亮點”項目的一個或多個選定的項目。
兩種方法添加注釋:
3)雙擊相關條目,注釋列中,添加或編輯就地評論。
4)發表評論使用上下文菜單中的“添加注釋”項目的一個或多個選定的項目。
除了以上兩種,您也可以注釋項目,它們出現在攔截選項卡,這些都將自動出現在歷史記錄表。 當您已經注明想要的請求,您可以使用列排序和顯示過濾器后迅速找到這些項目。
Scope
Target scope設置,可以從SiteMap中添加也可以手動添加掃描范圍到Scope。你可以在Target SiteMap和Proxy history上設置只顯示在范圍內的項目。并且可以設置代理攔截只有在范圍內的請求和響應。Spider會掃描在范圍內的地址。專業版還可以設置自動啟動在范圍內項目的漏洞掃描。您可以配置Intruder和Repeater跟隨重定向到任何在范圍內的網址。發送Burp目標以適當的方式執行行動,只針對你感興趣并愿意攻擊項目。
范圍定義使用的URL匹配規則兩個表 - 一個“包括(include)”列表和“exclude(排除)”列表中。Burp根據一個URL地址來決定,如果它是目標范圍之內,這將被視為是在范圍上如果URL匹配至少一個“include”在內的規則,不符合“exclude”規則。這樣能夠定義特定的主機和目錄為大致范圍內,且距離該范圍特定的子目錄或文件(如注銷或行政職能)排除。
Spider功能
Burp Spider 是一個映射 web 應用程序的工具。它使用多種智能技術對一個應用程序的內容和功能進行全面的清查。 通過跟蹤 HTML 和 JavaScript 以及提交的表單中的超鏈接來映射目標應用程序,它還使用了一些其他的線索,如目錄列表,資源類型的注釋,以及 robots.txt 文件。 結果會在站點地圖中以樹和表的形式顯示出來,提供了一個清楚并非常詳細的目標應用程序 視圖。能使你清楚地了解到一個 web 應用程序是怎樣工作的,讓你避免進行大量 的手動任務而浪費時間,在跟蹤鏈接,提交表單,精簡 HTNL 源代碼。可以快速地確人應 用程序的潛在的脆弱功能,還允許你指定特定的漏洞,如 SQL 注入,路徑遍歷。
Using Burp Spider
要對應用程序使用 Burp Spider 需要兩個簡單的步驟:
1 使用 Burp Proxy 配置為你瀏覽器的代理服務器,瀏覽目標應用程序(為了節省時間,你可 以關閉代理攔截)。
2 到站點地圖的”target”選項上,選中目標應用程序駐留的主機和目錄。選擇上下文菜單的” spider this host/branch”選項。
你也可以在任何 Burp 工具的任意請求或響應上使用上下文菜單上選擇” spider this item”。當你發送一個站點地圖的分支來 spidering,Spider 會首先檢查這個分支是否在定義好的spidering 的范圍內。如果不是,Burp 會提示你是否把相關的 URL 添加到范圍里。然后,Burp 開始 spidering,并執行下面的操作:
在分支上,請求那些已被發現的還沒被請求過的 URL。 在分支上,提交那些已被發現但提交 URL 錯誤的表單。 重復請求分支上的先前收到的狀態碼為 304 的項,為檢索到一個應用程序的新(未進入緩存)副本。 對所有的檢索到內容進行解析以確認新的 URL 和表單。 只有發現新內容就遞歸地重復這些步驟。 繼續在所有的范圍區域內 spidering,直到沒有新內容為止。
注意 Spider 會跟蹤任何在當前定義的 spidering 范圍內的 URL 鏈接。如果你定義了一個 范圍比較大的目標,并且你只選擇了其中的一個分支來 spidering,這時 Spider 會跟蹤所有進入到這個比較大的范圍內的鏈接,于是也就不在原來的分支上 spider。為了確保 Spider 只在指定分支內的請求上,你應該在開始時,就把 spidering 范圍配置為只在這個分支上。
你應該小心地使用 Burp Spider。在它的默認設置上,Spider 會在 spidering 范圍內使用 默認輸入值,自動地提交任意表格,并且會請求許多平常用戶在只使用一個瀏覽器不會發出 的請求。如果在你定義范圍的 URL 是用來執行敏感操作的,這些操作都會被帶到應用程序 上。在你完全地開始自動探索內容之前,使用瀏覽器對應用程序進行一些手動的映射,是非常可取的。
Control tab
這個選項是用來開始和停止 Burp Spider,監視它的進度,以及定義 spidering 的范圍。
Spider Status
1)Spider running
這個是用來開始和停止 Spider。Spider 停止后,它自己不會產生請求,但它會 繼續處理通過 Burp Proxy 的響應,并且在 spidering 范圍內的新發現的項都會送入請求隊列 里,當 Spider 重新啟動時,再來請求。這里顯示的一些 Spider 進度的指標,讓你能看到剩余的內容和工作量的大小。
2)Clear queues
如果你想改變你工作的優先權,你可以完全地清除當前隊列的項目,來讓其他 的項目加入隊列。注意如果被清除的項目如果還在范圍內并且 Spider 的分析器發現有新的 鏈接到這個項目,那么它們還會加入隊列。
Spider Scope
在這個面板里,你能精確地定義 Spider 的請求范圍。最好的方法通常是使用一套廣泛的目標范圍,默認情況下,蜘蛛會使用該范圍。如果您需要定義不同范圍的蜘蛛使用,然后選擇“Use custom scope(使用自定義范圍)”。進一步的配置面板會出現在相同的方式套件范圍的目標范圍內面板的功能。如果你使用自定義范圍并向 Spider 發送不在范圍內 的項,則 Burp 會自動更新這個自定義的范圍而不是 Suite 范圍。
Options tab
這個選項里包含了許多控制 Burp Spider 動作的選項,如下描述。這些設置在 spider 啟 動后還可以修改的,并且這修改對先前的結果也是有效的。例如,如果增加了最大鏈接深度, 在以前的最大鏈接深度外的鏈接如果滿足現在的條件,也會加入到請求隊列里。
Crawler Settings
1)check robots.txt
如果這個選項被選中,Burp Spider會要求和處理robots.txt文件,提取內容鏈接。這個文件是由機器人排除協議控制的蜘蛛狀制劑在互聯網上的行為。請注意,注意 Burp Spider不會確認 robots 排除協議。Burp Spider 會列舉出目標應用程序的所有內容,請求所有在范圍 內的 robots.txt 條目。
2)detect custom "not found" responses
HTTP協議需要向Web服務器返回404狀態碼,如果一個請求的資源不存在。然而,許多Web應用程序返回使用不同的狀態代碼定制為“not found”的網頁。如果是這種情況,則使用該選項可以防止誤報的網站內容的映射。Burp Spider從每個域請求不存在的資源,編制指紋與診斷“not found”響應其它請求檢測定制“not found”的回應。
3)ignore links to non-text content
常常需要推斷出在 HTML 上下文里鏈接到特殊資源的 MIME 類型。例如,帶有 IMG 標記的 URL 會返回圖像;那些帶有 SCRIPT 標記的會返回 JavaScript。 如果這個選項被選中,Spider 不會請求在這個上下文出現的出現的非文本資源。使用這個選 項,會減少 spidering 時間,降低忽略掉感興趣內容的風險。
4)request the root of all directories 如果這個選項被選中,Burp Spider 會請求所有已確認的目標 范圍內的 web 目錄,除了那些目錄里的文件。如果在這個目標站點上目錄索引是可用的, 這選項將是非常的有用。
5)make a non-parameterised request to each dynamic page
如果這個選項被選中,Burp Spider 會對在范圍內的所有執行動作的 URL 進行無參數的 GET 請求。如果期待的參數沒有被接收, 動態頁面會有不同的響應,這個選項就能成功地探測出添加的站點內容和功能。
6)maximum link depth
這是Burp Suite在種子 URL 里的瀏覽”hops”的最大數。0表示讓Burp Suite只請求種子 URL。如果指定的數值非常大,將會對范圍內的鏈接進行無限期的有效跟蹤。將此選項設置為一個合理的數字可以幫助防止循環Spider在某些種類的動態生成的內容。
7)Maximum parameterized requests per URL
請求該蜘蛛用不同的參數相同的基本URL的最大數目。將此選項設置為一個合理的數字可以幫助避免爬行“無限”的內容,如在URL中的日期參數的日歷應用程序。
Passive Spidering(被動掃描)
1)passively spider as you browse
如果這個選項被選中,Burp Suite 會被動地處理所有通過 Burp Proxy 的 HTTP 請求,來確認訪問頁面上的鏈接和表格。使用這個選項能讓 Burp Spider 建立一個包含應用程序內容的詳細畫面,甚至此時你僅僅使用瀏覽器瀏覽了內容的一個子集,因為所有被訪問內容鏈接到內容都會自動地添加到 Suite 的站點地圖上。
2)link depth to associate with proxy requests
這個選項控制著與通過 Burp Proxy 訪問的 web 頁面 有關的” link depth”。為了防止 Burp Spider 跟蹤這個頁面里的所有鏈接,要設置一個比上面 選項卡里的” maximum link depth”值還高的一個值。
Form Submission
1)individuate forms
這個選項是配置個性化的標準(執行 URL,方法,區域,值)。當 Burp Spider 處理這些表格時,它會檢查這些標準以確認表格是否是新的。舊的表格不會加入到提交序列。
2)Don’t submit
如果選中這個,Burp Spider 不會提交任何表單。
3)prompt for guidance
如果選中這個,在你提交每一個確認的表單前,Burp Suite 都會為你指示引導。這允許你根據需要在輸入域中填寫自定義的數據,以及選項提交到服務器的哪一個 區域,以及是否遍歷整個區域。
4)automatically submit
如果選中,Burp Spider 通過使用定義的規則來填寫輸入域的文本值來自動地提交范圍內的表單。每一條規則讓你指定一個簡單的文本或者正則表達式來匹配表單字段名,并提交那些表單名匹配的字段值。可以為任意不匹配的字段指定默認值。
在應用程序通常需要對所有輸入域都是有效格式的數據的地方,如果你想通過登記表單 和相似功能自動地 spider,則這個選項會非常有用。在自動地把表單數據提交到廣闊范圍內 的應用程序時,Burp 使用一組非常成功的規則。當然,如果你遇到有自己需要提交的特定 值的表單字段名時,你可以修改這些或者添加自己的規則。你要小心地使用這個選項,因為 提交了表單里的虛假值有時會導致一些不希望看到操作。
許多表單包含了多個提交元素,這些會對應用程序進行不同的操作,和發現不同的內容。 你可以配置 Spider 重復通過表單里提交元素的值,向每個表單提交多次,次數低于配置的 最大值。
Application Login
登陸表單在應用程序中扮演一個特殊角色,并且你常常會讓 Burp 用和處理平常表單不 一樣的方式來處理這個表單。使用這個配置,你可以告訴 Spider 在遇到一個表單執行下面 4 種不同操作的一種:
1.如果你沒有證書,或者關注 Spidering 的敏感保護功能,Burp 可以忽略登陸表單。
2.Burp 能交互地為你提示引導,使你能夠指定證書。這時默認設置項。
3.Burp 通過你配置的信息和自動填充規則,用處理其他表單的方式來處理登陸表單。
4.在遇到的每個登陸表單時,Burp 能自動地提交特定的證書。
在最后一種情況下,任何時間 Burp 遇到一個包含密碼域的表單,會提交你配置的密碼到密碼域,提交你配置用戶名到最像用戶名的字段域。如果你有應用程序的證書,想讓 Spider為你處理登陸,通常情況下這是最好的選項
Spider Engine
這些設置控制用于Spidering時發出HTTP請求的引擎。下列選項可用:
1)Number of threads----此選項控制并發請求進程數。
2)Number of retries on network failure----如果出現連接錯誤或其他網絡問題,BurpSuite會放棄和移動之前重試的請求指定的次數。測試時間歇性網絡故障是常見的,所以最好是在發生故障時重試該請求了好幾次。
3)Pause before retry----當重試失敗的請求,BurpSuite會等待指定的時間(以毫秒為單位)以下,然后重試失敗。如果服務器被宕掉、繁忙或間歇性的問題發生,最好是等待很短的時間,然后重試。
4)Throttle between requests----BurpSuite可以在每次請求之前等待一個指定的延遲(以毫秒為單位)。此選項很有用,以避免超載應用程序,或者是更隱蔽。
5)Add random variations to throttle----此選項可以通過降低您的要求的時序模式進一步增加隱身。
Request Headers
這些設置控制由蜘蛛發出的HTTP請求中使用的請求頭。您可以配置頭蜘蛛在請求中使用的自定義列表。這可能是有用的,以滿足各個應用程序的特定要求 - 例如,測試設計用于移動設備的應用程序時,以模擬預期的用戶代理。
以下選項也可用:
1)Use HTTP version 1.1----如果選中,Spider會使用HTTP1.1版在其請求;否則,它會使用1.0版。
2)Use Referer header----如果選中,Spider會要求從另一個頁面鏈接到任何項目時提交相關Referer頭。此選項很有用更加緊密地模擬將通過您的瀏覽器發出的請求,并且還可能需要瀏覽一些應用程序驗證Referer頭。
Scanner功能
Using Burp Scanner
分以下幾個步驟來簡單使用Scanner 1.設置好代理之后在地址欄輸入你要抓取的地址,并且要在Proxy里把攔截關了,隨后切換到Scanner的Results就可以看到地址已經在開始掃描咯
2.對地址右擊還可以導出報告,
Html或者xml隨便你以什么格式的,然后一直下一步下一步到如下圖選擇保存文件到哪
我們打開看看,是不是很漂亮呢
3.如果掃描出漏洞了我們還可以直接在這針對某個漏洞進行查看,如果想測試的話可以發送到Repeater進行測試哦
Results
結果選項卡包含所有的掃描儀已確定,從主動和被動掃描的問題。以一種樹型圖顯示應用程序的內容,其中的問題已經被發現,使用URL分解成域,目錄和文件的層次表示。如果您選擇一個或多個部分的分支,所有選定的項目將掃描的問題都列出來,用組合在一起的相同類型的問題。您還可以擴大這些問題匯總查看所有的每種類型的個別問題。 如果您選擇的問題那么將顯示相應的詳情,包括:
1)自定義的漏洞,咨詢內容包括:
問題類型及其整治的標準描述。
中適用于該問題,并影響其修復任何特定的功能的描述。
2)完整的請求和響應都是依據報告了該問題。在適用的情況,是相關的識別和再現問題的請求和響應的部分在請求和響應消息的編輯器中突出顯示。
通常情況下,測試并驗證一個問題最快的方法是使用發送到Repeater。另外,對于GET請求,您可以復制此URL,并將其粘貼到瀏覽器中。然后,您可以重新發出請求。 Burp掃描報告描述,每一個問題都會給出嚴重程度(高,中,低,資訊)和置信度(肯定的,堅定的,暫定)的評級。當一個問題一直使用一種技術,本質上是不太可靠(如SQL盲注)確定,Burp會讓你意識到這一點,通過丟棄的置信水平存在一定不足。這些額定值應始終被解釋為指示性的,你應該根據你的應用程序的功能和業務方面的知識進行審查。
這個問題已經上市,你可以用它來執行以下操作的上下文菜單:如圖所示
Report selected issues
啟動BurpSuite Scanner的報告向導,生成的選定問題的正式報告。 Set severity - 這讓你重新分配問題的嚴重程度。您可以設置嚴重程度高,中,低,或信息。您還可以標記問題作為假陽性。
Delect selected issues
刪除選定問題。請注意,如果你刪除了一個問題,Burp重新發現了同樣的問題(例如,如果你重新掃描了同樣的要求),那么問題將再次報告。相反,如果你是一個假陽性標記的問題,那么這將不會發生。因此,最適合用于清理掃描結果移除你不感興趣。對于內部的功能不需要您的問題仍然工作在主機或路徑刪除的問題,您應該使用假陽性的選項。
Scan Queue
Active Scanning(主動掃描)過程通常包括發送大量請求到服務器為所掃描的每個基本的請求,這可能是一個耗時的過程。當您發送的主動掃描請求,這些被添加到活動掃描隊列,它們被依次處理。如圖
掃描隊列中顯示每個項目的詳細信息如下:
1)索引號的項目,反映該項目的添加順序。
2)目的地協議,主機和URL 。
3)該項目的當前狀態,包括完成百分比。
4)項目掃描問題的數量(這是根據所附的最嚴重問題的重要性和彩色化) 。
5)在掃描項目的請求數量進行。
注意 這不是插入點的數量的線性函數 - 觀察應用程序行為的反饋到后續攻擊的請求,僅僅因為它會為一個測試儀。
6)網絡錯誤的數目遇到的問題。
7)為項目創建的插入點的數量。
這些信息可以讓您輕松地監控個別掃描項目的進度。如果您發現某些掃描進度過于緩慢,可以理解的原因,如大量的插入點,緩慢的應用響應,網絡錯誤等給定這些信息,你就可以采取行動來優化你的掃描,通過改變配置為插入點時,掃描引擎,或正在測試的主動掃描區域。
你可以雙擊任何項目在掃描隊列顯示,到目前為止發現的問題,并查看了基本請求和響應的項目。您可以使用掃描隊列的上下文菜單來執行各種操作來控制掃描過程。確切的可用選項取決于所選的項目(S )的狀態,并包括:如下圖所示
Show details
這將打開顯示到目前為止發現的問題的一個窗口,與底座請求和響應的項目。
Scan again
此復制所選擇的項目(S ) ,并將這些隊列的末尾。
Delete item(S)
這將永久地從隊列中刪除選定的項目(S ) 。
Delect finished items
這永久刪除那些已經完成了隊列中的任何項目。
Automatically delete finished items
這是否切換掃描器會自動從隊列為他們完成刪除項目。
Pause/resume scanner
這可以暫停和恢復激活掃描儀。如果任何掃描正在進行時,掃描會暫停,而掛起的掃描請求完成后,通常會有一個短暫的延遲。
Send to
這些選項用于所選項目的基本請求發送到其它Burp(Repeater、Intruder)工具。
Live Scanning
實時掃描可讓您決定哪些內容通過使用瀏覽器的目標應用,通過BurpProxy服務器進行掃描。您可以實時主動掃描設定live active scanning和live passive兩種掃描模式。如圖
Live active scanning
執行現場主動掃描,請執行以下步驟:
1)配置與目標的細節,你要主動掃描現場主動掃描設置。如果你已經配置了一套全范圍的目標為你目前的工作,那么你可以簡單地通知Burp主動掃描落在該范圍內的每個請求。或者,您可以使用URL匹配規則定義自定義范圍。
2)各地通過BurpProxy通常的方式應用瀏覽。這將有效地展示Burp要掃描的應用功能。對于每一個獨特的所在范圍的要求,你通過你的瀏覽器,Burp會排隊主動掃描請求,并將努力走在后臺找到漏洞為您服務。
Live Passive Scanning
現場演示被動掃描,請執行以下步驟:
1)配置具有您要被動地掃描目標的細節live passive scanning。默認情況下,Burp執行所有請求的被動掃描,但你可以限制掃描目標范圍,或者使用URL匹配規則的自定義范圍。
2)通過BurpProxy通常的方式應用瀏覽。這將有效地展示Burp你要掃描的應用功能。
Options
此選項卡包含Burp掃描選項進行攻擊的插入點,主動掃描引擎,主動掃描優化,主動掃描區和被動掃描區域。
Attack Insertion Points
這些設置控制掃描儀的地方“插入點(insertion points)”到被發送的主動掃描每個基本要求。插入點攻擊將被放置,探測漏洞請求中的位置。每個定義的插入點單獨掃描。 BurpSuite為您提供細粒度地控制放置插入點,以及這些選項仔細配置會讓您量身定制您的掃描到您的目標應用程序的性質。插入點的配置也代表你的掃描速度和全面性之間進行權衡。
注:除了讓Burp自動指定插入點,就可以完全自定義這些,這樣你就可以在你想要攻擊的地方放在任意一個位置。要使用此功能,將請求發送給Intruder,用payload positions標簽來定義通常的方式各插入點的開始和結束,并選擇入侵者菜單選項“積極定義掃描插入點” 。您也可以指定以編程方式使用Burp擴展的自定義插入點位置。
1)Insertion Point Locations
這些設定可讓您選擇,其中插入點應放在請求中的位置的類型:
URLparameter values - URL查詢字符串中標準的參數值。
Body parameter values - 在郵件正文中,包括標準形式生成的參數參數值,屬性的多重編碼的參數,如上傳的文件名, XML參數值和屬性,和JSON值。
Cookieparameter values - 的HTTP Cookie的值。
Parameter name - 任意添加的參數的名稱。 URL參數總是被添加,并且機身參數也加入到POST請求。測試一個附加的參數名稱通常可以檢測到被錯過,如果只是參數值進行了測試異常的錯誤。
HTTPheaders - 在引用頁和用戶代理標頭的值。測試這些插入點通常可以檢測如SQL注入或跨站腳本持續在日志記錄功能的問題。
AMF string parameters- 內AMF編碼的郵件的任何字符串數據的值。
REST-style URL parameters - URL的文件路徑部分中的所有目錄和文件名令牌的值。測試每一個插入點可以并處顯著開銷,如果你相信應用程序使用這些位置傳送參數數據,才應使用。
2)Change Parameter Locations
允許您配置掃描儀將一些類型的插入點到其他地點的請求中,除了測試他們在原來的位置。例如,您可以將每個URL參數到郵件正文中,并重新測試它。或者你可以移動身體的每個參數到一個cookie ,然后重新測試它。
用這種移動參數方式往往可以繞過防過濾器。許多應用程序和應用程序防火墻執行每個參數輸入驗證假設每個參數是它的預期位置的要求之內。移動參數到不同的位置可以回避這個驗證。當應用程序代碼后檢索參數來實現其主要的邏輯,它可能會使用一個API,它是不可知的,以參數的位置。如果是這樣,那么移動的參數可能可以使用輸入,通常會在處理之前被過濾,以達到易受攻擊的代碼路徑。
下列選項可用于更改參數的位置:
URL to body
URL to cookie
Body to URL
Body to cookie
Cookie to URL
Cookie to body
3)Nested Insertion Points
嵌套的插入時,會使用一個插入點的基值包含可識別的格式的數據。 例如,一個URL參數可能包含Base64編碼數據,并且將解碼后的值可能又包含JSON或XML數據。與使用啟用嵌套插入點的選項,Burp會為輸入在每個嵌套級別中的每個單獨的項目適合的插入點。 Spider僅包含常規的請求參數請求時使用此選項不征收費用,但允許Burp達到更復雜的應用,數據是在不同的格式封裝的攻擊面。
4)Maximum Insertion Points Per Request
無論你的設置選擇,對于單個請求插入點的數目,一般視乎該請求的功能,如參數的數目。偶爾,請求可以包含的參數(幾百或更多)數量。如果Burp執行的每個參數進行完全掃描,掃描會花費過多的時間量完成。 此設置允許您設置的,將每個基本要求生成插入點的數量的限制,從而防止您的掃描由偏快轉為停滯,如果他們遇到含參數龐大的數字請求。在其中插入點的數量是由這個限制縮減的情況下,在有效掃描隊列中的項目的條目將顯示被跳過的插入點的數量,使您能夠手動檢查基本要求,并決定是否值得執行完全掃描其所有可能的插入點。
5)Skipping Parameters
設定讓您指定請求參數的Burp應該跳過某些測試。有跳過服務器端注入測試(如SQL注入)和跳過所有檢查單獨的列表。 服務器端注入測試是比較費時的,因為Burp發送多個請求探測服務器上的各種盲目的漏洞。如果您認為出現請求中的某些參數不容易(例如,內置僅由平臺或Web服務器中使用的參數) ,你可以告訴Burp不能測試這些。 (用于測試客戶端蝽象跨站點腳本涉及更少的開銷,因為測試每個參數規定最小的開銷在掃描期間,如果該參數不容易。 ) 如果一個參數是由您不希望測試一個應用程序組件來處理,或者修改一個參數是已知的導致應用程序不穩定跳過所有的測試可能是有用的。 列表中的每個項目指定參數類型,該項目要匹配(名稱或值) ,匹配類型(文本字符串或正則表達式) ,表達式匹配。 你可以通過它們的位置(斜線分隔)的URL路徑中標識的REST參數。要做到這一點,從參數下拉,“姓名”,從項目下拉“ REST參數” ,并指定您希望從測試中排除的URL路徑中的位置的索引號(從1開始) 。您還可以通過值來指定REST參數。
Active Scanning Engine
控制用來做主動掃描時發出HTTP請求的引擎。下列選項可用:
1)Number of threads - 控制并發請求數。
2)Number of retries on network failure - 如果出現連接錯誤或其他網絡問題,Burp會放棄和移動之前重試的請求指定的次數。測試時間歇性網絡故障是常見的,所以最好是在發生故障時重試該請求了好幾次。
3)Pause before retry - 當重試失敗的請求,Burp會等待指定的時間(以毫秒為單位)以下,然后重試失敗。如果服務器宕機,繁忙,或間歇性的問題發生,最好是等待很短的時間,然后重試。
Throttle between requests?- 在每次請求之前等待一個指定的延遲(以毫秒為單位)。此選項很有用,以避免超載應用程序,或者是更隱蔽。
Add random variations to throttle?- 通過降低您的要求的時序模式進一步增加隱身。
Follow redirections where necessary- 有些漏洞只能通過下面的重定向進行檢測(例如,在一條錯誤消息,跨站點腳本這是只有下列一個重定向后退還)。因為某些應用程序的問題重定向到包含您所提交的參數值的第三方網址,BurpSuite保護您免受無意中攻擊的第三方應用程序,不按照剛剛收取任何重定向。如果所掃描的要求是明確的目標范圍之內(即您使用的是目標范圍,以控制哪些被掃描的),然后BurpSuite只會跟隨重定向是指同一范圍內。如果所掃描的要求不在范圍內(即你已經手動發起超出范圍的請求的掃描),BurpSuite只會跟隨重定向其中(a)是在同一臺主機/端口的請求被掃描;及(b)沒有明確涵蓋的范圍排除規則(如“logout.aspx”)。
小心使用這些選項可讓您微調掃描引擎,根據不同應用對性能的影響,并在自己的處理能力和帶寬。如果您發現該掃描儀運行緩慢,但應用程序表現良好和你自己的CPU利用率很低,可以增加線程數,讓您的掃描進行得更快。如果您發現連接錯誤發生,該應用程序正在放緩,或者說自己的電腦被鎖定了,你應該減少線程數,也許增加網絡故障和重試之間的間隔重試的次數。如果應用程序的功能是這樣的:在一個基地的要求執行的操作干擾其他請求返回的響應,你應考慮減少線程數為1,以確保只有一個單堿基請求被掃描的時間。
Active Scanning Optimization
主動掃描邏輯的行為,以反映掃描的目的和目標應用程序的性質。例如,您可以選擇更容易發現問題,在一個大型應用程序的快速掃描;或者您可以執行更慢全面掃描,以發現更難,而且需要更多的掃描請求,以檢測問題。
下列選項可用:
Scan speed(掃描速度)?- 該選項決定徹底的某些掃描檢查,怎么會檢查是否有漏洞時。 “Fast(快速)”設置使更少的請求,并檢查一些漏洞更少的推導。在“Thorough(徹底)”的設置使更多的請求,并檢查更多的衍生類型的漏洞。 “Normal(正常)”設定為中途在兩者之間,并且代表速度和完整性之間的適當折衷對于許多應用。
Scan accuracy(掃描精度)?- 此選項決定的證據表明,掃描儀會報告某些類型的漏洞之前,要求的金額。可以只使用“blind(盲)”的技術,其中,Burp推斷可能存在基于某些觀察到的行為,如時間延遲或一個差分響應的一個漏洞被檢測到的一些問題。因為這些觀察到的行為的發生原因,無論如何,在沒有相關聯的漏洞的影響,該技術本身更容易出現假陽性比其他技術,例如在觀察錯誤消息。試圖減少誤報,BurpSuite重復某些測試了一些,當一個假定的問題,推斷時間,嘗試建立提交的輸入和觀察到的行為之間有可靠的相關性。的準確性選項用于控制BurpSuite會多少次重試這些測試。在“Minimize false negatives(最小化假陰性)”的設置進行重試較少,因此更可能報告假陽性的問題,但也不太可能會錯過由于不一致的應用程序行為的真正問題。在“Minimize false positives(最小化誤報)”設置進行更多的試,所以是不太可能報告假陽性的問題,但可能會因此錯誤地錯過了一些真正的問題,因為有些重試請求可能只是碰巧不返回結果是測試。 “Normal(正常)”設置為中途兩者之間,并代表之間的假陽性和假陰性的問題合適的權衡對于許多應用。
Use intelligent attack selection(使用智能進攻選擇)?- 此選項使通過省略出現無關緊要給每個插入點參數的基值支票掃描更有效率。例如,如果一個參數值包含不正常出現在文件名中的字符,BurpSuite會跳過文件路徑遍歷檢查此參數。使用這個選項,可以加快掃描件,具有相對低的存在缺少實際的漏洞的風險。
Active Scanning Areas
定義哪些是主動掃描過程中進行檢查。是檢查以下類別可供選擇:
SQL injection(SQL注入) - 這有子選項,以使不同的測試技術(誤差為基礎,延時測試,布爾條件測試) ,并且也使檢查特定于單個數據庫類型( MSSQL ,Oracle和MySQL的) 。
OS command injection(操作系統命令注入) - 這有子選項,以使不同的測試技術.。
Reflected XSS(反映了跨站點腳本)
Stored XSS(存儲的跨站點腳本)
File path traversal(文件路徑遍歷)
HTTP header injection(HTTP頭注入)
XML/SOAP injection(XML / SOAP注射)
LDAP injection(LDAP注入)
Open redirection(開放重定向)
Header manipulation(頭操縱)
Server-level issues服務器級的問題
所執行的每個檢查增加的請求的數目,以及每個掃描的總時間。您可以打開或關閉個別檢查根據您的應用程序的技術知識。例如,如果你知道某個應用程序不使用任何LDAP ,您可以關閉LDAP注入測試。如果你知道哪個后端數據庫的應用程序使用,你可以關閉SQL注入檢測特定于其他類型的數據庫。您也可以選擇性地啟用基于你如何嚴格要求你的掃描是檢查。例如,您可以配置BurpSuite做應用程序的快速一次過,只為XSS和SQL注入的網址和參數檢查,每漏洞類型更全面的測試在每一個插入點之前。
Passive Scanning Areas
自定義的請求和響應的各個方面在被動掃描檢查。下列選項可用:
Headers--頭
Forms--表格
Links--鏈接
Parameters--參數
Cookie
MIME類型
Caching緩存
Information disclosure--信息披露
Frameable responses--耐燃反應(“點擊劫持”)
ASP.NET的ViewState
需要注意的是被動掃描不會派出自己的任何要求,和每個被動強加檢查您的計算機上一個微不足道的處理負荷。不過,你可以禁用檢查各個領域,如果你根本就不關心他們,不希望他們出現在掃描結果。
Intruder
Burp intruder是一個強大的工具,用于自動對Web應用程序自定義的攻擊。它可以用來自動執行所有類型的任務您的測試過程中可能出現的。
要開始去了解BurpSuite Intruder,執行以下步驟:
1)首先,確保Burp安裝并運行,并且您已配置您的瀏覽器與Burp工作。
2)如果你還沒有這樣做的話,瀏覽周圍的一些目標應用程序,來填充的應用程序的內容和功能的詳細信息Burp的SiteMap。在這樣做之前,要加快速度,進入代理服務器選項卡,然后截取子標簽,并關閉代理攔截(如果按鈕顯示為“Intercept is On”,然后點擊它來截取狀態切換為關閉) 。
3)轉到Proxy選項卡,并在History選項卡。發現一個有趣的前瞻性要求,您的目標應用程序,包含了一些參數。選擇這個單一的請求,然后從上下文菜單中選擇“Send to intruder” 。
4)轉到Intruder標簽。Burp Intruder可以讓你同時配置多個攻擊。您Send to Intruder的每個請求在自己的攻擊選項卡中打開,而這些都是順序編號的默認。您可以雙擊標簽頭重命名選項卡,拖動標簽來重新排序,并且還關閉和打開新的標簽頁。
5)為您發送請求建立的Intruder選項卡,看看Target和Positions選項卡。這些已經自動填入您發送的請求的細節。
6)Burp Intruder本質工作,采取了基本模板的要求(你送到那里的那個) ,通過一些payloads的循環,將這些payloads送入定義的Positions,基本要求范圍內,并發出每個結果的要求。位置標簽用于配置,其中有效載荷將被插入到基本要求的位置。你可以看到,BurpSuite一直在你想用來放置有效載荷自動進行猜測。默認情況下,有效載荷放入所有的請求參數和cookie的值。每對有效載荷標記定義了一個有效載荷的位置,并且可以從基體的要求,這將被替換的有效載荷的內容,當該payload position用于括一些文本。有關進一步詳情,請參閱Payload Markers的幫助。
7)旁邊的請求編輯器中的按鈕可以被用于添加和清除有效載荷的標志。試著增加payload position在新的地點請求中,并刪除其他標志物,并看到效果了。當你理解了payload positions是如何工作的,請單擊“Auto§ ”按鈕恢復到BurpSuite為您配置的默認payload positions。如果你修改了請求本身的文本,可以重復步驟3創建與它的原始請求一個新的Intruder的攻擊選項卡。
8)轉到Payloads選項卡。這使您可以定義將要放入已定義的有效載荷倉的有效載荷。保持默認設置(使用有效載荷的“Simple list” ) ,并添加一些測試字符串到列表中。您可以通過輸入到“Enter a new item”框中,單擊“add”,輸入自己的字符串。或者您可以使用“add from file”下拉菜單,然后選擇“Fuzzing-quick”,從內置的負載串[專業版]列表中。
9)現在,您已經配置了最低限度的選項來發動攻擊。轉到Intruder菜單,然后選擇“Start attack” 。
10)在包含在結果選項卡一個新的窗口中打開攻擊。結果表包含已經取得,與各關鍵細節,如所使用的有效載荷, HTTP狀態碼,響應長度等,您可以在表中選擇任何項目,以查看完整的請求和響應每個請求的條目。您還可以對表進行排序通過單擊列標題,并使用過濾器欄過濾表中的內容。這些特征以相同的方式工作,作為Proxy history。
11)這次襲擊窗口包含其他標簽,顯示被用于當前攻擊的配置。您可以修改大部分這種配置的攻擊已經開始。轉到選項選項卡,向下滾動到“ grep-match” ,并勾選“標志的結果與項目相匹配的響應這些表達式” 。這將導致Intruder檢查響應匹配列表中的每個表達式項目和標志的火柴。默認情況下,列表顯示fuzzing時是很有用的一些常見的錯誤字符串,但可以配置,如果你想自己的字符串。返回result選項卡,看到Intruder增加了對每個項目列在列表中,而這些包含復選框,指示表達式是否被發現在每一個響應。如果你是幸運的,你的基本模糊測試可能引發一個錯誤的存在在一些回應的錯誤消息。
12)現在,在表中選擇任何項目,并期待在該項目的響應。發現在反應(如網頁標題,或錯誤消息)一個有趣的字符串。右鍵單擊該項目在表中,然后從上下文菜單中選擇“Define extrace grep from response” 。在對話框中,選擇響應的有趣字符串,然后單擊“確定” 。結果表中現在包含一個新的列,其提取這一段文字從每個響應(其可以是不同的在每一種情況下) 。您可以使用此功能來定位在大型攻擊有趣的數據與成千上萬的反應。請注意,您還可以配置“extrace grep ”項目中的選項選項卡,在此之前前或在攻擊期間。
13)在結果表中選擇任一項目,并打開上下文菜單。選擇“Send to Repeater” ,然后轉到Repeater選項卡。你會看到所選的請求已被復制到Repeater工具,進行進一步的測試。許多其他有用的選項是可用的上下文菜單中。有關發送BurpSuite工具之間的項目,使整體測試工作流程的詳細信息。
14)您可以使用“Save”菜單在結果窗口中都救不結果表或整個攻擊。你可以加載結果表到其他工具或電子表格程序。您可以通過在主Burp的UI Intruder菜單重新加載保存的攻擊。
15)這些步驟只介紹一個簡單的用例Intruder,對于Fuzzing的要求有一些標準的攻擊字符串和用grep搜索中的錯誤消息。您可以使用Intruder許多不同類型的攻擊,有許多不同的payloads和攻擊選項。
Using Burp Intruder
for example 這里我本地搭建一個環境,爆破一個php大馬,如果是一句話就把get改成post,如果是php一句話,就在下面加上php這行代碼,如圖
asp? ?password=execute("response.clear:response.write(""passwordright""):response.end")
php? ?password=execute("response.clear:response.write(""elseHelloWorld""):response.end")
aspx? ? password=execute("response.clear:response.write(""elseHelloWorld""):response.end")。
一般步驟如下
1.代理好服務器地址,然后訪問這個大馬地址
2.隨后點擊forward,并且在大馬頁面隨便輸入什么,burp攔截了數據之后發送到repeater
3.切換到repeater選項卡中,點擊go按鈕,找出一些反饋的錯誤信息,當然如果不要也可以,這里找錯誤信息是方便爆破成功了之后便于發現,我這個馬反饋的是中文錯誤信息,顯示是亂碼就不寫了,我們可以通過爆破成功了之后看字節數。 4.接下來就是發送到intruder,target一般都不需要管,已經自動填好了,然后選擇positions
先點擊Clear$,選擇密碼地地方點擊add$。