Burp Suite使用介紹(一)

小樂天 · 2014/05/01 19:54php

Getting Started


Burp Suite 是用於攻擊web 應用程序的集成平臺。它包含了許多工具,併爲這些工具設計了許多接口,以促進加快攻擊應用程序的過程。全部的工具都共享一個能處理並顯示HTTP 消息,持久性,認證,代理,日誌,警報的一個強大的可擴展的框架。本文主要介紹它的如下特色:html

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的測試流程過程吧。 以下圖web

Image001

簡要分析

代理工具能夠說是Burp Suite測試流程的一個心臟,它可讓你經過瀏覽器來瀏覽應用程序來捕獲全部相關信息,並讓您輕鬆地開始進一步行動,在一個典型的測試中,偵察和分析階段包括如下任務:正則表達式

手動映射應用程序-使用瀏覽器經過BurpSuite代理工做,手動映射應用程序經過如下連接,提交表單,並經過多步驟的過程增強。這個過程將填充代理的歷史和目標站點地圖與全部請求的內容,經過被動蜘蛛將添加到站點地圖,能夠從應用程序的響應來推斷任何進一步的內容(經過連接、表單等)。也能夠請求任何未經請求的站點(在站點地圖中以灰色顯示的),並使用瀏覽器請求這些。shell

在必要是執行自動映射-您能夠使用BurpSuite自動映射過程當中的各類方法。能夠進行自動蜘蛛爬行,要求在站點地圖未經請求的站點。請務必在使用這個工具以前,檢查全部的蜘蛛爬行設置。數據庫

使用內容查找功能發現,可讓您瀏覽或蜘蛛爬行可見的內容連接以進一步的操做。express

使用BurpSuite Intruder(入侵者)經過共同文件和目錄列表執行自定義的發現,循環,並肯定命中。編程

注意,在執行任何自動操做以前,可能有必要更新的BurpSuite的配置的各個方面,諸如目標的範圍和會話處理。後端

分析應用程序的攻擊面 - 映射應用程序的過程當中填入代理服務器的歷史和目標站點地圖與全部的BurpSuite已抓獲有關應用程序的信息。這兩個庫中包含的功能來幫助您分析它們所包含的信息,並評估受攻擊面的應用程序公開。此外,您能夠使用BurpSuite的目標分析器報告的攻擊面的程度和不一樣類型的應用程序使用的URL 。瀏覽器

接下來主要介紹下BurpSuite的各個功能吧。先介紹Proxy功能,由於Proxy起到一個心臟功能,全部的應用都基於Proxy的代理功能。

Burp Suite功能按鈕鍵翻譯對照

導航欄

Burp BurpSuite save 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 through SSL經過
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:

Image003

Using BurpProxy http、https

http

設置代理的方法:以http ie爲例:

工具>>Internet選項>>鏈接>>局域網>>勾選代理服務器填寫地址127.0.0.1端口8080
複製代碼

這裏端口能夠隨便定義可是要跟burp的監聽端口要一致而後保存再到Proxy的Options中添加add

Image005

Image007

這樣http協議的監聽就能夠了,當intercept is on表示開啓攔截功能,反之

Image009

這樣就表明攔截成功,咱們能夠右擊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(不須要以管理員權限運行) 其它瀏覽器差很少具體請查看官網 
複製代碼

portswigger.net/burp/Help/p…

Intercept

用於顯示和修改HTTP請求和響應,經過你的瀏覽器和Web服務器之間。在BurpProxy的選項中,您能夠配置攔截規則來肯定請求是什麼和響應被攔截(例如,範圍內的項目,與特定文件擴展名,項目要求與參數,等)。 該面板還包含如下控制:

Forward

當你編輯信息以後,發送信息到服務器或瀏覽器

Drop

當你不想要發送此次信息能夠點擊drop放棄這個攔截信息

Interception is on/off

這個按鈕用來切換和關閉全部攔截。若是按鈕顯示Interception is On,表示請求和響應將被攔截或自動轉發根據配置的攔截規則配置代理選項。若是按鈕顯示Interception is off則顯示攔截以後的全部信息將自動轉發。

Action

說明一個菜單可用的動做行爲操做能夠有哪些操做功能。

Comment field

爲請求或響應添加註釋,以便更容易在History選項卡中識別它們。

Image011

Highlight

爲請求或響應添加顏色,能夠在history選項卡和截獲中更容易發現。

Image013

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(監聽端口)

Image015

您能夠經過單擊任何列標題進行升序或降序排列。若是您在表中雙擊選擇一個項目地址,會顯示出一個詳細的請求和響應的窗口。或者右擊選擇 Show new history window

Image017

Display Filter

Proxy histroy有一個能夠用來在視圖中隱藏某些內容的功能,以使其更易於分析和你感興趣的工做內容的顯示過濾。 History Table上方的過濾欄描述了當前的顯示過濾器。點擊過濾器欄打開要編輯的過濾器選項。該過濾器能夠基於如下屬性進行配置:

Image019

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應用程序。

Image021

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。
刪除<object>標記。
複製代碼

下列選項可用於提供對受害用戶的流量在不知不覺中被經過BurpSuite代理sslstrip般的攻擊。您能夠在與聽者選項強制SSL的傳出請求,以有效地從用戶的鏈接剝離SSL一塊兒使用這些:

轉換HTTPS爲HTTP的連接。
刪除cookie安全標誌。
複製代碼

Match and Replace

用於自動替換請求和響應經過代理的部分。對於每個HTTP消息,已啓用的匹配和替換規則依次執行,以及任何適用的替代品製成。規則能夠分別被定義爲請求和響應,對於消息頭和身體,而且還特別爲只請求的第一行。每一個規則能夠指定一個文字字符串或正則表達式來匹配,和一個字符串來替換它。對於郵件頭,若是匹配條件,整個頭和替換字符串匹配留空,而後頭被刪除。若是指定一個空的匹配表達式,而後替換字符串將被添加爲一個新的頭。有可協助常見任務的各類缺省規則 - 這些都是默認爲禁用。 匹配多行區域。您能夠使用標準的正則表達式語法來匹配郵件正文的多行區域。

在替換字符串,組能夠使用其次爲索引$引用。因此下面的替換字符串將包含被匹配在上述正則表達式,該標記的名稱:

Image023

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,如圖

Image025

這樣看起來site map是否是很亂,則能夠右擊add to scope,而後點擊Filter勾選Show only in-scope items,此時你再回頭看Site map就只有百度一個地址了,這裏filter能夠過濾一些參數,show all顯示所有,hide隱藏全部,若是勾選了表示不過濾

Image027

針對地址右擊顯示當前能夠作的一些動做操做等功能。左圖 針對文件右擊顯示當前能夠作一些動做操做等功能。右圖

Image029Image031

2)Scope

這個主要是配合Site map作一些過濾的功能,如圖:

Image033

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發如今您所請求的內容連接到它。您能夠刪除不感興趣的地址

Image035

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目標以適當的方式執行行動,只針對你感興趣並願意攻擊項目。

Image037

範圍定義使用的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」選項。
複製代碼

Image039

你也能夠在任何 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

Image041

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

Image043

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(被動掃描)

Image045

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

Image047

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

Image049

登錄表單在應用程序中扮演一個特殊角色,而且你經常會讓 Burp 用和處理日常表單不 同樣的方式來處理這個表單。使用這個配置,你能夠告訴 Spider 在遇到一個表單執行下面 4 種不一樣操做的一種:

1.若是你沒有證書,或者關注 Spidering 的敏感保護功能,Burp 能夠忽略登錄表單。
2.Burp 能交互地爲你提示引導,使你可以指定證書。這時默認設置項。
3.Burp 經過你配置的信息和自動填充規則,用處理其餘表單的方式來處理登錄表單。
4.在遇到的每一個登錄表單時,Burp 能自動地提交特定的證書。 
複製代碼

在最後一種狀況下,任什麼時候間 Burp 遇到一個包含密碼域的表單,會提交你配置的密碼到密碼域,提交你配置用戶名到最像用戶名的字段域。若是你有應用程序的證書,想讓 Spider爲你處理登錄,一般狀況下這是最好的選項

Spider Engine

Image051

這些設置控制用於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請求中使用的請求頭。您能夠配置頭蜘蛛在請求中使用的自定義列表。這多是有用的,以知足各個應用程序的特定要求 - 例如,測試設計用於移動設備的應用程序時,以模擬預期的用戶代理。

如下選項也可用:

Image053

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就能夠看到地址已經在開始掃描咯

Image055

2.對地址右擊還能夠導出報告,

Image057

Image059

Html或者xml隨便你以什麼格式的,而後一直下一步下一步到以下圖選擇保存文件到哪

Image061

咱們打開看看,是否是很漂亮呢

Image063

3.若是掃描出漏洞了咱們還能夠直接在這針對某個漏洞進行查看,若是想測試的話能夠發送到Repeater進行測試哦

Image065

Results

結果選項卡包含全部的掃描儀已肯定,從主動和被動掃描的問題。以一種樹型圖顯示應用程序的內容,其中的問題已經被發現,使用URL分解成域,目錄和文件的層次表示。若是您選擇一個或多個部分的分支,全部選定的項目將掃描的問題都列出來,用組合在一塊兒的相同類型的問題。您還能夠擴大這些問題彙總查看全部的每種類型的個別問題。 若是您選擇的問題那麼將顯示相應的詳情,包括:

1)自定義的漏洞,諮詢內容包括:
問題類型及其整治的標準描述。
中適用於該問題,並影響其修復任何特定的功能的描述。
2)完整的請求和響應都是依據報告了該問題。在適用的狀況,是相關的識別和再現問題的請求和響應的部分在請求和響應消息的編輯器中突出顯示。
複製代碼

一般狀況下,測試並驗證一個問題最快的方法是使用發送到Repeater。另外,對於GET請求,您能夠複製此URL,並將其粘貼到瀏覽器中。而後,您能夠從新發出請求。 Burp掃描報告描述,每個問題都會給出嚴重程度(高,中,低,資訊)和置信度(確定的,堅決的,暫定)的評級。當一個問題一直使用一種技術,本質上是不太可靠(如SQL盲注)肯定,Burp會讓你意識到這一點,經過丟棄的置信水平存在必定不足。這些額定值應始終被解釋爲指示性的,你應該根據你的應用程序的功能和業務方面的知識進行審查。

這個問題已經上市,你能夠用它來執行如下操做的上下文菜單:如圖所示

Image067

Report selected issues

啓動BurpSuite Scanner的報告嚮導,生成的選定問題的正式報告。 Set severity - 這讓你從新分配問題的嚴重程度。您能夠設置嚴重程度高,中,低,或信息。您還能夠標記問題做爲假陽性。

Delect selected issues

刪除選定問題。請注意,若是你刪除了一個問題,Burp從新發現了一樣的問題(例如,若是你從新掃描了一樣的要求),那麼問題將再次報告。相反,若是你是一個假陽性標記的問題,那麼這將不會發生。所以,最適合用於清理掃描結果移除你不感興趣。對於內部的功能不須要您的問題仍然工做在主機或路徑刪除的問題,您應該使用假陽性的選項。

Scan Queue

Active Scanning(主動掃描)過程一般包括髮送大量請求到服務器爲所掃描的每一個基本的請求,這多是一個耗時的過程。當您發送的主動掃描請求,這些被添加到活動掃描隊列,它們被依次處理。如圖

Image069

掃描隊列中顯示每一個項目的詳細信息以下:

1)索引號的項目,反映該項目的添加順序。
2)目的地協議,主機和URL 。
3)該項目的當前狀態,包括完成百分比。
4)項目掃描問題的數量(這是根據所附的最嚴重問題的重要性和彩色化) 。
5)在掃描項目的請求數量進行。
注意 這不是插入點的數量的線性函數 - 觀察應用程序行爲的反饋到後續攻擊的請求,僅僅由於它會爲一個測試儀。
6)網絡錯誤的數目遇到的問題。
7)爲項目建立的插入點的數量。
複製代碼

這些信息可讓您輕鬆地監控個別掃描項目的進度。若是您發現某些掃描進度過於緩慢,能夠理解的緣由,如大量的插入點,緩慢的應用響應,網絡錯誤等給定這些信息,你就能夠採起行動來優化你的掃描,經過改變配置爲插入點時,掃描引擎,或正在測試的主動掃描區域。

你能夠雙擊任何項目在掃描隊列顯示,到目前爲止發現的問題,並查看了基本請求和響應的項目。您能夠使用掃描隊列的上下文菜單來執行各類操做來控制掃描過程。確切的可用選項取決於所選的項目(S )的狀態,幷包括:以下圖所示

Image071

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兩種掃描模式。如圖

Image073

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擴展的自定義插入點位置。

Image075

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請求的引擎。下列選項可用:

Image077

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

主動掃描邏輯的行爲,以反映掃描的目的和目標應用程序的性質。例如,您能夠選擇更容易發現問題,在一個大型應用程序的快速掃描;或者您能夠執行更慢全面掃描,以發現更難,並且須要更多的掃描請求,以檢測問題。

Image079

下列選項可用:

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

定義哪些是主動掃描過程當中進行檢查。是檢查如下類別可供選擇:

Image081

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

自定義的請求和響應的各個方面在被動掃描檢查。下列選項可用:

Image083

Headers--頭 
Forms--表格 
Links--連接 
Parameters--參數 
Cookie 
MIME類型 
Caching緩存 
Information disclosure--信息披露 
Frameable responses--耐燃反應(「點擊劫持」) 
ASP.NET的ViewState 
須要注意的是被動掃描不會派出本身的任何要求,和每一個被動強加檢查您的計算機上一個微不足道的處理負荷。不過,你能夠禁用檢查各個領域,若是你根本就不關心他們,不但願他們出如今掃描結果。
複製代碼

Intruder

Burp intruder是一個強大的工具,用於自動對Web應用程序自定義的攻擊。它能夠用來自動執行全部類型的任務您的測試過程當中可能出現的。

Image085

Image087

要開始去了解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的攻擊選項卡。
複製代碼

Image089

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這行代碼,如圖

Image091

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.代理好服務器地址,而後訪問這個大馬地址

Image093

2.隨後點擊forward,而且在大馬頁面隨便輸入什麼,burp攔截了數據以後發送到repeater

Image095

3.切換到repeater選項卡中,點擊go按鈕,找出一些反饋的錯誤信息,固然若是不要也能夠,這裏找錯誤信息是方便爆破成功了以後便於發現,我這個馬反饋的是中文錯誤信息,顯示是亂碼就不寫了,咱們能夠經過爆破成功了以後看字節數。 4.接下來就是發送到intruder,target通常都不須要管,已經自動填好了,而後選擇positions

Image097

先點擊Clear$,選擇密碼地地方點擊add$。

Image099

5.切換到payloads設置payload type,選擇咱們本身的字典

Image101

6.切換到options去設置進程數和失敗以後重試次數、過濾結果

Image103

通常我都會把Grep-Match清理掉,免得干擾。

Image105

7.接下來點擊intruder下的start attack就開始爆破了,密碼admin,我是根據length來判斷跟其餘的不一樣

Image107

附贈一個webshell字典:shellpassword.txt.zip

Target

用於配置目標服務器進行攻擊的詳細信息。所需的選項有: Host(主機) - 這是目標服務器的IP地址或主機名。 Port(端口) - 這是HTTP / S服務的端口號。 Use HTTPS(使用HTTPS),這指定的SSL是否應該被使用。 配置這些細節最簡單的方法是選擇你要攻擊中BurpSuite的任何地方的請求,並選擇上下文菜單中的「Send to intruder」選項。這將發送選定的請求,在intruder一個新的選項卡,將自動填充的目標和位置選項卡。

Positions

用於配置request temlate的攻擊,和payloads markers、attack type一塊兒。

Request Template

主要請求編輯器是用來定義從全部攻擊請求都將被導出的請求模板。對於每個攻擊的請求,BurpSuite接受請求的模板,並把一個或多個有效載荷送入由有效載荷標記定義的位置。 成立請求模板的最簡單的方法是選擇你要攻擊中BurpSuite的任何地方的請求,並選擇上下文菜單中的「Send to intruder」選項。這將發送選定的請求,在intruder的選項卡,將自動填充的Target和Positions選項卡。

Payload Markers

有效載荷的標記是使用§字符,而且功能以下放置:

1)每對標記指定一個有效載荷的位置。
2)一對標記物能夠從它們之間任選的模板要求附上一些文字。
3)當一個有效載荷的位置被分配了一個有效載荷,不管是標記和任何包含的文本將被替換爲有效載荷。
4)當一個有效載荷的位置不具備分配的有效載荷,該標記將被刪除,可是所包含的文本保持不變。
複製代碼

爲了使配置更加簡單,Intruder會自動突出顯示每對有效載荷的標記和任何它們之間包含的文本。

您能夠手動或自動作有效載荷標記。當您從BurpSuite別處發送一個請求到Intruder,Intruder猜想你可能要放置有效載荷,並設置相應的有效載荷標記。您能夠修改使用按鈕的默認有效載荷標記旁邊的請求模板編輯器:

Add§ - 若是沒有文本被選中,該插入一個有效載荷標記在光標位置。若是您已經選擇了一些文字,一對標記插入封閉選定的文本。 Clear§ - 這將刪除全部的位置標記,不管是從整個模板或模板的選定部分。 Auto§ - 自動放置有效載荷標記。包括價值:

1)URL查詢字符串參數
2)車身參數
3)曲奇餅
4)多重參數屬性(例如,在文件上傳的文件名)
5)XML數據和元素屬性
6)JSON參數
複製代碼

您能夠配置自動負載位置是否將更換或追加到現有的參數值,經過入侵者菜單上的選項。須要注意的是,若是一個子部分的要求,但不是整個消息體,包含格式化數據使用XML或JSON ,能夠自動經過這種結構中的位置的有效載荷手動選擇格式化數據的準確塊,並使用「自動」按鈕在其定位的有效載荷。這是有用的,例如,當一個多參數的值包含在XML或JSON格式數據。

刷新 - 這將刷新請求模板編輯器的語法彩色化,若是必要的。
清除 - 這會刪除整個請求模板。
複製代碼

注意:您也能夠使用入侵者的有效載荷倉的UI經過BurpSuite掃描儀配置自定義插入點主動掃描。要作到這一點,配置請求模板和有效載荷在標記內入侵者一般的方式,而後選擇從入侵者菜單中的「主動掃描定義插入點」 。

Attack type

Burp Intruder支持各類攻擊類型 - 這些決定在何種負載分配給有效載荷倉的方式。攻擊類型能夠使用請求模板編輯器上方的下拉菜單進行選擇。如下攻擊類型可供選擇:

Image109

Sniper(狙擊手) - 這將使用一套單一的payloads。它的目標依次在每一個有效載荷的位置,並把每一個有效載荷送入依次那個位置。這不是針對一個給定的請求的位置不受影響 - 位置標記被移除,並在它們之間出如今模板中任何封閉文本保持不變。這種攻擊類型爲個別模糊測試的一些請求參數常見的漏洞很是有用。在攻擊中生成的請求的總數是位置的數目和在有效載荷中設定的有效載荷的數量的乘積。

Battering ram(撞擊物) - 使用一組payload。經過迭代的有效載荷方式,並將相同的payloads再一次填充到全部已定義的有效載荷倉。當其中一個攻擊須要相同的輸入將被插入在多個地方在請求中(例如,一個Cookie中的用戶名和cookie參數)對這種攻擊類型是很是有用的。在攻擊中生成的請求的總數是有效載荷的有效載荷中設定的數目。

Image111

Image113

例如生成一組數字1-9,則就是1-1 ,2-2,3-3這種形式 Pitchfork(相交叉) - 這將使用多個payloads集。有對每一個定義的位置(最多20個)不一樣的有效載荷組。經過設置全部有效載荷的攻擊迭代的方式,並將一個有效載荷到每一個定義的位置。

Image115

Image117

例如設置多個,每一個payload設置一個字典,則就是1-1-1,2-2-2,3-3-3這種形式

換句話說,第一個請求將放置第一個有效載荷的Payload set 1到Positions 1 ,並從有效載荷中的第一個Payload set 2到Positons 2 ;第二個請求將放置第二個Payload set 1到Positions 1 ,並從payload中的第二個Payload set 2到Postions2 ,等在那裏的攻擊須要不一樣但相關的輸入進行插在多個地方,這種攻擊類型是有用的請求(例如,用戶名中的一個參數,和對應於該用戶名中的另外一個參數已知的ID號) 。在攻擊中生成的請求的總數是有效載荷中的最小有效載荷組的數目。

Cluster bomb(集束炸彈) - 使用多個Payload sets。有對每一個定義的Positions(最多20個)設置不一樣的payload set。經過每一個有效載荷的攻擊迭代依次設置,使有效載荷組合的全部排列進行測試。

例如設置三個字典都是10個數,則總共有1000總匹配的模式

Image119

也就是說,若是有兩個有效載荷的位置,則該攻擊將放置第一個有效載荷從payload set 2到Positions 2 ,並經過在有效負載的全部 payload set 1中的positions 1 ;而後它將第二個有效載荷從載荷設置2到位置2 ,並經過有效載荷所有載入循環設置1到位置1 。其中一個攻擊須要不一樣的和無關的或未知輸入要在多個地方插入這種類型的攻擊是很是有用的在請求中(例如猜想憑證,在一個參數的用戶名,而且在另外一個參數密碼時) 。在攻擊中生成的請求的總數是在全部定義的有效載荷的有效載荷集的數目的乘積 - 這多是很是大的。

Payloads

Types

Burp Intruder包含如下幾種attack type:

Simple list--簡單字典
Runtime file--運行文件
Custom iterator--自定義迭代器
Character substitution--字符替換
複製代碼

此負載類型容許您配置一個字符串列表,並應用各類字符替換到每一個項目。這多是在密碼猜想攻擊很是有用,用來產生在字典中的單詞常見的變化。 用戶界面容許您配置了一些字符替換。當執行攻擊,有效載荷類型工程經過逐一配置的列表項。對於每一個項目,它產生一個數的有效載荷,根據所定義的取代基包括取代的字符的全部排列。例如,默認替換規則(其中包括e>3且t>7),該項目「peter」將產生如下的有效載荷:

peter
p3ter
pe7er
p37er
pet3r
p3t3r
pe73r
p373r
複製代碼

Case modification--此負載類型容許您配置一個字符串列表,並應用各類狀況下修改每一個項目。這多是密碼猜想攻擊很是有用,用來產生在字典中的單詞的狀況下的變化。 能夠選擇如下的狀況下修改規則:

No change - 這個項目能夠用不被修改。 
To lower case- 在該項目的全部字母轉換爲小寫。 
To upper case - 在該項目的全部字母轉換爲大寫。 
To Propername - 在該項目的第一個字母轉換爲大寫,以及隨後的字母轉換爲小寫。 
To ProperName - 在該項目的第一個字母轉換爲大寫,以及隨後的字母都不會改變。
複製代碼

例如:

Peter Wiener
peter wiener
PETER WIENER
Peter wiener
複製代碼

選項:

Recursive grep--遞歸grep
Illegal Unicode--非法的Unicode
Character blocks--字符塊
Numbers--數字
Dates--日期
Brute forcer--暴力
Null payloads--空的有效負載
Character frobber--性格frobber
Bit flipper--位翻轉
Username generator--用戶名生成器
ECB block shuffler--歐洲央行座洗牌
Extension-generated--擴展生成
Copy other payload--複製其它有效負載
複製代碼

Processing

由配置的有效載荷類型生成的有效載荷能夠使用各類有效載荷的處理規則和有效負載編碼能夠進一步操縱。

1)Payload Processing Rules

在它被使用以前能夠定義規則來對每一個有效載荷執行各類處理任務。該定義的規則按順序執行,而且能夠打開和關閉,以幫助調試與配置的任何問題。有效載荷的處理規則是有用的在多種狀況下,你須要生成不一樣尋常的有效載荷,或者須要在一個更普遍的結構或在使用前編碼方案包的有效載荷可達。

Image121

Add prefix - 添加一個文字前綴
Add suffix - 添加一個文字後綴
Match/replace - 將替換匹配特定正則表達式的有效載荷的任何部位,用一個文字字符串表示。
Substring - 提取的有效載荷的子部分中,從指定的偏移量(0-索引)和至所指定的長度開始。
Reverse substring - 對於子規則來講,最終的偏移量指定的有效載荷的末尾向後計數,而且長度從端部向後偏移計數。
Modify case - 這個修改了的有效載荷的狀況下,若是適用的話。一樣的選項做爲的狀況下修改有效載荷類型。
Encode - URL,HTML,Base64的,ASCII碼或十六進制字符串構建各類平臺:採用不一樣的計劃,該編碼的有效載荷。
Hash - hash
Add raw payload - 這以前或以後,在當前處理的值增長了原始負載值。它能夠是有用的,例如,若是你須要提交相同的有效載荷在raw和哈希表。
Skip raw payload - 將檢查是否當前處理的值匹配指定的正則表達式,若是是這樣,跳過有效載荷和移動到下一個。這多是有用的,例如,若是知道一個參數值必須有一個最小長度和要跳過的一個列表,比這更短的長度的任何值。
Invoke Burp extension - 調用一個Burp exxtension(擴展)來處理負載。擴展名必須已註冊入侵者有效載荷處理器。您能夠從已註冊的當前加載的擴展可用的處理器列表中選擇所需的處理器。
複製代碼

是規則的如下類型:

2)Payload Encoding

你能夠配置哪些有效載荷中的字符應該是URL編碼的HTTP請求中的安全傳輸。任何已配置的URL編碼最後應用,任何有效載荷處理規則執行以後。 這是推薦使用此設置進行最終URL編碼,而不是一個有效載荷處理規則,由於能夠用來有效載荷的grep選項來檢查響應爲呼應有效載荷的最終URL編碼應用以前。...

Optins

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

Request Headers

這些設置控制在攻擊Intruder(入侵者)是否更新配置請求頭。請注意,您能夠徹底控制請求頭經過在Payload positions(有效載荷位置)標籤的要求範圍內。這些選項能夠用來更新每一個請求的報頭的方式,一般是有幫助的。

下列選項可用:

Update Content-length header(更新Content-Length頭) - 此選項使Intruder(入侵者)添加或更新的Content-Length頭的每一個請求,與該特定請求的HTTP體的長度正確的值。此功能一般用於該插入可變長度的有效載荷送入模板的HTTP請求的主體的攻擊相當重要。若是未指定正確的值,則目標服務器可能會返回一個錯誤,可能不徹底響應請求,或者可能無限期地等待在請求繼續接收數據。

Set Connection:close(設置鏈接:關閉) - 此選項使Intruder(入侵者)添加或更新鏈接頭的值爲「close(關閉)」 。在某些狀況下(當服務器自己並不返回一個有效的Content-Length或Transfer-Encoding頭) ,這個選項可讓攻擊更快速地執行。

Request Engine

設置控制用於發出HTTP請求中的Intruder(入侵者)攻擊的Engine(引擎)。下列選項可用:

Number of threads(執行進程數) - [專業版]該選項控制併發請求數的攻擊。
Number of retries on network failure(網絡故障的重試次數) - 若是出現鏈接錯誤或其餘網絡問題,Burp會放棄和移動以前重試的請求指定的次數。測試時間歇性網絡故障是常見的,因此最好是在發生故障時重試該請求了好幾回。
Pause before retry(重試前暫停) - 當重試失敗的請求,Burp會等待指定的時間(以毫秒爲單位) ,而後重試失敗如下。若是服務器被宕機,繁忙,或間歇性的問題發生,最好是等待很短的時間,而後重試。
Throttle between requests(請求之間的節流) - Burp能夠在每次請求以前等待一個指定的延遲(以毫秒爲單位) 。此選項頗有用,以免超載應用程序,或者是更隱蔽。或者,您能夠配置一個可變延遲(與給定的初始值和增量) 。這個選項能夠是有用的測試應用程序執行的會話超時時間間隔。
Start time(開始時間) - 此選項容許您配置攻擊當即啓動,或在指定的延遲後,或開始處於暫停狀態。若是攻擊被配置,將在將來的某個時刻以供未來使用被執行,或保存這些替代品多是有用的。
複製代碼

當心使用這些選項可以讓您微調攻擊引擎,這取決於對應用程序性能的影響,並在本身的處理能力和帶寬。若是您發現該攻擊運行緩慢,但應用程序表現良好和你本身的CPU利用率很低,能夠增長線程數,使你的攻擊進行得更快。若是您發現鏈接錯誤發生,該應用程序正在放緩,或者說本身的電腦被鎖定了,你應該減小線程數,也許增長網絡故障和重試之間的間隔重試的次數。

Attack Results

這些設置控制哪些信息被捕獲的攻擊效果。下列選項可用:

Store requests/responses(存儲請求/響應) - 這些選項肯定攻擊是否會保存單個請求和響應的內容。保存請求和響應占用磁盤空間,在你的臨時目錄中,但可讓您在攻擊期間在衆目睽睽這些,若是有必要重複單個請求,並將其發送到其餘Burp工具。
Make unmodified baseline request(未修改的基本請求) - 若是選擇此選項,那麼除了配置的攻擊請求,Burp會發出模板請求設置爲基值,全部有效載荷的位置。此請求將在結果表顯示爲項目# 0 。使用此選項頗有用,提供一個用來比較的攻擊響應基地的響應。
Use denial-of-service mode(使用拒絕服務的模式) - 若是選擇此選項,那麼攻擊會發出請求,如正常,但不會等待處理從服務器收到任何答覆。只要發出的每一個請求, TCP鏈接將被關閉。這個功能能夠被用來執行拒絕服務的應用層對脆弱的應用程序的攻擊,經過重複發送該啓動高負荷任務的服務器上,同時避免經過舉辦開放套接字等待服務器響應鎖定了本地資源的請求。
Store full payloads(保存完整的有效載荷) - 若是選擇此選項,Burp將存儲所有有效載荷值的結果。此選項會佔用額外的內存,但若是你想在運行時執行某些操做,如修改payload grep setting(有效負載值設置),或從新發出請求與修改請求模板可能須要。
複製代碼

Grep-Match

設置可用於包含在響應中指定的表達式標誌結果的項目。對於配置列表中的每一個項目,Burp會添加一個包含一個複選框,指出項目是否被髮如今每一個響應的新成果列。而後,您能夠到組排序此列(經過單擊列標題)匹配的結果相加。

使用此選項能夠是很是強大的,幫助分析大套的成績,並迅速找出有趣的項目。例如,在口令猜想攻擊,掃描短語,如「password incorrect(密碼不正確)」或「login successful(登陸成功)」,能夠找到成功登陸;在測試SQL注入漏洞,掃描含有「 ODBC 」 , 「error(錯誤)」等消息能夠識別易受攻擊的參數。

除了表達式匹配的列表,下列選項可用:

Match(匹配類型) - 指定的表達式是不是簡單的字符串或regular expressions(正則表達式)。
Case sensitive match(區分大小寫的匹配) - 指定檢查表達式是否應區分大小寫。
Exclude HTTP headers(不包括HTTP頭) - 指定的HTTP響應頭是否應被排除在檢查。
複製代碼

Grep-Extrack

能夠被用來Extrack(提取)從反應有用的信息進入攻擊結果的表。對於配置列表中的每一個項目,Burp會添加一個包含提取該項目的文本的新成果列。而後,您能夠排序此列(經過單擊列標題)命令所提取的數據。例如我要匹配

Image123

information_schema這個表。則能夠這樣寫,都是須要匹配惟一的那種,也能夠使用正則,前提是你會寫正則。在烏雲社區有人提起過當時怎麼匹配手機號,就能夠從這裏提取。

Image125

Grep-Payloads

設置可用於含有所提交的有效載荷的反射標誌的結果項。若是啓用該選項,Burp會添加一個包含一個複選框,指示當前負載的值是否被髮如今每一個響應的新成果列。 (若是使用一個以上的有效載荷,單獨的列將每一個有效載荷集加。 )

此功能能夠在檢測跨站點腳本和其餘應對注入漏洞,它能夠出如今用戶輸入動態地插入到應用程序的響應是有用的。

下列選項可用:

Case sensitive match(區分大小寫的匹配) - 指定檢查payload(負載)是否應區分大小寫。
Exclude HTTP headers(不包括HTTP頭) - 這指定的HTTP響應頭是否應被排除在檢查。
Match against pre-URL-encoded payloads(對預URL編碼的有效載荷匹配) - 這是正常的配置Inturder(入侵者)請求中URL編碼的有效載荷。然而,這些一般是由應用程序解碼,迴盪在他們的原始形式。您能夠使用此選項,以用於有效載荷Burp檢查反應在他們的預編碼形式。
複製代碼

Redirections

控制Burp在進行攻擊時如何處理重定向。它每每是要遵循重定向來實現你的攻擊目標。例如,在一個口令猜想攻擊,每一次嘗試的結果可能只能經過下面的重定向顯示。模糊測試的時候,相關的反饋可能只出如今最初的重定向響應後返回的錯誤消息。

下列選項可用: Follow redirections(跟隨重定向) - 控制重定向都遵循的目標。下列選項可用:

1)Never(歷來沒有) - 入侵者不會遵循任何重定向。
2)On-site only(現場惟一的) - 入侵者只會跟隨重定向到同一個網頁「網站」 ,即便用相同的主機,端口和協議的是在原始請求使用的URL 。
3)In-scope only(調查範圍內的惟一) - Intruder只會跟隨重定向到該套件範圍的目標範圍以內的URL 。
4)Always(老是) - Intruder將遵循重定向到任何任何URL 。您應使用此選項時應謹慎 - 偶爾, Web應用程序在中繼重定向到第三方的請求參數,並按照重定向你可能會不當心攻擊。
複製代碼

Process cookies in redirections(過程當中的Cookie重定向) - 若是選擇此選項,而後在重定向響應設置任何cookies將被當重定向目標以後從新提交。例如,若是你正在嘗試暴力破解登陸的挑戰就多是必要的,它老是返回一個重定向到一個頁面顯示登陸的結果,和一個新的會話響應每一個登陸嘗試建立。

Burp會跟進到10鏈重定向,若是必要的。在結果表中的列將顯示重定向是否其次爲每一個單獨的結果,以及完整的請求和響應中的重定向鏈存儲與每一個結果的項目。重定向的類型Burp會處理( 3xx的狀態碼,刷新頭,等)配置在一套全重定向選項。

注意重定向: 在某些狀況下,可能須要下面的重定向時只使用一個單線程的攻擊。出現這種狀況時,應用程序存儲會話中的初始請求的結果,並提供重定向響應時檢索此。

自動下重定向有時可能會形成問題 - 例如,若是應用程序響應一個重定向到註銷頁面的一些惡意的請求,那麼下面的重定向可能會致使您的會話被終止時,它本來不會這麼作。

Attacks

當你配置完你的攻擊設置時,你須要launch the attacks(發起攻擊),analyze the results(分析結果),有時修改攻擊配置,與您的測試工做流程連接,或進行其餘操做。

Launching an Attack

攻擊能夠經過兩種方式啓動:

1)您能夠配置Target(目標),Positions(位置),Payloads(有效載荷)和Options(選項卡)的攻擊設置,而後選擇從Intruder(入侵者)菜單「Start attack(開始攻擊)」。 
2)您能夠經過從Intruder menu(入侵者菜單)中選擇「previously saved attack(打開保存的攻擊)」打開之前保存的攻擊。 
複製代碼

在單獨的窗口中每次攻擊會打開。該窗口顯示攻擊爲它們生成的結果,使您可以修改攻擊配置實時,並與您的測試工做流程連接,或進行其餘操做。

Result Tab

在結果選項卡包含在攻擊發出的每一個請求的所有細節。你能夠過濾並標註此信息來幫助分析它,並使用它來驅動您的測試工做流程。

1)Results Table

Results Table顯示已在attack中全部的請求和響應的詳細信息。根據不一樣的攻擊配置,表可能包含如下幾列,其中一些是默認隱藏的,能夠使用Columns菜單 中取消隱藏:

Image127

Image129

request 請求數 Position 有效載荷位置編號 Payload 有效載荷 Status http狀態 Error 請求錯誤 Timeout 超時 Length 字節數 Comment 註釋

2)Display Filter

結果選項卡,能夠用來隱藏某些內容從視圖中,以使其更易於分析和對你感興趣的工做內容顯示過濾在結果表中。點擊過濾器欄打開要編輯的過濾器選項。該過濾器能夠基於如下屬性進行配置:

Image131

Search term(檢索詞) - [專業版]您能夠篩選反應是否不包含指定的搜索詞。您能夠設定搜索詞是不是一個文字字符串或正則表達式,以及是否區分大小寫。若是您選擇了「negative search(消極搜索)」選項,而後不匹配的搜索詞惟一的項目將被顯示。
Status code(狀態代碼) - 您能夠配置是否要顯示或隱藏各類HTTP狀態碼響應。
Annotation(註釋) - 您能夠設定是否顯示使用用戶提供的評論或只重點項目。在結果表中顯示的內容其實是一個視圖到基礎數據庫,並顯示過濾器控制什麼是包含在該視圖。若是設置一個過濾器,隱藏一些項目,這些都沒有被刪除,只是隱藏起來,若是你取消設置相關的過濾器將再次出現。這意味着您能夠使用篩選器來幫助您系統地研究一個大的結果集(例如,從模糊測試包含許多參數的要求)來理解各類不一樣的有趣的響應出現。
複製代碼

Attack configuration Tabs

在結果選項卡中,攻擊窗口包含每一個從它目前的攻擊是基於主界面的配置選項卡中的克隆。這使您可以查看和修改攻擊配置,同時進攻正在進行中。有關進一步詳情,請參閱各配置選項卡的幫助:目標職位有效載荷選項當修改一個跑動進攻的配置,如下幾點值得關注:攻擊結構的某些部分是基本的攻擊(如攻擊類型和有效載荷類型)的結構,而且攻擊已經開始以後不能改變。改變配置的某些部分攻擊正在運行時,可能會有意想不到的效果。

例如,若是您使用的是數量的有效載荷和編輯字段中,而後更改纔會生效,由於每一個鍵被按下;若是你最初從刪除數字字段中,那麼攻擊可能會忽然完成,由於要字段如今包含一個較小的數字。咱們強烈建議您暫停修改它們的配置運行前的攻擊。

Result Menus

結果視圖包含幾個菜單命令與控制的攻擊,並進行其餘操做。這些將在下面說明。

Image133

Image135

1)Attack Menu(攻擊菜單)

包含的命令pause(暫停),resume(繼續)或repeat(重複)攻擊。

2)Save Menu(保存菜單)

attack - 這是用來保存當前攻擊的副本,包括結果。保存的文件能夠使用從主Burp的UI Intruder菜單中的「打開保存的攻擊」選項來從新加載。
Results table - 這是用於對結果表保存爲一個文本文件。你能夠選擇保存的全部行,或僅選定的行。您也能夠選擇要包括的列,列分隔符。此功能是有用的導出結果到電子表格中,以便進一步分析,或用於保存單個列(如使用提取的grep函數挖掘數據),以用做用於隨後的攻擊或其它工具的輸入文件。
Server responses - 這是用於保存收到的全部請求的所有應答。這些既能夠被保存在單獨的文件中(順序編號)或串行級聯的序列轉換成一個單一的文件。
Attack configuration - 這是用來保存當前正在執行攻擊的配置(而不是結果)。您能夠從新使用從主Burp的UI Intruder菜單中的「加載配置攻擊」選項,攻擊配置。
複製代碼

3)Columns Menu(列菜單)

這使您能夠選擇哪些可用的列是可見的攻擊結果表。

相關文章
相關標籤/搜索