[GXYCTF2019]BabySQli
试了一下发现过滤了and,or,order,(),但可以大写绕过
试了一下Order by 3#可以,但是union select 1,2,3#也没有回显,到这里就卡住了
原来search.php的源码里有提示
base32编码由大小写字母和数字组成,base64只由大写字母和数字组成,所以这是base32。解密后得到一串base64加密过的字符串,再解密后得到
select * from user where username = '$name'
这里用的知识点是联合查询在MySQL中查询不存在的数据时,会构建一个虚拟数据。payload是1' union select 1,'admin','698d51a19d8a121ce581499d7b701668'#
698d51a19d8a121ce581499d7b701668是’111’经过MD5加密后的字符串。通过这个联合查询我们会在数据库里加入一条id=1,username=admin,password=698d51a19d8a121ce581499d7b701668的数据。在password一栏里输入111,得到flag