网络安全-pikachu之文件上传漏洞1

文件上传漏洞是危害极大的,一旦成功,可以获取服务器的最高权限。

pikachu介绍:

文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像、上传附件等等。当用户点击上传按钮后,后台会对上传的文件进行判断 比如是否是指定的类型、后缀名、大小等等,然后将其按照设计的格式进行重命名后存储在指定的目录。 如果说后台对上传的文件没有进行任何的安全判断或者判断条件不够严谨,则攻击着可能会上传一些恶意的文件,比如一句话木马,从而导致后台服务器被webshell。

所以,在设计文件上传功能时,一定要对传进来的文件进行严格的安全考虑。比如:
--验证文件类型、后缀名、大小;
--验证文件的上传方式;
--对文件进行一定复杂的重命名;
--不要暴露文件上传后的路径;
--等等...

打开pikachu进入file upload模块

写了只可以上传图片,试了上传成功,并且还带了上传后的路径:

随便拼接哈,发现是能够访问的,所以这里满足了两个条件,1.可以上传文件。2.文件上传之后可以访问。

 下一步尝试上传php一句话,提示不符合要求。

直接F12进入浏览器的调试模式,搜索关键字“不符合”,发现了前端代码判断逻辑,我直接把!flag的!号删除,然后按enter键保存。

先点击浏览,然后点击开始上传。再次上传成功:

使用antsword连接

右键打开虚拟终端:

总结:

此漏洞的原因是仅仅前端判断文件的后缀,所以可以通过修改前端文件绕过。

如果要防护需要在后段进行判断,除了判断文件,还要重命名文件,并且将上传的目录可执行权限进行限制。还可以对文件进行重新编码。对上传的文件进行判断是否有敏感字符等。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值