Java教程

SQLI-LABS(Less-9)

本文主要是介绍SQLI-LABS(Less-9),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Less-9(GET-Blind-Time based-Single Quotes)

打开Less-9页面,可以看到页面中间有一句Please input the ID as parameter with numeric value,那么先使用ID这个参数通过GET方式传入一个数值。

确定注入点

注入语句:?id=1。可以看出没有回显查询结果。

接着试一下?id=1',发现和?id=1的页面没有区别,没有报错也无法判断成功还是失败。此时就可以考虑另一种盲注的方式:时间盲注
时间盲注与布尔型注入的区别在于,时间盲注是利用sleep()benchmark()等函数让数据库执行的时间变长,根据返回页面的时间来判断使用的注入语句成功与否。时间盲注多与if函数结合使用。如:if(a,b,c),此if语句的含义是,如果a为真则返回值为b,否则返回值为c

根据本关的名字提示,得知SQL语句是单引号闭合,接着尝试?id=1' and if(1=1,sleep(2),0) --+?id=1' and if(1=2,sleep(2),0) --+确定真的存在注入点,使用前一条注入语句时,网页两秒之后刷新成功,而使用第二条语句,直接返回,由此确定存在注入点。

根据返回时间确定数据

注入语句:?id=1' and if(length(database())>1,sleep(2),1)--+
此时就可以将上面注入语句中的database()换成自己想要使用的语句,不断猜解得出数据,同上一关。

这篇关于SQLI-LABS(Less-9)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!