网络攻击与防御之文件上传漏洞

一、文件上传漏洞

1.1 概述

​ 文件上传漏洞是指由于程序员未对上传的文件进行严格的验证和过滤,而导致的用户可以越过其本身权限向服务器上上传可执行的动态脚本文件。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。这种攻击方式是最为直接和有效的,“文件上传”本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。

1.2 准备阶段

  1. 安装虚拟机VMware Workstation Pro,虚拟机上安装靶机OWASP Broken Web Applications和攻击机Kali Linux
  2. 使用的软件:中国菜刀burpsuite

使用木马shell1.php

<?php @eval($_POST['chopper']);?>

1.3 选择攻击网页

  1. 进入OWASPBWA提供的网站
    在进入OWASPBWA系统后,会提供给用户和一个PI地址(网址)。将其复制到自己的浏览上。
  1. 找到Damn Vulnerable Web Application并进入,登陆账户和密码形同,都为:madin

登陆成功的页面:

1.4 攻击过程

1.4.1 安全级别

查看源码:

在这里插入图片描述
  1. 初级

只是简单的文件上传操作,没有对上传的文件进行任何的要求和规范。

if(!move_uploaded_file($_FILES['uploaded']['tmp_name'], $target_path))

  1. 中级

    对文件的MIME和大小进行要求。

    if (($uploaded_type == "image/jpeg") && ($uploaded_size < 100000))

  2. 高级

    对文件的文件后缀名及后缀进行要求

    if (($uploaded_ext == "jpg" || $uploaded_ext == "JPG" || $uploaded_ext == "jpeg" || $uploaded_ext == "JPEG") && ($uploaded_size < 100000))

1.4.2攻击过程

  1. 初级

    在初级安全模式下上传shell1.php并得到其地址(在其网站后面加上文件路径:http://192.168.159.129/dvwa/hackable/uploads/shell1.php),把此地址复制到中国菜刀上,通过此软件可直接访问到网站主机,并且可以对主机上的资源随意进行下载和删除。

  2. 中级

    首先需要Kali上的burpsuite开启代理服务器并开启代理拦截功能,选择文件并上传shell1.php,后在burpsuite上的拦截页面更改上传文件MIME的类型为"image/jpeg"。之后操作和在初级安全模式下相同。可以对主机上的资源随意进行下载和删除。

  3. 高级

    和中级安全模式类似,更改上传文件后缀名为“jpg”。但是只能通过中国菜刀浏览网站主机的部分资源文件且不能下载和删除。

1.5防御办法

  1. 检测上传文件后缀

  2. 在前端部署WB应用防火墙,检测文件内是否存在"eval($_POST"等这些标记

  3. 直接检查网站目录内是否含有"eval($_POST"关键字。

    检查命令:fgrep -R'eval($_POST' /var/www/dvwa

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

去留意

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

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

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

打赏作者

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

抵扣说明:

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

余额充值