SQL注入-盲注基于时间(base on time)
boolian的盲注类型还有返回信息的状态,但是基于时间的盲注就什么都没有返回信息。
输入payload语句进行睡5秒中,通过开发这工具查看时间,如图所示,会在5秒钟后在执行,因此存在基于时间的盲注。
基于时间的延迟写的payload语句:
做一个if语句进行判断,如果数据库的第一个字符等于a,则睡5秒钟在执行。否则不需要睡眠
kobe' and if((substr(database(),1,1))='a',sleep(5),null)#
如图所示,不等于a,返回时间上则为2秒(本地环境问题存在2秒延迟,正常0秒)
因数据库第一个字符为p,我就直接公布正确的答案,就不一个一个测试;
kobe' and if((substr(database(),1,1))='p',sleep(5),null)#
如图所示,正确存在时间上的延迟7秒,说明p猜对了数据库名称的第一个字符。