经过尝试大致有三种错误返回
常见的注入
错误用户名
用admin做用户名
说明是有admin这个用户的
查看原码
关键点:Post方式传参数
查看search.php
有段Base32,解密后是段base64
c2VsZWN0ICogZnJvbSB1c2VyIHdoZXJlIHVzZXJuYW1lID0gJyRuYW1lJw==
再解密
select * from user where username = ‘$name’(被注释)
这个题目解法基本上是通过联合注入,创建临时的一条记录,然后再登录
由于只能通过admin账户登录,因此让虚拟用户的名字是admin 同时密码转换成了md5存储(猜测应该是为了保护用户的隐私,md5不可逆,这就让即使身为管理员也不能知道用户密码)于是在构造的时候要注意数据库密码应该是md5模式的.同时登入时输入对应的明文密码即可.
至于从哪得知md5我目前也不知道。
post传参,所以这里用了burp抓包
这样数据库里就会多了条1,‘admin’,'c4ca4238a0b923820dcc509a6f75849b(1的md5)‘数据,密码用1登录