1. 程式人生 > >Web 安全工具篇:Burp Suite 使用指南

Web 安全工具篇:Burp Suite 使用指南

網頁 抓取 burpsuite 們的 -type fork 用戶 爬網 版本號

真的是一點都不過分,了解詳情請繼續往下讀。

Burp Suite 介紹

Burp Suite 是用於攻擊 web 應用程序的集成平臺。它包含了許多工具,並為這些工具設計了許多接口,以促進加快攻擊應用程序的過程。

所有的工具都共享一個能處理並顯示 HTTP 消息,持久性,認證,代理,日誌,警報的一個強大的可擴展的框架。

他的官方網址是 https://portswigger.net/burp/。

Burp Suite(以下簡稱 Burp),該公司發行了兩個版本,一個是 Community Edition 社區版,另一個則是 Professional 專業版,所支持的功能也不大相同。

專業版提供了 Web 漏洞掃描功能和一些高級工具,而社區版則只是提供基本的手動工具,但 Pro 版的價格是昂貴的,需要用戶每年 $ 349.00 美金。

筆者認為這個工具好就好在能夠共享一個 HTTP 消息,能夠在各種模塊之間交換信息。

如果上天只能讓我選擇一個 Web 掃描器,那麽我會選擇 Burp,因為他不僅僅只起一個爬網的作用。

Burp Suite 安裝:安裝 Burp 很簡單,在 Kali Linux 裏已經集成了社區版的 Burp,故此不在多敘述。

Windows 的安裝環境,需要各位讀者先安裝 “Java” 環境後才能打開。

下載好 Burp 之後,裏面有兩個文件,他們分別是 “BurpLoader.jar” 和 “burpsuite_pro_v1.7.11.jar”,點擊 “BurpLoader.jar” 即可打開軟件,如下圖所示。

打開軟件後會出現如圖,現 Burp 官方版本號為 “v1.7.26”,筆者手裏的是 Pro 版本。

Burp 模塊介紹

- Target

Target 作為 Burp 的第一個模塊,作用是一個站點地圖,會在左側出現所有通過代理服務器的網頁都會在此顯示。

當訪問了https://www.csdn.net/之後,“Target” 功能模塊已經將所有訪問記錄給爬取了下來,並顯示在左側,如圖所示。

當然,如果想使用 Burp 進行測試,首先要修改一下本機瀏覽器的代理。
下面以火狐為例來講解 Burp 的基本配置

首先需要在火狐的設置裏,找到代理設置,設置為和 Burp 軟件一樣的 IP,即可。

需要註意的就是端口號需要和這上面設置的端口號一致,都是 8080

Proxy

在 Burp 裏,“Proxy” 模塊是一個至關重要的模塊,他的布局是這樣的。

Proxy 模塊裏面的 intercept 模塊的作用是截斷 HTTP/HTTPS 之間的請求流量,如果第三個按鈕 “intercept is off”,這裏是未開啟攔截的意識,如果開啟了則會變為 “intercept is on”

現在我們攔截下 CSDN 登陸頁面的 HTTPS 流量。

在我輸入了賬號密碼之後,點擊了開啟攔截,狀態變為 “intercept is on”,此時,通過這個 HTTPS 請求下來的流量都會被攔截不發送並且顯示在你的 “intercept” 模塊下,如圖所示。

去掉多余的參數,在 POST 登陸的實際請求只有這一句

&username=rNma0y&password=147258369&rememberMe=true&lt=LT-1269028-Xs5rYscId3GAlIBVB6NgisRx6zJCo5&execution=e2s1&_eventId=submit

當攔截開啟的時候,整個網頁他是無法請求的,因為發送的所有請求都被攔截下來了,如果你想訪問下個網頁,選擇模塊裏的第一個按鈕 “Forward”,這個按鈕意味著放行,令他通過請求,發送此數據包。

Drop

Drop 則是丟掉這個包,重新抓取數據。

Action

Action 的功能如下,可以把請求發送到各個模塊進行交互。

HTTP history

這個模塊的功能則是這個就是截取包的歷史記錄,把先前截取的數據包歷史停留在這裏。

Scan

Scan 這個功能模塊的作用則是掃描,一個 Web 應用程序的掃描器,是 Pro 版獨有的,社區版則不帶有此功能。

使用方法是在抓包後右鍵菜單,出現 “Do a active scan”,點擊後則會發送到 Burp 的 Scan 模塊下,最重要的指示則是會高亮黃色。

Intruder

Intruder 模塊則是整個 Burp 工具裏最有用的一塊,在暴力破解這方面經常會上手,可以通過增加一個字典來實現自動化的攻擊。

在 Intruder 模塊下的 Position 下可以對 HTTP 請求進行操作,可以把 HTTP 請求裏的某個單獨的參數設置為變量,來進行替換,比如上圖所示,標黃的部分即為變量參數。

Attack type

Attack type 裏的參數有四種,分別是如下圖所示:

Sniper

Sniper,就是將你添加的字典裏的數值一次賦給我們的多個參數去組合嘗試,比如我們設置了有三個參數,分別是 a,b,c,字典裏面有五個值(1,2,3,4,5),那麽該模式下 Burp 會把 a 去替換成字典裏的數值,b、c 保持原值,然後 b 去替換字典裏的數值,a、c 保持原值,c 則以此類推。

Battering ram

Battering ram,則是同時將 abc 賦值都用添加的字典去替換嘗試。

Pitchfork

Pitchfork 則是需要用戶導入三個字典,後依次替換變量。

Cluster bomb

Cluster bomb 也需要用戶導入三個字典,但是他會把每個字典裏的數值都去給變量測試替換一遍,比如 a 變量,字典一測試了字典二和三也會跟上去替換。

Payload

Payload,作用是導入字典的作用:

Simple list

在這個模塊下的 Simple list 定義則是最基礎的,適合小量數據。

Brute forcer

Brute forcer 則是單純的暴力破解,選擇這個模塊後他會嘗試字典的所有內容。

Options

Options 是 Intruder 最後一個模塊,他的功能是線程等功能的設置。

Number of chreads,線程量。

Number of retries on network failure ,則是網絡故障的重試次數,三次則是重試三次連接。

Pause before retry,重試失敗的請求時,Burp 將在重試之前等待失敗後的指定時間(以毫秒為單位)。如果服務器被流量淹沒,或發生間歇性問題,最好在重試之前等待一段時間,默認值為 2000 毫秒。

Repeater

Repeater 即網頁請求頭,一般使用這個功能也是通過 Proxy 抓包然後 Send 發送過來的。

主要就是修改請求的各項參數等等然後點擊左上角的 go 發送出去,然後在右邊接受到請求,同時在右側顯示請求和狀態,多作用於的 HTTP 請求的模糊測試。

HTTP/1.1 200 OK Date: Mon, 08 Jan 2018 08:18:06 GMT Content-Type: application/json; charset=utf-8 Content-Length: 98 Connection: close X-DNS-Prefetch-Control: off X-Frame-Options: SAMEORIGIN X-Download-Options: noopen X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block ETag: W/"62-K/Yyr6AK6b7uRdHNc5GXLA" Vary: Accept-Encoding {"code":0,"message":"book configration updated successfully.","bookId":"5a521ce5"}

Decoder

Decoder 模塊是一個方便的編碼器,故此不再多敘述。

Comparer

Comparer 模塊是一個文件比較的功能,也非常簡單,請讀者自行了解。

到這裏就已經結束了 Burp 大部分功能,作用於滲透測試和安全評估中會經常使用的功能簡介,接下來我們進入一次實戰練習。
---------------------
作者:GitChat技術雜談
來源:CSDN
原文:https://blog.csdn.net/gitchat/article/details/79168613
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

Web 安全工具篇:Burp Suite 使用指南