1. 前言
文件包含漏洞 是 Web 应用中较为常见的漏洞之一,攻击者通过操控文件路径,访问或包含系统上的敏感文件,甚至执行恶意代码。DVWA(Damn Vulnerable Web Application)提供了一个理想的实验环境,让安全测试人员可以模拟和复现这类漏洞。
本文将介绍 DVWA 中 File Inclusion 漏洞的利用原理,并分别针对 Low、Medium 和 High 三个安全等级,展示相应的攻击方法和防御措施。
2. DVWA 中的 File Inclusion 攻击通关
2.1 Low 级别
- 修改php.ini文件,我的php.ini文件在
/etc/php/8.4/apache2/php.ini
中,将php.ini中的 ‘‘allow_url_include=Off’’ 改为 ‘‘allow_url_include=On’’ - 重启mysql和apache服务
service mysql restart
service apache2 restart
- 点击file1.php,可以看到page值为该文件名
- 因此直接传入外部网址(百度),可成功跳转
3.2 Medium 级别
- 双写绕过
3.3 High 级别
-
双写绕过不生效
-
通过file协议实现本地文件包含。我们可以利用 file 协议来绕过防御。使用 file 协议可以来描述一个文件的绝对路径。
把 URL 中的文件名替换为服务器的一个文件地址,协议为file:///
但是以上这种操作是不可取的,因为在实战中我们并不知道服务器的文件在哪里,甚至是文件名目录.
这里就利用靶场中同等级File Upload(文件上传)漏洞进行上传图片木马,然后通过反馈文件地址,进行文件包含获取服务器控制权限。