Dvwa练习04 File Inclusion文件包含

本文详细介绍了DVWA中文件包含漏洞的三个安全级别:Low、Medium、High,包括本地文件读取与执行、远程文件包含等,通过实例展示了如何利用这些漏洞,以及防范措施。

0.简介

文件包含,是指当服务器开启allow_url_include选项时,就可以通过PHP的某些特性函数(include(),require()和include_once(),requir_once())利用URL去动态包含文件,此时如果没有对文件来源进行严格审查,就会导致任意文件读取或者任意命令执行。文件包含漏洞分为本地文件包含漏洞与远程文件包含漏洞,远程文件包含漏洞是因为开启了PHP配置中的allow_url_fopen选项,选项开启之后,服务器允许包含一个远程文件,服务器通过PHP特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意文件,而我们可以构造这个恶意文件来达到自己的目的。

环境:

服务器IP:192.168.142.133

测试主机IP:192.168.142.134

1.Security Level:Low

代码如下,未对page参数做任何检查或过滤。

尝试点击文件1、文件2、文

DVWA(Damn Vulnerable Web Application)中,文件上传漏洞练习文件包含File Inclusion)漏洞是常见的安全漏洞测试场景。 #### 文件上传漏洞练习 文件上传漏洞允许攻击者上传恶意文件到服务器,从而可能执行任意代码。在DVWA里进行文件上传漏洞练习时,不同的安全级别会有不同的防护机制。 - **低安全级别**:几乎没有对上传文件进行严格的验证,攻击者可以轻松上传可执行脚本文件,例如PHP脚本。以下是一个简单的PHP上传脚本示例: ```php <?php if(isset($_FILES['file'])){ $target_dir = "uploads/"; $target_file = $target_dir . basename($_FILES["file"]["name"]); move_uploaded_file($_FILES["file"]["tmp_name"], $target_file); echo "文件上传成功: " . $target_file; } ?> ``` 攻击者可以上传包含恶意代码的PHP文件,然后通过访问上传的文件执行恶意操作。 - **中安全级别**:可能会对文件类型进行简单的验证,但这种验证可能存在绕过的方法。例如,只检查文件扩展名,攻击者可以通过修改扩展名或者使用双扩展名(如`.php.jpg`)来绕过验证。 - **高安全级别**:会采用更严格的验证机制,如检查文件的MIME类型、文件内容等,增加了攻击者上传恶意文件的难度。 #### 文件包含漏洞(File Inclusion文件包含漏洞允许攻击者通过操纵文件包含函数来包含恶意文件,从而执行任意代码。DVWA中的文件包含漏洞也有不同的安全级别。 - **本地文件包含(LFI)**:攻击者可以包含服务器本地的文件。例如,在一个PHP应用中,存在如下代码: ```php <?php $file = $_GET['file']; include($file); ?> ``` 攻击者可以通过构造URL参数来包含本地敏感文件,如`/etc/passwd`。 - **远程文件包含(RFI)**:攻击者可以包含远程服务器上的文件。在某些情况下,如果服务器配置允许,攻击者可以通过URL指定远程文件的地址,从而执行远程文件中的代码。 通过在DVWA中对文件上传漏洞和文件包含漏洞进行不同安全级别的练习,可以深入了解这些漏洞的原理和防范方法。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

旧时幻梦

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

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

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

打赏作者

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

抵扣说明:

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

余额充值