堆叠注入
尝试万能密码没用后尝试堆叠注入,就是语句用;隔开
返回了所有的库
返回了当前库的表
查看表Flag的定义的时候失败了
select 1 from table
这个题目涉及到一个操作select 1 from table
select 1 from table
增加临时列,每行的列值是写在select后的数,这条sql语句中是1
1是一常量(可以为任意数值)
一般是作条件查询用的
一般用来当做判断子查询是否成功(即是否有满足条件的时候使用)
看了大佬的wp,他们猜出语句大概是这样
select $_GET['query'] || flag from Flag
这里有个“或”,如果前一个操作数为真,整个语句就是TRUE不会考虑后面的
构造payload就是*,1
想直接查全部(*)是不可能的,被过滤掉了,所以我们可以加上刚刚说的select 1 from table
sql语句就变成了select *,1||flag from Flag
也就是select *,1 from Flag
flag就出来了