这里先对输入内容进行尝试
我们发现输入字符串页面不会回显猜测当输入为字符串不会执行
我们测试输入数字发现为1及1以上的时候回显
输入0无回显
我们大概知道查询语句带上||运算符
||运算符和or作用一样及||两边有一边为true则语句顺利执行
按照我们的输入知道||右边为0也就是flase
那我们不知道||右边的语句先构造*,1 代表查询所以内容 这里没有from 所以我们也就是试一试
这就之间出来了,所以我们知道||右边是flag from flag
第二总解法
set指令用于设置变量的值
sql_mode变量 sql_mode 里面有一个很重要的常用值sql_mode=PIPES_AS_CONCAT ,意思是将||当作字符串连接符而不是运算符
所以我们可以构造
1'set sql_mode=PIPES_AS_CONCAT;select
这里的select 1会和|| flag from flag连接 也就是 slecet concat(1,flag) from flag