<题目>
bypass the upload
格式:flag{}
解题链接: http://ctf5.shiyanbar.com/web/upload 通过
<过程>
1.打开题目链接要求上传文件,先新建一个test.txt的空白文件上传。
反馈的信息是只允许传以上三种"图片"类型。
2.把文件扩展名修改为*.jpg重新上传。
反馈信息是只要求.php。我们可以大约猜到前端要求上传*.jpg而后台再对是否为.php类型进行检测。
3.我们考虑到是否存在00截断。首先尝试%00截断,将文件名修改为test.php%00.jpg上传,发现仍然提示类型错误。
4.之后再考虑进行0x00截断。修改文件名为test.jpg。选择该文件,然后启动浏览器本地代理,打开burpsuite,点击上传。
并将截获的数据包发送到repeater。
5.在repeater下做如下修改:(注意test.php最后处还有加一个空格)
6.转到Hex界面,找到空格(十六进制为20)相应的位置,将其修改为00(因为文本界面无法修改因此只能在hex下进行)
改动前后
7.点击Go,即可绕过上传,得到最终结果。
※关于文件上传绕过的方法和类型还有很多(漏洞存在的情况下),可以去相关论坛或者网站进行进一步地了解与学习。