DVWA 暴力破解板塊(低,中,高)

2022-05-20 20:21:27 字數 2678 閱讀 6271

關於dvwa登入和burpsuite的一些使用

在使用burpsuite時候,注意,火狐的**預設是localhost 、 127.0.0.1 不是用**,需要把這裡的內容刪除.

sniper  單個變數對應單個字典

battering ram 多個變數對應乙個字典

pitchfork 多個變數對應多個字典

cluster bomb 是 掃瞄1字典*2字典 次數,也就是username 和 password 的掃瞄完全獨立

步入正題

brute force,即暴力(破解),是指黑客利用密碼字典,使用窮舉法猜解出使用者口令

low

沒有任何的防爆破機制,且對引數username、password沒有做任何過濾,存在明顯的sql注入漏洞

方法一:利用burpsuite進行破解

複製到intruder模組,因為要對password引數進行爆破,所以在password引數的內容兩邊加$

選中payloads,載入字典,點選start attack進行爆破

最後,嘗試在爆破結果中找到正確的密碼,可以看到password的響應包長度(length)跟其他的不一樣,可推測password為正確密碼,手工驗證登陸成功。

方法二:

使用者名稱:admin』#

密碼可以不填       成功登陸

medium級別的**主要增加了mysql_real_escape_string函式,這個函式會對字串中的特殊符號(x00,n,r,,』,」,x1a)進行轉義

$pass做了md5校驗,杜絕了通過引數password進行sql注入的可能性

使用burpsuite進行破解(步驟與low一樣)

發現增加了user_token引數,所以爆破要選擇兩個引數來進行,先將請求傳送到intruder

每次伺服器返回的登陸頁面中都會包含乙個隨機的user_token的值,使用者每次登入時都要將user_token一起提交

同時,high級別的**中,使用了stripslashes(去除字串中的反斜線字元,如果有兩個連續的反斜線,則只去掉乙個)、 mysql_real_escape_string對引數username、password進行過濾、轉義,進一步抵禦sql注入。

推薦使用 python 編寫指令碼來實時的獲取 token 的值(但是在網上找到了使用burpsuite來操作的,請看下面)

設定兩個引數 password和user_token為變數,攻擊型別選擇pitchfork,意思是草叉模式(pitchfork )——它可以使用多組payload集合,在每乙個不同的payload標誌位置上(最多20個),遍歷所有的payload

設定引數,在option選項卡中將攻擊執行緒thread設定為1,因為recursive_grep模式不支援多執行緒攻擊,然後選擇grep-extract,意思是用於提取響應訊息中的有用資訊,點選add,如下圖進行設定,最後將redirections設定為always

寫上value=』  點選重新整理相應資訊   伺服器返回的token選中(即value後面,表示每次從響應中獲取該值)

將這個token 值先記錄下來

a5f168e741600adb87c761ac45d016dd

然後設定payload,設定第乙個引數載入字典,第二個引數選擇recursive grep,然後將options中的token作為第一次請求的初始值。

點選start attack攻擊爆破,結果成功爆破

還有就是用python指令碼進行的爆破,網上也有很多,因為我還沒有學過這個方面知識,這裡就不在演示

DVWA 暴力破解

難度1 low 直接使用bp的intruder模組進行密碼爆破即可得出密碼。難度2 medium 比難度1多了乙個登入失敗睡兩秒鐘的 所以要慢一點 難度3 high 用generatesessiontoken 函式生成隨機token 在get傳參中如果存在login變數就先對傳入的user toke...

dvwa 暴力破解(low high)

靶場環境 phpstudy8.1.1.3 apache2.4.39 ftp0.9.60 mysql5.7.26 burpsuite v2.1 首先看一下原始碼 這裡沒有任何限制,可以使用萬能破解 萬能破解還有很多其他的語句 select from users where user user and ...

DVWA學習暴力破解low級別

dvwa學習 一 暴力破解low 級別 if isset get login echo else mysql close php解釋 從low級別的 中可以看到,以get的方式傳送username和password 通過sql從user表中查詢是否有以get方式傳輸的兩個值,進行mysql查詢 查詢...