实验室:通过 Content-Type 限制绕过 Web shell 上传


网站可能尝试验证文件上传的一种方法是检查此特定于输入的Content-Type标头是否与预期的 MIME 类型匹配。例如,如果服务器只需要图像文件,它可能只允许image/jpeg和之类的类型image/png。当此标头的值被服务器隐式信任时,可能会出现问题。如果不执行进一步的验证来检查文件的内容是否实际匹配假定的 MIME 类型,则可以使用 Burp Repeater 等工具轻松绕过这种防御。


第一步:登录进网站
第二步:上传指定文件
当网站只允许上传指定的文件格式时,我们上传其他格式文件就会被阻止。

在这里插入图片描述
第三步:上传一张图片文件,借助Burp进行抓包。
在这里插入图片描述
这里我们可以看到它上传文件的类型,本次网站只允许上传图片格式类型
在这里插入图片描述
第四步:我们继续回到刚才的“第二步”,但是这次使用Burp进行截断,并对进行一些修改,使之能够成功上传。
在这里插入图片描述
这里可以看到它允许上传的文件类型不是图片格式类型,我们将它修改和之前图片上传的文件类型一样
在这里插入图片描述
这里观察页面响应情况,发现成功上传exploit.php文件
在这里插入图片描述
第五步:接下来像之前实验一样,替换对应的文件名,就可以获得我们想要的结果了
在这里插入图片描述
在这里插入图片描述
提交密码,实验完成!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值