天天看點

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

暴力破解複習及Intruder子產品詳解

一、關鍵詞解讀

Burp Suite:用于攻擊web滲透測試工具;
Proxy:代理子產品,用于過濾資料、攔截資料和抓包;
Intruder:攻擊子產品,用于對web滲透測試;
Positons:攻擊方式的确定以及發起攻擊,用于設定攻擊方法與發送資料格式;
Payloads:攻擊子產品下的載荷子產品,配置字典;
Options:攻擊子產品下的指令子產品,用于攻擊結果處理設定;
           

二、基于表單的暴力破解

1、随意輸入賬号密碼到靶頁面并點選登入:
           
【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

2、利用Proxy > HTTP histroy抓包并發送至Intruder子產品:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

3、确定攻擊方式,此處我們利用Cluster bomb(集束炸彈)(較為常用);

4、确定攻擊格式,隻将需要傳的變量值加上辨別符§:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

5、進入Payloads載荷子產品,Payload set中數字對應前面的第幾個變量(我這裡的1=賬号,2=密碼),分别為這幾個變量添加Payload Options破解變量字典:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

6、進入Options攻擊結果處理設定,在Grep-Match中添加密碼錯誤的關鍵詞進行過濾審閱:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

7、設定完以上攻擊方式、格式、方法以及結果處理後,即可進入Postions子產品中點選開始攻擊Start attack得到結果:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解
【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

響應結果中不含報錯資訊(username or password is not exists)的即為正确賬号密碼。

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

三、驗證碼繞過(on client)

1、可通過檢視網頁源代碼發現該驗證碼屬于前端自認證,伺服器不判斷:
           
【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

2、故可按基于表單的暴力破解方式破解,不需要将驗證碼做成變量。

四、驗證碼繞過(on server)

1、可通過檢視網頁源代碼發現前端無驗證碼認證,故屬于後端認證;
2、先随意輸入賬号、密碼和驗證碼,通過代理子產品下的抓包功能(Proxy>Intercept is on):
           
【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

3、點選Forward檢視資料送出到哪裡處理:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解
或者可以檢視源代碼中驗證碼來源:
           
【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

3、打開showvcode.php分析:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解

4、引用了function.php,打開分析:

【Burp suite】暴力破解複習及Intruder子產品詳解暴力破解複習及Intruder子產品詳解
發現session_start()在showvcode.php中調用打開後,沒有在funtion.php用session_distroy()關閉,某個狀态可能儲存沒清空有問題。

5、在目标頁面分别嘗試輸入空驗證碼、錯誤驗證碼和正确驗證碼最後發現,正确的驗證碼輸入後狀态未更新可以繼續使用;
6、故第一次駛入正确驗證碼後作為常量傳值,仍可使用基于表單的暴力破解方法。
           

五、Intruder攻擊子產品詳解

1、子子產品:
	(1)Target:用于配置目标伺服器進行攻擊的詳細資訊;
	(2)Positions:攻擊方式的确定以及發起攻擊,用于設定攻擊方法與發送資料格式;
	(3)Payloads:攻擊子產品下的載荷子產品,配置字典;
	(4)Opetions:攻擊子產品下的指令子產品,用于攻擊結果處理設定;
2、Targe:
	(1)Host:填寫目标主機的IP或主機名;
	(2)Port:填寫目标主機的端口号;
	(3)Use HTTPS:指定的SSL是否應該被使用。
3、Positions:
	(1)Attack type:攻擊方式的選擇:
		1)Sniper:對變量依次進行破解,多個标記依次進行(一次行動隻對一個标記發送一個資料進行破解);
		2)Battering rm:對變量同時進行破解,多個标記同時進行(一次行動對多個标記發送相同一個資料進行破解);
		3)Pitchfork:每個變量對應一個字典,取每個字典的對應項(一次行動對多個标記發送多個字典中序号相同的資料進行破解);
		4)Cluster bomb(集束炸彈,常用):每個變量對應一個字典,并且進行交集破解,嘗試各種組合。(交叉破解,适用賬号+密碼的破解)。
	(2)§:變量注釋符(前後個一個)。
4、Payloads:
	(1)Payload Sets:變量數量類型設定(數字代表第幾個變量);
	(2)Payload Opetions:破解字典的增删改查;
	(3)Payload Processing :對生成的Payload進行編碼、加密、截取等操作;
	(4)Payload Encoding:對應字元進行URL編碼;
5、Options:
	(1)Request Headers:配置請求頭(是否更新、是否關閉連接配接);
	(2)Request Engine:設定發送請求的線程、逾時重試等;
	(3)Attack Results:設定攻擊結果的顯示;
	(4)Grep – Match:添加密碼錯誤的關鍵詞進行過濾審閱;
	(5)Grep – Extract:通過正則提取傳回資訊中的内容。