本题考察文件上传绕过
首页给出登录、注册、找回密码功能:
正常注册:
账号1 密码1
登录后访问模块:
提示非管理员身份,故尝试BP抓包修改管理员密码:
对此页面抓包:
将用户名修改为admin再发包:
可以看到修改密码成功,这是由于后端校验不严谨导致的。
现在使用密码123即可以管理员身份登录,但点击其它模块显示IP不被允许:
推断需使用本地访问(HackBar V2才可修改请求头,HackBar不可修改X-Forwarded-For):
得到如下页面:
访问页面源代码:
对do参数fuzz后发现upload路径:
猜测后台能够解析文件中的内容,因此考虑写入命令执行代码:
抓包修改后缀,回显如下:
但将php修改为php5后,回显发生改变,故可判断此时绕过了后缀检验:
接下来对文件内容进行绕过,修改类型及添加图片头,回显如下:
可以看见,这里可能是对php进行正则表达式匹配,也可能代码并不能被解析,尝试使用如下模板绕过:
<script language="php"></script>
得到flag,说明文件内容可被解析: