BUUCTF[GXYCTF2019]BabySQli 1
解题思路
打开页面,是个登录窗口
1,先用一般的注入试试。
通过尝试发现or,=,()都被过滤了,
2,随便输入名字和密码。
3,名字输入admin时、
4,这些都行不通,尝试抓包。在跳转页面时发现代码
是base32加密,进行解密得
得到一个base64加密串,对此进行base64解密
得到 select * from user where username = '$name'
然后我就不清楚了,在网上查了查。
正确思路:
利用sqli的特性:在联合查询并不存在的数据时,联合查询就会构造一个虚拟的数据。
构造Payload:name=1' union select 1,'admin','c4ca4238a0b923820dcc509a6f75849b'#&pw=1
得出flag。
当时不清楚为什么要用md5加密。最后在别的WP中看了源码。
此处使用了MD5加密。
WEB陷阱多多。。。。。