XCTF攻防世界web进阶练习—bug
题目
题目名字是bug
进入题目是一个登录界面
这里提供了注册和找回密码的功能,简单测试了一下sql注入,无果。
联想到题目名字是bug,应该和网站逻辑问题有关。
注册一个账号,这里我注册为admins password
注册好之后当然是登录啦,登录进去之后有几个功能。其中值的注意的是manage和change pwd
发现manage要管理员权限,change pwd又只能修改当前用户密码。所以目光聚集到外面的找回密码的功能上。
操作过程中时刻注意使用burpsuite查看收发包的情况。
也可以先顺利操作一遍,之后再回去查看burp的http history。
简单看一下就知道这里将重置密码分成了两步,第一步进行认证,第二步是密码的修改。找到了解题的关键。这里只要重放第二步就可以修改admin的密码
之后使用我们重置的密码登录admin账号
成功登录!来到manage页面,F12发现
传参数module和do。
do随便传一个1。返回action is not correct
注意到前面参数是filemanage,这里do只有靠猜了。。。
文件管理相关的操作无非就是文件的增删改查了。
尝试了download,read,write等之后发现当do为upload时返回一个上传页面。。
先上传一张图片,用burp重放。
简单测试一下发现,当上传内容中有<?php时会报错
所以这里使用php的脚本表达形式
<script language='php'>
phpinfo();
</script>
修改后go
再修改文件后缀,尝试常见的可当做php解析的后缀
php3,php5,php7,pht,phtml等等。
当后缀为php5时,成功返回flag