DVWA靶场文件上传通关
2026/6/23 21:02:56 网站建设 项目流程

LOW

一、直接输入含木马连接的文件测试

  1. 直接上传文件后,发现可以直接上传
  2. 将提示的路径粘贴到URL后,页面空白,没有报错,那就是操作成功了
  3. 在使用蚁剑连接

  • 这里成功连接了
二、代码审计

  1. 后端直接将用户上传的文件存储
  2. 没有对文件类型判断
  3. 没有对内容校验
  4. 直接使用了初始名命名
三、后端服务器没有做任何防护操作,存在文件上传漏洞

删除上传的文件防止对后需操作造成影响

Medium

一、直接上传返现提示有过滤

  1. 判读是使用白名单过滤的
  2. 使用抓包工具查看情况

  1. 这里先想到的是这里的Content-Type字段中的内容

  2. 推测后端会判端请求包中的字段,这里直接修改为image/jpeg尝试

    • 点击放行,发现成功上传,显示了路径

  1. 在使用蚁剑连接测试

  1. 连接成功
二、代码审计

  1. 可以看出这里先获取了文件名,大小,MIME字段的内容,
  2. 只有对MIME字段的类型判断文件的合法性
  3. 这里判断了文件大小没什么作用
三、后端主要通过MIME字段中的信息来判断上传文件的类型的合法性

High

一、尝试抓包来试试

  1. 修改Content-Type字段为image/jpeg看看

  1. 页面提示有问题,证明不是校验MIME,换个思路试试
二、构造一个图片马试,在包含有木马文件和正常图片的目录下打开cmd
copy 图片名 /b + 木马文件 /a 输出后的文件# 这是我的操作copy hjk.jpg /b +2.php /a3.jpg

  1. 之后就在文件加中生成了3.jgp文件
  • 尝试上传这个文件看看

  1. 成功上传,那就表名后端对文件内容没有做过滤和审查,那就访问看看
  2. 将路径拼接到url地址后,发现返回的是图片,不是想要的结果
  3. 发现上传的图片没有被当成php代码解析,那就使用文件包含的方法来尝试解析图片马
  4. 这里你可将等级换成low级别访问文件,也可以不切换(那就要靠路文件包含关卡的过滤了)
# 注意地址http://192.168.75.1/DVWA/vulnerabilities/fi/?page=../../hackable/uploads/3.png
  1. 使用蚁剑连接

  2. 由于HIgh等级的操作中,全局逻辑会验证会话的合法性,这里就需要添加cookie值,确保合法

三、代码审计

  1. 获取文件后缀名,文件大小,文件内容
  2. 判断文件后缀名是否正确,以及对文件大大小做了要求
  3. 主要使用了getimagesize()函数判断图片的合法性
  4. getimagesize()判断图片的宽度,类型,MIME类型,只最图片有用
四、存在上传漏洞,后端的函数只有对图片类型和长宽,MIMIE判断,没有对整体内容判断过滤

Impossible

代码审计

  1. 基础的验证(High级别的防护)
  2. 重新编码图片,重新生成新的图片并且保存到临时的路径中(过滤了木马程序)
  3. 使用MD5方式重命名文件名
  4. 不在页面中显示详细的路径位置,只是通过连接显示

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询