Burpsuite工具的使用
目錄
Burpsuite
Proxy代理模塊
Repeater模塊(改包,重放)
Intruder模塊(爆破)
Target模塊
position模塊
Payloads模塊
Options模塊
一處爆破點?
多處爆破點
Spider模塊(爬取網站目錄)
只攔截特定網站的數據包
Scanner掃描模塊
主動掃描
被動掃描
Sequencer模塊的使用
Comparer模塊的使用
BurpSuite中好用的第三方插件
Burpsuite
BurpSuite 是用于攻擊web 應用程序的集成平臺,包含了許多工具。BurpSuite為這些工具設計了許多接口,以加快攻擊應用程序的過程。所有工具都共享一個請求,并能處理對應的HTTP 消息、持久性、認證、代理、日志、警報。Brupsuite基于java開發,所以你的電腦上必須得安裝有JDK。
Proxy代理模塊
Burpsuite默認使用8080端口作為代理,當然,你也可以自己修改端口號。
Proxy——>Options,然后下面可以自己修改代理的端口號,默認是8080
這里 Proxy 的 Intercept 這里顯示?Intercept?is?on?表示攔截包開啟,所有代理的包都必須先經過burpsuite放行才可以走。
如果這里我們選擇?intercept?is?off?的話,那么所有的包都會經過burpsuite,可以在HTTP?history看所有經過的包,但是burpsuite不會對經過的包進行攔截。
關于瀏覽器端怎么設置代理我就不講了,推薦一款Firefox瀏覽器中好用的代理插件 FoxyProxy Standard
當我們攔截到數據包后,如圖,這里有4個選項
- Raw:抓取的請求數據包
- Params:請求數據包的參數信息,包括GET/POST請求的參數,cookie參數
- Headers:請求數據包的頭部信息
- Hex:Raw中信息的二進制內容
Repeater模塊(改包,重放)
我們抓一個包來看看,抓取包之后,右鍵 Send?to Repeater?發送到重發模塊,
在 Repeater模塊,我們可以隨意修改數據包。修改完后,點擊?go ,就可以發包了。右邊就會顯示?服務器回的包。
?
Intruder模塊(爆破)
Burp Intruder爆破主要由四個模塊組成:
1:Target 用于配置目標服務器進行攻擊的詳細信息。
2:Positions ?設置Payloads的插入點以及攻擊類型(攻擊模式)。
3:Payloads ?設置payload,配置字典
4:Options ??此選項卡包含了request headers,request engine,attack results ,grep match,grep_extrack,grep payloads和redirections。你可以發動攻擊之前,在主要Intruder的UI上編輯這些選項,大部分設置也可以在攻擊時對已在運行的窗口進行修改
Target模塊
Target模塊設置攻擊的信息
position模塊
position模塊配置攻擊類型和攻擊點
Attack-type攻擊類型,這里有四種可以選擇。
- Sniper:對變量依次進行破解,如果有多個攻擊點,則多個攻擊點依次進行。只能用一份密碼字典
- Battering?ram:對變量同時進行破解,如果有多個攻擊點,多個標記點同時進行。只能用一份密碼字典
- Pitchfork:每一個變量標記對應一個字典,取每個字典的對應項。最少設置2處攻擊點,最多設置20處攻擊點。每個攻擊點設置一個密碼字典。
- Cluster?bomb:每個變量對應一個字典,并且進行交集破解,嘗試各種組合。最少設置2處攻擊點,最多設置20處攻擊點。適用于用戶名+密碼的組合。
假如現在有兩份密碼字典,每份密碼字典里都有5個爆破字符的話。設置兩處爆破點,Sniper會嘗試10次,Battering?ram會嘗試5次,Pitchfork會嘗試5次,Cluster?bomb會嘗試25次。
Payloads模塊
這個模式是用來配置攻擊載荷payload
Payload Sets:?這里設置我們payload的數量類型。你可以定義一個或多個有效載荷,有效載荷的數量取決于攻擊類型定義,對于未知標簽中定義的攻擊類型,可以為每個有效載荷提供有效載荷類型,并且每種有效載荷類型可以以不同方式定制
- Simple?list:簡單字典
- Runtime?file:運行文件
- Custom?iterator:自定義迭代器(可以在字典前后加任意字符)
- Character?substitution:字符替換
- Case?modification:
- Recursive grep:
- illegal?unicode:非法字符
- Character?blocks:字符塊
- Numbers:數字組合
- Dates:日期組合
- Brute?force:暴力破解
- Null?payloads:空payload
- Username?generator:用戶名生成
- copy other payload:復制其他payload
?
Payload Options[Simple list]:?該選項會根據Payload Sets的設置而改變
Payload Processing:?對Payload進行編碼、加密、截取等操作
如下,是我們對payload進行base64編碼
Payload Encoding:burpsuite還會默認自動對我們payload中的一些字符進行URL編碼,我們可以勾選也可以取消
Options模塊
該模塊是用來對請求頭和請求過程以及請求結果的一些設置
然后我們點擊 Options?選項卡,該選項卡包含了request headers,request engine,attack results ,grep match,grep_extrack,grep payloads和redirections。你可以在發動攻擊之前,在主要Intruder的UI上編輯這些選項,大部分設置也可以在攻擊時對已在運行的窗口進行修改。
Request Headers: 這些設置控制是否在Intruder是否更新配置請求頭。
- 如果選中Update Content-Length header,BurpSuite 會使用每個請求的 HTTP 主體長度的正確值,添加或更新這個請求里 HTTP 消息頭的內容長度。這個功能對一些需要把可變長度的有效載荷插入到 HTTP 請求模板主體的攻擊是很有必要的。這個 HTTP 規范和大多數 web 服務器一樣,需要使用消息頭內容長度來指定 HTTP 主體長度的正確值。如果沒有指定正確值,目標服務器會返回一個錯誤,也可能返回一個未完成的請求,也可能無限期地等待接收請求里的進一步數據。
- 如果選中Set Connection: close框,則 BurpSuite 會添加或更新 HTTP 消息頭的連接來請求在每個請求后已關閉的連接。在多數情況下,這個選項會讓攻擊執行得更快。
Request Engine:設置發送請求的線程、超時重試等
Attack Results: 設置攻擊結果的顯示
Grep - Match: 在響應中找出存在指定的內容的一項
Grep - Extract: 通過正則提取返回信息中的內容
Grep - Payloads:? 這些設置可以用于包含已提交的有效負載的反射的標志結果項目。如果啟用了此選項,BurpSuite會添加包含一個復選框指示當前負載的值在每個響應發現新的結果列
Redirections: 重定向響應,控制Burp在進行攻擊時如何處理重定向
一處爆破點?
第一步,我們將抓取到的數據包發送到Intruder模塊。右鍵->Send to Intruder
?在 Intruder 模塊下的 Positions,burpsuite會自動把可能是爆破的地方進行標記。我們可以點擊右邊的clear清除,然后選擇我們自己要爆破的地方,點擊 add
?
這里,我們的Attack-type選擇默認的Sniper,我們這里只爆破 passwd 密碼字段
然后我們點擊 Payloads,去設置我們的字典密碼。
去Grep-match,這是對結果進行匹配的。也就是說對數據包返回的結果進行匹配,匹配規則我們自己設置。我們把Exclude HTTP?headers?這里的勾選去掉,因為我們是根據返回頭里面是否包含 index.php?來判斷是否登錄成功的!這就要我們分析登錄成功和登錄失敗返回數據中哪里不同來判斷是否登錄成功
Start?attack?開始攻擊
這里對匹配到我們規則的項自動勾選上了,可得知,這就是我們正確的密碼。
多處爆破點
Attack-type攻擊類型,這里我們選擇 Cluster?bomb ,這個模式下可以設置多處爆破點。這里我們設置username和password兩處爆破點
然后去設置我們的payload了,因為爆破點有兩處,所以,兩處都得設置payload
對第一處爆破點設置payload
對第二處爆破點設置payload
設置對結果進行 Grep-match ,和上面一樣
Attack攻擊,查看結果。
Spider模塊(爬取網站目錄)
該模塊是根據網頁中的鏈接進行爬取目錄樹結構,而不是利用爆破的方法進行爆破
開啟我們的BurpSuite,攔截網站數據包,右鍵,Send to Spider
接下來會彈出一個警告彈窗提示:這個Item不在當前的作用域中,是否將這個網站添加到作用域中,我們點擊 Yes。
然后我們切換到 Spider 窗口,就會看到BurpSuite已經在爬目錄了。
并且我們的scope中也有該網站了
爬取到有些網頁需要登錄,會彈出頁面叫你填表單。可以填好提交,也可以忽視它
Spider 標簽的 Options 標簽是對爬蟲的設置。我這里取消勾選了 Check robots.txt選項,這樣BurpSuite就會爬取robots.txt不允許爬取的目錄了。還有一個選項是”passively spider as you browse(被動蜘蛛瀏覽)”,Burp Spider可以以被動和主動模式運行。
還有一個選項是Application Login,我們可以在這里設置默認的賬號密碼。如果bp爬取到需要登錄的網頁,就會填入我們輸入的賬號密碼。
還有就是爬蟲的線程數,我們可以在Spider Engine這里設置
最后,如果Spider的Contro窗口,如果請求隊列是0,并且爬取了一段時間,說明已經爬取完成
點擊Target——>Site map,可以看到爬取網站的目錄結構
只攔截特定網站的數據包
切換到proxy頁面的options的 Intercept Client Requests
然后點擊Add,比如我們只想攔截baidu.com域名下的所有子域名的數據包,我們可以如下。
最后多了下面這一行,以后我們的burpsuite的攔截模式開啟了,也只會攔截baidu.com域名下的數據包
Scanner掃描模塊
Scanner模塊主要用于自動檢測Web系統的各種漏洞。Scanner掃描模塊和其他掃描器不同的是,Scanner掃描是對BurpSuite當前歷史記錄中抓到的數據包進行掃描。也就是他不會進行自動化的對網站先爬蟲然后掃描。所以進行Scanner掃描前,我們先將代理的Intercept模塊設置為off,然后手動瀏覽網站的所有頁面,在進行掃描。
主動掃描
當使用主動掃描時,BurpSuite會向應用發送新的請求并通過Pyaload驗證漏洞,這種模型下的操作會產生大量的請求和應答數據。在生產情況下不建議使用主動掃描。
點擊Target——>Site map,右鍵我們需要檢測的網站——>Actively scan this host
此時彈出過濾的設置,保持默認選項,Next——>Ok。即可掃描該網站。
也可以在Proxy——>HTTP History,右鍵需要檢測的網站——>Do an active scan。
掃描結果可以在Scanner——>Issue activity下查看。
Issue activity標簽
Scan queue? 掃描隊列,這里將顯示掃描隊列的狀態 進度 結果等。
Live scanning
實時掃描可讓您決定哪些內容通過使用瀏覽器的目標應用,通過BurpProxy服務器進行掃描。您可以實時主動掃描設定live active scanning(積極掃描)和live passive(被動掃描)兩種掃描模式。
Live Active Scanning:積極掃描。當瀏覽時自動發送漏洞利用代碼。
Issue Definitions?漏洞列表,列出了burp可以掃描到的漏洞詳情
當掃描完成后,我們可以在Target標簽的Site?map下右鍵該網站,Issue——>Report issues for this host,來導出掃描報告
被動掃描
當使用被動掃描時,BurpSuite不會重新發送新的請求,只是對已經存在的請求和應答進行分析。
被動掃描的使用和主動掃描一樣。
更多的關于Scanner模塊的使用:BurpSuite系列(四)----Scanner模塊(漏洞掃描)
Sequencer模塊的使用
該模塊主要用來檢查Web應用程序提供的會話令牌的隨機性.并執行各種測試.
傳送門:BurpSuite系列(七)----Sequencer模塊(定序器)
Comparer模塊的使用
該模塊主要用來執行任意的兩個請求,響應或任何其它形式的數據之間的比較.
傳送門:BurpSuite系列(九)----Comparer模塊(比較器)
BurpSuite中好用的第三方插件
- sqlmap :這是直接在burpsuite中調用sqlmap的插件
- JSON Beautifier:這是對JSON數據進行美化的插件,直接Extender中有
- BurpCollector :這是收集BurpSuite中歷史記錄中的路徑和參數的一款插件
- JSONandHTTPP :這是將JSON數據和HTTP互相轉換的插件
參考文章:https://blog.csdn.net/u011781521/article/details/54772795
相關文章:使用BurpSuite抓取HTTPS網站的數據包
?
?
?
?
總結
以上是生活随笔為你收集整理的Burpsuite工具的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hydra暴力破解工具的用法
- 下一篇: Nessus扫描器的使用