DVWA Brute Force(暴力破解)

2021-09-10 13:03:51 字數 1789 閱讀 4157

本系列文集:dvwa學習筆記

分析:isset函式在php中用來檢測變數是否設定(該函式返回的是布林型別的值,即true/false)

可以看到,伺服器只是驗證了引數login是否被設定,沒有任何的防爆破機制,且對引數username、password沒有做任何過濾,存在明顯的sql注入漏洞。

方法一利用burpsuite爆破

1.抓包

2.傳送到intruder模組,進行爆破密碼

3.根據在爆破結果中找到正確的密碼,可以看到password的響應包長度(length)「與眾不同」,可推測password為正確密碼,手工驗證登陸成功。

方法二手工sql注入

username:admin』 or 』1′=』1

password:(空)

username :admin』 #

password :(空)

分析:

medium級別的**主要增加了mysql_real_escape_string函式,這個函式會對字串中的特殊符號(x00,n,r,,』,」,x1a)進行轉義,基本上能夠抵禦sql注入攻擊,同時$pass做了md5校驗,杜絕了通過引數password進行sql注入的可能性。但是,依然沒有加入有效的防爆破機制.

方法:

雖然sql注入不再有效,但依然可以使用burpsuite進行爆破,與low級別的爆破方法基本一樣。

分析:

high級別的**加入了checktoken,可以抵禦csrf攻擊,同時也增加了爆破的難度,通過抓包,可以看到,登入驗證時提交了四個引數:username、password、login以及user_token。

每次伺服器返回的登陸頁面中都會包含乙個隨機的user_token的值,使用者每次登入時都要將user_token一起提交。伺服器收到請求後,會優先做token的檢查,再進行sql查詢。同時,high級別的**中,使用了stripslashes(去除字串中的反斜線字元,如果有兩個連續的反斜線,則只去掉乙個)、 mysql_real_escape_string對引數username、password進行過濾、轉義,進一步抵禦sql注入。

Different Divisors(數論 暴力)

題目 參考題意 給定乙個數d,求乙個最小的整數a,使得其 1 a至少有4個因子 2 a的任何兩個因子相差大於等於d。思路 任何乙個數,其因子至少有1和它本身。設a剛好有4個因子,有兩種情況,p 3p 3 p3或p q p qp q p,qp,q p,q為素數 可以證明,如果因子數更多,不是最優解。假...

詞彙暴增計畫

猶豫不決的報名了乙個學習英語的計畫,我也不知道具體是怎麼做的,只是聽bill當時說英語會達到乙個很不錯的效果,我的英語確實需要挽救一把了。從明天開始 2017.6.5 到7月15日為期四十天的詞彙暴增計畫就要開始了,也不知道是怎麼一種形式,我是否可以堅持下來?選了任傑 做導師,目前來看,我的選擇是正...

Linux DenyHosts阻止SSH暴力攻擊

現在的網際網路非常不安全,很多人沒事就拿一些掃瞄機掃瞄ssh埠,然後試圖連線ssh埠進行暴力破解 窮舉掃瞄 所以建議vps主機的空間,盡量設定複雜的ssh登入密碼,雖然在前段時間曾經介紹過linux 禁止某個ip訪問使用hosts.deny禁止某些ip訪問,但是功能方面欠缺,如 不能自動遮蔽,那麼有...