文件上传漏洞---Web渗透学习

文件上传本身是一个系统的正常需求,但是由于开发人员在开发时欠缺相关的安全知识,在对用户文件上传部分的控制不足或者缺陷,而导致用户越过其本身权限向服务器上传可执行的动态脚本文件。
这里上传的文件可以是木马,病毒、恶意脚本或webshell等。
这种攻击最为直接有效但是预防相对简单,除了开发语言方面,主要通过安全设备WAF(web application firewall,本文不对此进行讨论)来进行防护。
同时要对服务器的处理逻辑和业务处理逻辑进行深入理解,减少开发的系统的安全漏洞,以便预防黑客利用这些漏洞,对公司造成声誉和财产上的伤害。

造成文件上传的原因及原理
原因:
1.对上传文件的后缀名(扩展名)没有较为严格的限制;
2.对上传文件的MIMETYPE没有做检查;
其他试验中为涉及暂不列出。

原理:
在WEB中进行文件上传的原理通常是将表单设置为multipart/form-data,同时加入文件域,而后通过HTTP协议将文件内容发送到服务器,服务器读取这个分段(multipart)的数据信息,并将其中的文件内容提取出来并保持。通常,在进行文件保持的时候,服务器端会读取文件的原始文件名,并从这个原始文件中得出文件的扩展名,而后随机为文件起一个文件名(为防止重复),并加上文件的扩展名来保持到服务器上。

owasp-bwa提供了低中高三个级别的文件上传代码,如下:
低安全级别(开发小白):

<?php
    if (isset($_POST['Upload'])) {
            $target_path = DVWA_WEB_PAGE_TO_ROOT."hackable/uploads/";
            $target_path = $target_path . basename( $_FILES['uploaded']['name']);

            if(!***move_uploaded_file($_FILES['uploaded']['tmp_name'], $target_path)***) {
                echo '<pre>';
                echo 'Your image wa
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值