BurpSuite gitbook教程:javascript
https://legacy.gitbook.com/book/t0data/burpsuite/detailshtml
原文地址:https://www.cnblogs.com/zqjt2/p/5502551.htmljava
Burp Suite是Web應用程序測試的最佳工具之一,其多種功能能夠幫咱們執行各類任務.請求的攔截和修改,掃描web應用程序漏洞,以暴力破解登錄表單,執行會話令牌等多種的隨機性檢查。本文將作一個Burp Suite徹底正的演練,主要討論它的如下特色.
1.代理–Burp Suite帶有一個代理,經過默認端口8080上運行,使用這個代理,咱們能夠截獲並修改從客戶端到web應用程序的數據包.git
2.Spider(蜘蛛)–Burp Suite的蜘蛛功能是用來抓取Web應用程序的連接和內容等,它會自動提交登錄表單(經過用戶自定義輸入)的狀況下.Burp Suite的蜘蛛能夠爬行掃描出網站上全部的連接,經過對這些連接的詳細掃描來發現Web應用程序的漏洞 。web
3.Scanner(掃描器)–它是用來掃描Web應用程序漏洞的.在測試的過程當中可能會出現一些誤報。重要的是要記住,自動掃描器掃描的結果不可能徹底100%準確.正則表達式
4.Intruder(入侵)–此功能呢可用語多種用途,如利用漏洞,Web應用程序模糊測試,進行暴力猜解等.windows
5.Repeater(中繼器)–此功能用於根據不一樣的狀況修改和發送相同的請求次數並分析.瀏覽器
6.Sequencer–此功能主要用來檢查Web應用程序提供的會話令牌的隨機性.並執行各類測試.安全
7.Decoder(解碼)–此功能可用於解碼數據找回原來的數據形式,或者進行編碼和加密數據.網絡
8.Comparer–此功能用來執行任意的兩個請求,響應或任何其它形式的數據之間的比較.
1)Proxy(代理)
代理功能使咱們可以截獲並修改請求.爲了攔截請求,並對其進行操做,咱們必須經過Burp Suite配置咱們的瀏覽器.
一旦在瀏覽器上設置好以後,就打開Burp Suite,去Proxy項進行Intercept(截斷),須要確保intercept is on.
打開alerts標籤,能夠看到代理正運行在8080端口.咱們能夠在Proxy–>options下來修改這個配置.
打開Proxy下的options標籤
在這裏咱們能夠編輯代理正在監聽的端口,甚至添加一個新的代理監聽.Burp也有向SSL保護網站提交證書的選項.默認狀況下,Burp建立一個自簽名的證書以後當即安裝.」generate CA-signed per-host certificates」選項選中以後Burp的證書功能將生成一個咱們可以連接的證書籤署的特定主機.在這裏咱們關心的惟一事情是,當一個用戶連接到一個SSL保護的網站時,能後減小網站警告提示的次數.
若是咱們不選中」listen on loopback interface only」選項,意味着Burp Proxy能夠做爲一個網絡上其它系統的代理。這意味着在同一網絡中的任何計算機均可以使用Burp Proxy功能成爲代理,並中繼經過它的流量.
「support invisible proxying for non-proxy-aware client」選項是用於客戶端不知道他們使用的是代理的狀況下.這意味着代理設置不是設置在瀏覽器,有時候設置在hosts文件中.在這種狀況下,和將代理選項設置在瀏覽器自己所不一樣的是Burp須要知道它是從一個非代理客戶端接收流量的.」redirect to host」和」redirect to port」選項將客戶端重定向到咱們在該選項後設置的主機和端口。
一樣,咱們能夠攔截請求,並根據咱們指定的規則返回響應.
這裏有個選項用來修改從響應中接收到的html網頁。咱們能夠取消隱藏的表單字段,刪除javascript等。還有一個選項用自定義字符串替換掉尋找到的特定的模式.咱們須要用指定正則表達式。Burp將解析請求或者響應以指望可以尋找到這種模式,將會用自定義的字符串來替換它.
2)Spider(抓取)
Burp Spider用來映射Web應用程序.它會自動抓去Web應用程序的連接,提交它發現的全部登錄表單,從而詳細的分析整個應用程序.這些連接會傳遞給Burp Scanner,進行詳細的掃描.在這種狀況下,咱們將使用上DVWA(Damn Vulnerable Web Application).只是須要DVMA使用你的瀏覽器,確保Burp Suite上的inerrcept is on,而且獲得Brup截取的請求,右鍵單擊攔截的請求,選擇」Send to Spider」發送給蜘蛛.
接下來會彈出一個警告彈窗讓咱們」add item to scope(添加項目到做用域)」.點擊」Yes」.一個範圍將在咱們運行的測試目標上定義好.
咱們可以在site map–>target標籤看到一個url已經添加進做用域.咱們也能看到一些其它的目標已經在目標列表中添加好了.Burp會自動使用代理瀏覽咱們定義好的目標網頁.咱們可使用單擊右鍵–>」add item to scope(添加項目到做用域)」添加任何項目到咱們的做用域.
進入Scope標籤,咱們可以看到DVWA應用已經添加到做用域.
接下來咱們進入Spider標籤,點擊」options(選項)」,咱們能夠設置各類選項當運行Burp檢測應用程序的時候.我沒有可讓Burp檢查robotx.txt文件(check for the robots.txt),它會嘗試抓去網站管理員不容許搜索引擎索引的目錄.另一個重要的選項是」passively spider as you browse(被動蜘蛛瀏覽)」。基本上Burp Spider能夠以被動和主動模式運行,選擇這個就要求Burp Spider保持新的內容和連接進行掃描,由於咱們瀏覽應用程序的時候使用了Burp proxy。
另一個重要的選項是」application login(應用程序登錄)」.一旦Burp Spider提交一個登錄表單的時候就開始爬行(抓取).它能夠自動提交咱們提供給它的證書.咱們一樣能夠設置admin/password憑證,設置好以後,他們會作爲DVWA中的憑證.所以Burp Spider能夠自動提交那些信息憑證,而且保持爬行抓取的狀態但願可以得到更多的新的信息.你也能夠在thread(線程)項來修改線程數.
須要開始爬行抓去Web應用程序,只須要右鍵點擊目標展開目標.而後在展開的dvwa項上單擊鼠標右鍵選擇」Spider this brach」
這樣就會啓動Burp Spider,在Spider control標籤下咱們會看到正在作出的請求,咱們也能夠爲Burp Spider自定義一個範圍.
一旦運行完成以後,咱們在dvwa分支上會看到不少新的URL,這些URL爲咱們提供了不少有關Web信用程序的信息.而後咱們就能夠發送這些連接給Burp Scanner來進行漏洞掃描.Burp Scanner只有在專業版上纔有這個功能.
3)Intruder(入侵)
Burp Intruder能夠用於利用漏洞,模糊測試,暴力猜解等。在這種狀況下咱們將使用Burp Suite的Intruder對DVWA進行暴力猜解攻擊.瀏覽到DVWA,單擊」Burp Force(暴力猜解)」,隨便輸入username和password,確保Burp Suite上的」intercept is on(監聽是打開的)」.而後點擊登錄.
登錄請求將被Burp Suite監聽攔截到,而後右鍵單擊」send to intruder(發送給入侵者功能)」
以上的操做會將請求信息發送給intruder功能.進入intruder標籤,配置Burp Suite來發起暴力猜解的攻擊.在target標籤下能夠看到已經設置好了要請求攻擊的目標
進入positions(選項)標籤,咱們能夠看到以前發送給Intruder的請求.一些重要的信息用其它顏色顯示.基本上是由Burp Suite進行猜解,是爲了弄明白暴力猜解的這些請求中什麼是發生改變的. 這種狀況下只有用戶和密碼是不停的發生改變.咱們須要相應的配置Burp.
單擊右邊的」clear」按鈕,將會刪除全部用不一樣顏色演示的重要的信息.接下來咱們須要配置Burp在此次攻擊中只把用戶名和密碼作爲參數.選中本次請求中的username(本例中用戶名是指」infosecinstiture」)而後單擊」Add(添加)」.一樣的將本次請求中的password也添加進去.這樣操做以後,用戶名和密碼將會成爲第一個和第二個參數.一旦你操做完成,輸出的樣子應該以下圖所示:
接下來咱們須要設置此次攻擊的攻擊類型,默認狀況下的攻擊類型是」Sniper(狙擊手)」,在本例中,咱們將使用」Cluster Bomb(集束炸彈)」的攻擊類型.有四種攻擊類型,分別是singer,battering ram,pitchfork,cluster bomb.下圖中咱們看到的咱們的攻擊類型是」Cluster Bomb’
進入payload標籤,確保」payload set」的值是1,點擊」load(加載)」加載一個包含用戶名的文件 。本例中咱們使用一個很小的文件來進行演示.加載以後用戶名文件中的用戶名會以下圖所示
一樣設置」payload set」的值爲2,點擊」load」加載一個密碼字典文件。
進入」options」標籤,確保results下的」store requests」和」store responses」已經選擇.
點擊左上角的」Intruder」開始攻擊,會看到彈出一個windows窗口,其中有咱們製做好的全部請求。
咱們如何肯定哪個登錄請求是成功的呢?經過一個成功的請求相比不成功的,是有一個不一樣的響應狀態.在這種狀況下,咱們看到的用戶名」admin」和密碼」password」的響應長度相比其它的請求,有所不一樣.
根據不一樣的響應請求,點擊」request」.若是點擊」response」選項,咱們看到文字」welcome the password protected area admin」出如今響應中,這意味着此次請求中使用的username/password是正確的.
Burp的入侵功能是Burp Suite最強大的功能之一.咱們要仔細的學習它的使用.
4)Repeater(中繼轉發)
經過Burp Repeater功能,咱們能夠手動修改一個請求,而且發送出去,來分析返回的響應.咱們須要從不一樣的地方發送請求給Burp Repeater,好比入侵者,代理等.發送一個請求給Repeater,只須要單擊右鍵」send to Repeater」.
點開Repeater標籤,會看到request,也能夠看到名爲1,2,3的3個標籤.
咱們也能夠看到requestparams,header,hex和raw格式的請求,發送請求以前,咱們能夠修改其中的任何一個.
只修改Params請求下的username=admin,password=password,點擊go,這樣就會發送這個請求.
咱們能夠分析response部分返回的響應.
還有幾部分功能沒有翻譯出來,因爲英文水平以及工做經驗欠缺,不少專業詞彙可能翻譯不是很準確,貼上原文URL,能夠對照閱讀.
本文由阿德馬翻譯自國外網站,請尊重勞動成果,轉載註明出處
原文地址:http://resources.infosecinstitute.com/burp-suite-walkthrough/