Repeater
一、簡介
Burp Repeater 是一個手動修改並補發個別 HTTP 請求,並分析他們的響應的工具。它最大的用途就是和其他 Burp Suite 工具結合起來。你可以從目標站點地圖,從 Burp Proxy 瀏覽記錄,或者從 Burp Intruder 攻擊結果上的請求,發送到 Repeater 上,並手動調整這個請求來微調對漏洞的探測或攻擊。
二、模塊說明
1.可以從Proxy history、site map、Scanner等模塊中右鍵菜單send to repeater發送到repeater,對頁面數據進行修改發送。
2.點擊go,發送請求,右邊響應請求。
3.可以通過“<“和”>“來返回上一次和下一個操作。
4.單擊”x“可以刪除當前測試請求頁面。
5.底部的功能用於搜索條件,可以用正則表達式,底部右邊顯示匹配結果數。
raw — 這顯示純文本格式的消息。在文本面板的底部有一個搜索和加亮的功能,可以用來快速地定位出消息里的感興趣的字符串,如出錯消息。搜索欄左邊的彈出項讓你能控制狀況的靈敏度,以及是否使用簡單文本或者十六進制搜索。
params — 對於包含參數(URL 查詢字符串,cookie 頭,或者消息體)的請求,這個選項把這些參數分析為名字/值的格式,這就可以簡單地隨他們進行查看和修改了。
headers — 這里是以名字/值的格式來顯示 HTTP 的消息頭,並且也以原始格式顯示了消息體。
hex — 這里允許你直接編輯由原始二進制數據組成的消息。如果在文本編輯器修改,某種類型的傳輸(如,MIME 編碼的瀏覽器請求)包含了可能損壞的二進制內容。為了修改這類消息,應該使用十六進制編輯器。
該模塊的設置在菜單欄 Repeater中,主要選項如下:
Sequencer
一、簡介
Burp Sequencer是一種用於分析數據項的一個樣本中的隨機性質量的工具。你可以用它來測試應用程序的session tokens(會話tokens)或其他重要數據項的本意是不可預測的,比如反彈CSRF tokens,密碼重置tokens等。
二、模塊說明
Burp Sequencer主要由三個模塊組成:
1:Live capture 信息截取
2:Manual load 手動加載
3:Analysis options 選項分析
1:Live capture 信息截取
選項1:Select Live Capture Request
選項2:Token Location Within Response
選項3:Live Capture Options
2:Manual load 手動加載
選項1:Manual Load
3:Analysis options 選項分析
選項1:Token Handling 令牌處理
選項2:Token Analysis 令牌分析
Target
Target功能
目標工具包含了SiteMap,用你的目標應用程序的詳細信息。它可以讓你定義哪些對象在范圍上為你目前的工作,也可以讓你手動測試漏洞的過程,Target分為site map和scope兩個選項卡。
選項一、Site Map
SiteMap會在目標中以樹形和表形式顯示,並且還可以查看完整的請求和響應。樹視圖包含內容的分層表示,隨着細分為地址,目錄,文件和參數化請 求的URL 。您還可以擴大有趣的分支才能看到進一步的細節。如果您選擇樹的一個或多個部分,在所有子分支所選擇的項目和項目都顯示在表視圖。
該表視圖顯示有關每個項目(URL , HTTP狀態代碼,網頁標題等)的關鍵細節。您可以根據任意列進行排序表(單擊列標題來循環升序排序,降序排序,和未排序) 。如果您在表中選擇一個項目,請求和響應(如適用)該項目顯示在請求/響應窗格。這包含了請求和響應的HTTP報文的編輯器,提供每封郵件的詳細分析。
站點地圖匯總所有的信息BurpSuite已經收集到的有關申請。這包括:
所有這一切都通過代理服務器直接請求的資源。
已推斷出通過分析響應代理請求的任何物品(前提是你沒有禁用被動Spider) 。
內容使用Spider或內容發現功能查找。
由用戶手動添加的任何項目,從其它工具的輸出。
這樣看起來site map是不是很亂,則可以右擊add to scope,然后點擊Filter勾選Show only in-scope items,此時你再回頭看Site map就只有百度一個地址了,這里filter可以過濾一些參數,show all顯示全部,hide隱藏所有,如果勾選了表示不過濾
選擇之后就只剩下一個網址了
針對地址右擊顯示當前可以做的一些動作操作等功能。
選項二、Scope
這個主要是配合Site map做一些過濾的功能
已請求在SiteMap中的項目會顯示為黑色。尚未被請求的項目顯示為灰色
Proxy
一、簡介
Proxy代理模塊作為BurpSuite的核心功能,攔截HTTP/S的代理服務器,作為一個在瀏覽器和目標應用程序之間的中間人,允許你攔截,查看,修改在兩個方向上的原始數據流。
Burp 代理允許你通過監視和操縱應用程序傳輸的關鍵參數和其他數據來查找和探索應用程序的漏洞。通過以惡意的方式修改瀏覽器的請求,Burp 代理可以用來進行攻擊,如:SQL 注入,cookie 欺騙,提升權限,會話劫持,目錄遍歷,緩沖區溢出。攔截的傳輸可以被修改成原始文本,也可以是包含參數或者消息頭的表格,也可以十六進制形式,甚至可以操縱二進制形式的數據。在 Burp 代理可以呈現出包含 HTML 或者圖像數據的響應消息。
二、模塊說明
1.Intercept
用於顯示和修改HTTP請求和響應,通過你的瀏覽器和Web服務器之間。在BurpProxy的選項中,您可以配置攔截規則來確定請求是什么和響應被攔截(例如,范圍內的項目,與特定文件擴展名,項目要求與參數,等)。該面板還包含以下控制:
消息類型顯示的四種格式
raw:這里顯示的是純文本形式的消息。在文本窗口的底部提供了一個搜索和加亮功能,可以用它來快速地定位出消息中的感興趣的字符串,如錯誤消息。在搜索的左邊有一個彈出項,讓你來處理大小寫問題,以及是使用簡單的文本搜索還是正則表達搜索。
params:對包含參數(URL 查詢字符串,cookies 消息頭,或消息體)的請求,這個選項可以把參數分析成名稱/值的組合,並且允許你能簡單地查看和修改。
headers:這里以名稱/值的組合來顯示 HTTP 的消息頭,並且還以原始的形式顯示消息體。
hex:這里允許你直接編輯消息的原始二進制數據。如果在文本編輯器里修改,某些傳輸類型(例如,使用 MIME 編碼的瀏覽器請求的部分)包含的二進制數據可能被損壞。為了修改這些類型的消息,應使用十六進制。
1.Forward
當你編輯信息之后,發送信息到服務器或瀏覽器
2.Drop
當你不想要發送這次信息可以點擊drop放棄這個攔截信息
3.Interceptionis on/off
這個按鈕用來切換和關閉所有攔截。如果按鈕顯示Interceptionis On,表示請求和響應將被攔截或自動轉發根據配置的攔截規則配置代理選項。如果按鈕顯示Interception is off則顯示攔截之后的所有信息將自動轉發。
4.Action
說明一個菜單可用的動作行為操作可以有哪些操作功能。
Send to Spider 發送給蜘蛛
Do an active scan 執行主動掃描
Send to Intruder 發送到入侵者
Send to Repeater 發送到中繼器
Send to Sequencer 發送到序列發生器
Send to Comparer 發送到比較器
Send to Decoder 發送到解碼器
Request in browser 在瀏覽器的請求
Engagement tools 參與工具
Change request method 對所有的請求,經過把所有相關的請求參數適當地搬遷到這個請求里來,你就可以自動地把請求的方法在 POST 和 GET 中間切換。通過發送惡意的請求使用這個選項來快速測試應用程序的極限參數是多少。
Change body encoding 對於所有的請求,你可以在應用程序/X-WWW 格式的 URL 編碼和多重表單/數據之間切換消息體的編碼方式。
Copy URL 把當前的 URL 完整地復制到粘貼板上。
Cope as curl command 作為curl命令
Cope to file 這個功能允許你把選擇一個文件,並把消息的內容復制到這個文件里。這個對二進制數據來說是很方便的,要是通過粘貼板來復制會帶來一些問題。復制操作是在選擇的文本上進行的,如果沒有被選中的內容,則是針對整個消息了。
Pase form file 這個功能允許你選擇一個文件,並把文件里的內容粘貼到消息里。這個對二進制數據來說是很方便的,要是通過粘貼板來復制會帶來一些問題。粘貼操作會替換掉被選中的內容,如果沒有內容被選中,則在光標位置插入這些內容。
Save item 這個功能讓你指定一個文件,把選中的請求和響應以XML的格式保存到這個文件,這里面包括所有的元數據如:響應的長度,HTTP 的狀態碼以及 MIME 類型。
Don't intercept requests 通過這些命令可以快速地添加攔截動作的規則來阻止攔截到的消息,這些消息和當前的消息有着相同的特征(如遠程主機,資源類型,響應編碼)。
Do intercept 僅對請求有效,這允許你可以對當請求和響應的進行強制攔截。
Convert seiection 這些功能讓你能夠以多種方案對選擇的文本進行快速的編碼和解碼。
URL-encode as you type 如果這個選項被打開,你輸入的像&和=這樣的符號會被等價的 URL編碼代替。
Cut 剪切
Copy 復制
Paste 粘貼
Message edit help 消息編輯幫助
Proxy interception help 代理攔截幫助
2.HTTP History
這個選項是來顯示所有請求產生的細節,顯示的有目標服務器和端口,HTTP 方法,URL,以及請求中是否包含參數或被人工修改,HTTP 的響應狀態碼,響應字節大小,響應的 MIME類型,請求資源的文件類型,HTML 頁面的標題,是否使用 SSL,遠程 IP 地址,服務器設置的 cookies,請求的時間。
雙擊某個請求即可打開詳情,通過Previous/next可以快速切換請求,並且Action也可以將請求發送至其他模塊。
可以通過最左邊的列里的下拉菜單來加亮單個選項:
在歷史記錄表里,右擊一個或多個選項,就會顯示一個上下文菜單讓你執行一些操作,包括修改目標范圍,把這些選項發送到其他 Burp 工具,或者刪除這些項:
Add to scope 添加范圍
Spide from here 蜘蛛從當前地址開始
Do an active scan 執行主動掃描
Do a passive scan 做被動掃描
Send to Intruder 發送到入侵者
Send to Repeater 發送到中繼器
Send to Sequencer 發送到序列生成器
Send to Comparer(request) 發送到比較器(請求)
Send to Comparer(response) 發送到比較器(響應)
Show response in browser 在瀏覽器中顯示響應
Request in browser 瀏覽請求
Engagement tools 接合工具
Show new History windows 顯示新的歷史窗口
Add comment 添加評論
Highlight 高亮部分
Delete item 刪除項目
Clear history 清除歷史記錄
Copy URL 復制網址
Copy as curl command 復制為curl命令
Copy links 復制鏈接
Save item 保存項目
Proxy history help 代理歷史幫助
還可以通過配置過濾器來確定哪些頂層的數據項顯示在表格里。有效應用程序包含了大量的內容,如圖像,CSS 等,這些有利於從視圖上隱藏的。AJAX 應用程序產生大量相似的異步請求,你可能會想把他們從視圖上過濾出來來查看一些感興趣的項。在這個歷史記錄表的頂部有一個過濾欄。單擊會有一個彈出窗口,讓你來精准地配置顯示哪些內容在表格里:
3.WebSockets history
這個選項主要用於記錄WebSockets的數據包,是HTML5中最強大的通信功能,定義了一個全雙工的通信信道,只需Web上的一個 Socket即可進行通信,能減少不必要的網絡流量並降低網絡延遲。
4.Options
該選項主要用於設置代理監聽、請求和響應,攔截反應,匹配和替換,ssl等,其中有八大選項:Proxy Listeners、Intercept Client Requests、Intercept Server Responses、Intercept WebSockets Messages、Response Modification、Match and replace、SSL Pass Through、Miscellaneous
選項1:Proxy Listeners
代理偵聽器是偵聽從您的瀏覽器傳入的連接本地HTTP代理服務器。它允許您監視和攔截所有的請求和響應,並且位於BurpProxy的工作流的心臟。默認情況下,Burp默認監聽12.0.0.1地址,端口8080。要使用這個監聽器,你需要配置你的瀏覽器使用127.0.0.1:8080作為代理服務器。此默認監聽器是必需的測試幾乎所有的基於瀏覽器的所有Web應用程序。
1.add:添加一個新的代理地址。
1.binding:新建一個代理,bind to port-綁定端口號 ,bind to address -綁定ip地址
2.request hadning:這些設置包括選項來控制是否BurpSuite重定向通過此偵聽器接收到的請求:
2.1.Redirect to host - 如果配置了這個選項,Burp會在每次請求轉發到指定的主機,而不必受限於覽器所請求的目標。需要注意的是,如果你正使用該選項,則可能需要配置匹配/替換規則重寫的主機中的請求,如果服務器中,您重定向請求預期,不同於由瀏覽器發送一個主機頭。
2.2.Redirect to port - 如果配置了這個選項,Burp會在每次請求轉發到指定的端口,而不必受限於瀏覽
2.3.Force use of SSL - 如果配置了這個選項,Burp會使用HTTPS在所有向外的連接,即使傳入的請求中使用普通的HTTP。您可以使用此選項,在與SSL相關的響應修改選項結合,開展sslstrip般的攻擊使用Burp,其中,強制執行HTTPS的應用程序可以降級為普通的HTTP的受害用戶的流量在不知不覺中通過BurpProxy代理。
3.Certificate:這些設置控制呈現給客戶端的SSL服務器的SSL證書。
3.1.Generate CA-signed per-host certificate-這是默認選項。安裝后,BurpSuite創造了一個獨特的自簽名的證書頒發機構(CA)證書,並將此計算機上使用,每次BurpSuite運行。當你的瀏覽器發出SSL連接到指定的主機,Burp產生該主機,通過CA證書簽名的SSL證書。您可以安裝BurpSuite的CA證書作為在瀏覽器中受信任的根,從而使每個主機的證書被接受,沒有任何警報。您還可以導出其他工具或Burp的其他實例使用CA證書。
3.2.Generate a CA-signed certificate with a specific hostname---||這類似於前面的選項;然而,Burp會產生一個單一的主機證書與每一個SSL連接使用,使用您指定的主機名。在進行無形的代理時,此選項有時是必要的,因為客戶端沒有發送連接請求,因此Burp不能確定SSL協議所需的主機名。你也可以安裝BurpSuite的CA證書作為受信任的根。
3.3.Use a custom certificate---||-此選項使您可以加載一個特定的證書(在PKCS#12格式)呈現給你的瀏覽器。如果應用程序使用它需要特定的服務器證書(例如一個給定序列號或證書鏈)的客戶端應該使用這個選項。
2.edit:編輯選中的代理地址。
3.remove:刪除選中代理地址。
選項2:Intercept Client Requests
配置攔截規則,設置攔截的匹配規則。 當Intercept request based on the following rules為選中狀態時,burpsuite會配置列表中的規則進行攔截或轉發。
注意:如果該復選框未選中,那么即使Intercept is on也無法截取數據包。
規則可以通過Enabled列中的復選框選擇開啟或關閉。
規則可以是域名, IP地址,協議, HTTP方法, URL,文件擴展名,參數,cookie ,頭/主體內容,狀態代碼,MIME類型, HTML頁面標題等。
規則按順序處理,並且使用布爾運算符AND和OR組合。
選項3:Intercept Server Responses
配置攔截規則,設置攔截的匹配規則,不過這個選項是基於服務端攔截,當選小的Intercept request based on the following rules為選中狀態時,burpsuite會匹配響應包。
選項4:Intercept WebSockets Messages
選項5:Response Modification
選項6:Match and replace
用於自動替換請求和響應通過代理的部分。對於每一個HTTP消息,已啟用的匹配和替換規則依次執行,選擇適用的規則進行匹配執行。
規則可以分別被定義為請求和響應,對於消息頭和身體,並且還特別為只請求的第一行。每個規則可以指定一個文字字符串或正則表達式來匹配,和一個字符串來替換它。對於郵件頭,如果匹配條件,整個頭和替換字符串匹配留空,然后頭被刪除。如果指定一個空的匹配表達式,然后替換字符串將被添加為一個新的頭。有可協助常見任務的各種缺省規則 - 這些都是默認為禁用。 匹配多行區域。您可以使用標准的正則表達式語法來匹配郵件正文的多行區域。
選項7:SSL Pass Through
選項8:Miscellaneous
Spider
一、簡介
Burp Spider 是一個映射 web 應用程序的工具。它使用多種智能技術對一個應用程序的內容和功能進行全面的清查。
Burp Spider 通過跟蹤 HTML 和 JavaScript 以及提交的表單中的超鏈接來映射目標應用程序,它還使用了一些其他的線索,如目錄列表,資源類型的注釋,以及 robots.txt 文件。結果會在站點地圖中以樹和表的形式顯示出來,提供了一個清楚並非常詳細的目標應用程序視圖。
Burp Spider 能使你清楚地了解到一個 web 應用程序是怎樣工作的,讓你避免進行大量的手動任務而浪費時間,在跟蹤鏈接,提交表單,精簡 HTNL 源代碼。可以快速地確人應用程序的潛在的脆弱功能,還允許你指定特定的漏洞,如 SQL 注入,路徑遍歷。
二、模塊介紹
要對應用程序使用 Burp Spider 需要兩個簡單的步驟:
1.使用 Burp Proxy 配置為你瀏覽器的代理服務器,瀏覽目標應用程序(為了節省時間,你可以關閉代理攔截)。
2.到站點地圖的”arget”選項上,選中目標應用程序駐留的主機和目錄。選擇上下文菜單的”
spider this host/branc”選項。
選項一、Contro
用來開始和停止 Burp Spider,監視它的進度,以及定義 spidering 的范圍。
選項二、Options
這個選項里包含了許多控制 Burp Spider 動作的選項。
1:Crawler Settings
● 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的最大數目。將此選項設置為一個合理的數字可以幫助避免爬行“無限”的內容。
2:Passive Spidering
● Passively spider as you browse:如果這個選項被選中,Burp Suite 會被動地處理所有通過 Burp Proxy 的 HTTP 請求,來確認訪問頁面上的鏈接和表格。使用這個選項能讓 Burp Spider 建立一個包含應用程序內容的詳細畫面,甚至此時你僅僅使用瀏覽器瀏覽了內容的一個子集,因為所有被訪問內容鏈接到內容都會自動地添加到 Suite 的站點地圖上。
● link depth to associate with proxy requests:這個選項控制着與通過 Burp Proxy 訪問的 web 頁面 有關的” link depth”。為了防止 Burp Spider 跟蹤這個頁面里的所有鏈接,要設置一個比上面 選項卡里的” maximum link depth”值還高的一個值。
3:Form Submission
● individuate forms:個性化的形式。這個選項是配置個性化的標准(執行 URL,方法,區域,值)。當 Burp Spider 處理這些表格時,它會檢查這些標准以確認表格是否是新的。舊的表格不會加入到提交序列。
● Don’t submit:開啟后蜘蛛不會提交任何表單。
● prompt for guidance:提醒向導。如果被選中,在你提交每一個確認的表單前,Burp Suite 都會為你指示引導。這允許你根據需要在輸入域中填寫自定義的數據,以及選項提交到服務器的哪一個區域。
● automatically submit:自動提交。如果選中,Burp Spider 通過使用定義的規則來填寫輸入域的文本值來自動地提交范圍內的表單。每一條規則讓你指定一個簡單的文本或者正則表達式來匹配表單字段名,並提交那些表單名匹配的字段值。
● set unmatched fields to:設置不匹配的字段。
4:application login
● don’t submit login forms:不提交登錄表單。開啟后burp不會提交登錄表單。
● prompt for guidance:提示向導。Burp能交互地為你提示引導。默認設置項。
● handle as ordinary forms:以一般形式處理。Burp 通過你配置的信息和自動填充規則,用處理其他表單的方式來處理登陸表單。
● automatically submit these credentials:自動提交自定義的數據。開啟后burp遇到登錄表單會按照設定的值進行提交。
5:Spider Engine
● Number of threads – 設置請求線程。控制並發請求數。
● Number of retries on network failure – 如果出現連接錯誤或其他網絡問題,Burp會放棄和移動之前重試的請求指定的次數。測試時間歇性網絡故障是常見的,所以最好是在發生故障時重試該請求了好幾次。
● Pause before retry – 當重試失敗的請求,Burp會等待指定的時間(以毫秒為單位)以下,然后重試失敗。如果服務器宕機,繁忙,或間歇性的問題發生,最好是等待很短的時間,然后重試。
● Throttle between requests:在每次請求之前等待一個指定的延遲(以毫秒為單位)。此選項很有用,以避免超載應用程序,或者是更隱蔽。
● Add random variations to throttle:添加隨機的變化到請求中。增加隱蔽性。
6:Request Headers
您可以配置頭蜘蛛在請求中使用的自定義列表。這可能是有用的,以滿足各個應用程序的特定要求 – 例如,測試設計用於移動設備的應用程序時,以模擬預期的用戶代理。
● Use HTTP version 1.1 :在蜘蛛請求中使用HTTP/1.1,不選中則使用HTTP/1.0.
● Use Referer header:當從一個頁面訪問另一個頁面是加入Referer頭,這將更加相似與瀏覽器訪問。
Scanner
一、簡介
Burp Scanner 是一個進行自動發現 web 應用程序的安全漏洞的工具。它是為滲透測試人員設計的,並且它和你現有的手動執行進行的 web 應用程序半自動滲透測試的技術方法很相似。
使用的大多數的 web 掃描器都是單獨運行的:你提供了一個開始 URL,單擊‖go‖,然后注視着進度條的更新直到掃描結束,最后產生一個報告。Burp Scanner 和這完全不同,在攻擊一個應用程序時它和你執行的操作緊緊的結合在一起。讓你細微控制着每一個掃描的請求,並直接反饋回結果。
Burp Scanner 可以執行兩種掃描類型:主動掃描(Active scanning),被動掃描(Passive scanning)。
二、模塊說明
1:Issue activity
2:Scan queue 掃描隊列,這里將顯示掃描隊列的狀態 進度 結果等。
主要包含以下內容:
1. 索引號的項目,反映該項目的添加順序。
2. 目的地協議,主機和URL 。
3. 該項目的當前狀態,包括完成百分比。
4. 項目掃描問題的數量(這是根據所附的最嚴重問題的重要性和彩色化) 。
5. 在掃描項目的請求數量進行。
6. 網絡錯誤的數目遇到的問題。
7. 為項目創建的插入點的數量。
3:Live scanning
實時掃描可讓您決定哪些內容通過使用瀏覽器的目標應用,通過BurpProxy服務器進行掃描。您可以實時主動掃描設定live active scanning(積極掃描)和live passive(被動掃描)兩種掃描模式。
Live Active Scanning:積極掃描。當瀏覽時自動發送漏洞利用代碼。
Live Passive Scanning:被動掃描。只分析流量不發送任何請求。
3:Issue Definitions
漏洞列表,列出了burp可以掃描到的漏洞詳情
4:Options
包含Burp掃描選項進行攻擊的插入點,主動掃描引擎,主動掃描優化,主動掃描區和被動掃描區域。
1:Attack Insertion Points
2:Active Scanning Engine
3:Active Scanning Optimization
4:Active Scanning Areas
5:Passive Scanning Areas
6:Static Code Analysis
Intruder
一、簡介
Burp Intruder是一個強大的工具,用於自動對Web應用程序自定義的攻擊,Burp Intruder 是高度可配置的,並被用來在廣范圍內進行自動化攻擊。你可以使用 Burp Intruder 方便地執行許多任務,包括枚舉標識符,獲取有用數據,漏洞模糊測試。合適的攻擊類型取決於應用程序的情況,可能包括:缺陷測試:SQL 注入,跨站點腳本,緩沖區溢出,路徑遍歷;暴力攻擊認證系統;枚舉;操縱參數;拖出隱藏的內容和功能;會話令牌測序和會話劫持;數據挖掘;並發攻擊;應用層的拒絕服務式攻擊。
二、模塊說明
Burp Intruder主要有四個模塊組成:
1:Target 用於配置目標服務器進行攻擊的詳細信息。
2:Positions 設置Payloads的插入點以及攻擊類型(攻擊模式)。
3:Payloads 設置payload,配置字典
4:Opetions 此選項卡包含了request headers,request engine,attack results ,grep match,grep_extrack,grep payloads和redirections。你可以發動攻擊之前,在主要Intruder的UI上編輯這些選項,大部分設置也可以在攻擊時對已在運行的窗口進行修改。
1:Target 目標選項(Target tab)
這個選項是用來配置目標服務器的細節:
2:Positions 位置選項(Positions tab)
這個選項是用來配置在攻擊里產生的所有 HTTP 請求的模板:
使用一對§字符來標記出有效負荷的位置,在這兩個符號直接包含了模板文本的內容。當把一個有效負荷放置到一個給出的請求的特殊位置上時,就把這§符號放到這個位置,然后在兩個符號之間的出現的文本都會被有效負荷替換。當有個特殊位置沒有為一個給出的請求安排有效負荷時(這只適用”sniper”攻擊類型),那個位置的§字符會被刪除,出現在它們之間的文本不會變化。
當使用 Burp Suite 發送一個其他地方的請求時,Burp Intruder 會對你最想放置有效負荷的位置做一個最好的猜測,並且它把這些放置在每個 URL 和主體參數的值里,以及每個cookie 里。每個標記和它中間的文本都會被加亮以顯得更清晰。你可以使用 Intruder 菜單上的選項標記的位置是要替換還是附加現有的參數值。在上面的請求編輯器里,指出了定義位置的數量和文本模板的大小。
你可以使用選項上的按鈕來控制位置上的標記:
1. add § — 在當前光標位置插入一個位置標記。
2. clear § — 刪除整個模板或選中的部分模板里的位置標記。
3. auto § — 這會對放置標記的位置做一個猜測,放哪里會有用,然后就把標記放到相應位置。這是一個為攻擊常規漏洞(SQL 注入)快速標記出合適位置的有用的功能,然后人工標記是為自定義攻擊的。
4.refresh — 如果需要,可以刷新編輯器里有顏色的代碼。
5.clear — 刪除整個編輯器內容。
3:Payloads 有效負荷選項(Payloads tab)
這個選項是用來配置一個或多個有效負荷的集合。如果定義了”cluster bomb”和”pitchfork”攻擊類型,然后必須為每定義的有效負荷位置(最多8個)配置一個單獨的有效負荷。使用”payload set”下拉菜單選擇要配置的有效負荷。
選項1:Payload Sets Payload數量類型設置
選項2:Payload Opetions[Simple list] 該選項會根據選項1中Payload type的設置而改變
選項3:Payload Processing 對生成的Payload進行編碼、加密、截取等操作
選項4:Payload Encoding 你可以配置哪些有效載荷中的字符應該是URL編碼的HTTP請求中的安全傳輸。任何已配置的URL編碼最后應用,任何有效載荷處理規則執行之后。 這是推薦使用此設置進行最終URL編碼,而不是一個有效載荷處理規則,因為可以用來有效載荷的grep選項來檢查響應為呼應有效載荷的最終URL編碼應用之前。
4:Opetions 選項卡(Options tab) 此選項卡包含了request headers,request engine,attack results ,grep match,grep_extrack,grep payloads和redirections。你可以發動攻擊之前,在主要Intruder的UI上編輯這些選項,大部分設置也可以在攻擊時對已在運行的窗口進行修改。
選項1:Request Headers 這些設置控制在Intruder是否更新配置請求頭。
如果選中‘update Content-Length header’框,Burp Intruder 會使用每個請求的 HTTP 主體長度的正確值,添加或更新這個請求里 HTTP 消息頭的內容長度。這個功能對一些需要把可變長度的有效載荷插入到 HTTP 請求模板主體的攻擊是很有必要的。這個 HTTP 規范和大多數 web 服務器一樣,需要使用消息頭內容長度來指定 HTTP 主體長度的正確值。如果沒有指定正確值,目標服務器會返回一個錯誤,也可能返回一個未完成的請求,也可能無限期地等待接收請求里的進一步數據。
如果選中‘set Connection: close’框,則 Burp Intruder 會添加或更新 HTTP 消息頭的連接來請求在每個請求后已關閉的連接。在多數情況下,這個選項會讓攻擊執行得更快。
選項2:Request Engine 設置發送請求的線程、超時重試等。
選項3:Attack Results 設置攻擊結果的顯示。
選項4:Grep – Match 在響應中找出存在指定的內容的一項。
選項5:Grep – Extract 通過正則提取返回信息中的內容。
選項6:Grep – Payloads 這些設置可以用於包含已提交的有效負載的反射的標志結果項目。如果啟用了此選項,BurpSuite會添加包含一個復選框指示當前負載的值在每個響應發現新的結果列。
選項7:Redirections 重定向響應,控制Burp在進行攻擊時如何處理重定向。
Burp Suite Intruder的4種攻擊類型
一 Sniper(狙擊手模式)
狙擊手模式使用一組payload集合,它一次只使用一個payload位置,假設你標記了兩個位置“A”和“B”,payload值為“1”和“2”,那么它攻擊會形成以下組合(除原始數據外):
attack NO. | location A | location B |
---|---|---|
1 | 1 | no replace |
2 | 2 | no replace |
3 | no replace | 1 |
4 | no replace | 2 |
二Battering ram(攻城錘模式)
攻城錘模式與狙擊手模式類似的地方是,同樣只使用一個payload集合,不同的地方在於每次攻擊都是替換所有payload標記位置,而狙擊手模式每次只能替換一個payload標記位置。
attack NO. | location A | location B |
---|---|---|
1 | 1 | 1 |
2 | 2 | 2 |
三Pitchfork(草叉模式)
草叉模式允許使用多組payload組合,在每個標記位置上遍歷所有payload組合,假設有兩個位置“A”和“B”,payload組合1的值為“1”和“2”,payload組合2的值為“3”和“4”,則攻擊模式如下:
attack NO. | location A | location B |
---|---|---|
1 | 1 | 3 |
2 | 2 | 4 |
四Cluster bomb(集束炸彈模式)
集束炸彈模式跟草叉模式不同的地方在於,集束炸彈模式會對payload組進行笛卡爾積,還是上面的例子,如果用集束炸彈模式進行攻擊,則除baseline請求外,會有四次請求:
attack NO. | location A | location B |
---|---|---|
1 | 1 | 3 |
2 | 1 | 4 |
3 | 2 | 3 |
4 | 2 | 4 |
拓展閱讀:
Burp Suite詳細使用教程-Intruder模塊詳解(1)
http://www.freebuf.com/tools/2079.html
Burp Suite詳細使用教程-Intruder模塊詳解(2)
http://www.freebuf.com/articles/3693.html
Burp Suite詳細使用教程-Intruder模塊詳解(3)
http://www.freebuf.com/articles/4184.html
Decoder
一、簡介
Burp Decoder是Burp Suite中一款編碼解碼工具,將原始數據轉換成各種編碼和哈希表的簡單工具,它能夠智能地識別多種編碼格式采用啟發式技術。
二、模塊說明
通過有請求的任意模塊的右鍵菜單send to Decoder或輸入數據選擇相應的數據格式即可進行解碼編碼操作,或直接點擊Smart decoding進行智能解碼。
更重要的是,對於同一個數據,我們可以在Decoder的界面,進行多次編碼解碼的轉換。
Comparer
一、簡介
Burp Comparer在Burp Suite中主要提供一個可視化的差異比對功能,來對比分析兩次數據之間的區別。使用中的場景可能是:
1.枚舉用戶名過程中,對比分析登陸成功和失敗時,服務器端反饋結果的區別。
2.使用 Intruder 進行攻擊時,對於不同的服務器端響應,可以很快的分析出兩次響應的區別在哪里。
3.進行SQL注入的盲注測試時,比較兩次響應消息的差異,判斷響應結果與注入條件的關聯關系。
二、模塊說明
對於Comparer的使用,主要有兩個環節組成,先是數據加載,然后是差異分析。 Comparer數據加載的方式常用的有:
1.從其他Burp工具通過上下文菜單轉發過來。
2.直接粘貼。
3.從文件加載三種方式。
當加載完畢后,如果你選擇了兩次不同的請求或應答消息,則下發的比較按鈕將被激活,可以選擇文本比較或者字節比較。
如果點擊了【words】或者【bytes】,則進入比對界面,頁面自動通過背景顏色顯示數據的差異。
Extender
一、簡介
Burp在軟件中提供了支持第三方拓展插件的功能,方便使用者編寫自己的自定義插件或從插件商店中安裝拓展插件。Burp擴展程序可以以多種方式支持自定義Burp的行為,例如:修改HTTP請求和響應,自定義UI,添加自定義掃描程序檢查以及訪問關鍵運行時信息,包括代理歷史記錄,目標站點地圖和掃描程序問題等。
二、模塊說明
Extender主要由四個模塊組成:
1.Extensions 擴展
2.BApp Store 應用程序商店
3.APIS
4.Options 選項
1.Extensions 擴展
日志信息的輸出有三種方式:
a)系統控制台輸出
b)存儲到指定的文件中
c)Burp的界面輸出 默認情況下,會選擇Burp的界面輸出。
2.BApp Store 應用程序商店
從圖中我們可以看出,左邊為各個插件的應用列表,當選中某個插件后,右側顯示的為該插件的描述信息和安裝信息。 如果我們需要使用某個插件,則點擊右側下方的【install】按鈕,進行安裝。
此時,安裝按鈕置為灰色,同時顯示為【installing】,右下角也顯示安裝中,如上圖。安裝完成后,界面會顯示重新安裝【Reinstall】和插件評分按鈕【Submit rating】,作為插件商店的用戶推薦。
安裝完畢后,在Burp Extender 的Extension的Tab頁面中,會自動顯示已加載的插件列表。通過插件列表的管
理,我們可以對插件進行后期的維護。
當然,除了從應用商店自動安裝插件外,我們也可以下載插件,進行手工安裝。如下圖:
3.APIS
4.Options 選項
下面還有一個Ruby的環境和上面的差不多。
Project
一、簡介
Project options主要用來對Project的一些設置。
二、模塊說明
Project options主要由五個模塊組成:
1.Connections 連接
2.HTTP
3.SSL
4.Sessions
5.Misc 雜項
1.Connections 連接
選項1:Platform Authentication
選項2:Upstream proxy servers
選項3:Socks proxy
選項4:Timeouts
選項5:Hosname Resolution
選項6:Out-of-scope Requests
2.HTTP
選項1:Redirections
選項2:Streaming responses
選項2:status 100 responses
3.SSL
選項1:SSL Negotiation
選項2:Client SSL Certificates
選項3:Server SSL Certificates
4.Sessions
選項1:Session Handling Rules
選項2:Cookie Jar
選項3:Macros
5.Misc 雜項
選項1:Scheduled Tasks
選項2:Burp Collaborator Server
User options
一、簡介
User options模塊主要用來配置一些常用的選項。
二、模塊說明
User options主要由4個模塊組成:
1.Connections 連接
2.SSL
3.Display
4.Misc 雜項
1.Connections 連接
選項1:Platform Authentication
選項2:Upstream Proxy Servers
選項3:Socks Proxy
2.SSL
選項1:Java SSL Options
選項2:Client SSL Certificates
3.Display
選項1:User Interface
選項2:Http Message Display
選項3:Character Sets
4.Misc 雜項
選項1:Hotkeys
選項2:Logging
選項3:Temporary Files Location
選項4:Proxy Interception
選項5:Performance Feedback
原文博客:https://www.cnblogs.com/yufusec