dvwa v1.10 文件包含high级别的一个思路

本文探讨了DVWA(Damn Vulnerable Web Application)中文件包含漏洞的High级别问题。通过分析代码和测试,发现PHP的一个特性,即使文件名不以'file'开头,也能通过特定URL路径成功包含目标文件,如filesfwe/../file1.php。

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

我们先来看一下dvwa文件包含high级别的代码:

<?php

// The page we wish to display
$file = $_GET[ 'page' ];

// Input validation
if( !fnmatch( "file*", $file ) && $file != "include.php" ) {
    // This isn't the page we want!
    echo "ERROR: File not found!";
    exit;
}

?> 
因此page参数必须要以file开头,其中的一路绕过的思路是利用file协议,例如要读取D盘的testfile.txt文件,则url应该写为http://127.0.0.1/dvwa/vulnerabilities/fi/?page=file:///D:/testfile.txt,详情大家可以去参考一下一下这篇文章 点击打开链接

但是这毕竟只是一种特殊情况,如果不是文件名开头恰好为file,这根本无法利用。

经测试发现在php有个有意思的特性,代码如下:

<?php 
	include("werew/../cookie.txt");
?>
这里当前目录存在一个co
DVWA(Damn Vulnerable Web Application)是一个开源的安全教育工具,它包含了一系列常见的Web应用程序漏洞,包括文件上传漏洞。在DVWA中,文件上传漏洞(High Level)指的是攻击者利用服务器对上传文件类型或大小控制不足的情况,上传恶意文件,进而可能执行服务器端代码、获取敏感信息或者导致整个系统权限提升。 具体来说,high级别的文件上传漏洞可能涉及以下几个方面: 1. **缺乏验证**:系统可能没有对上传文件的类型、扩展名或内容进行充分检查,导致攻击者能够上传包含恶意脚本的文件(如PHP、JavaScript或SQL注入文件)。 2. **路径遍历**:如果服务器没有正确限制文件的保存位置,攻击者可能可以上传文件到目标目录之外,甚至达到服务器的根目录,影响其他系统资源。 3. **二进制执行**:某些情况下,系统可能允许上传并执行二进制文件,如可执行的EXE或DLL文件,从而可能导致本地代码执行。 4. **文件包含漏洞**:如果应用程序使用了`include`或`require`来加载外部文件,恶意上传的文件可能会被错误地包含进来,造成安全风险。 为了修复这个漏洞,你应该确保对上传文件进行严格的验证,限制文件类型和大小,使用安全的文件上传处理函数,并使用正确的路径约束,避免路径遍历。同时,对服务器环境的文件权限管理也很重要,确保上传文件不会被执行或影响其他系统功能。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值