为了验证,我在/var/www/下创建了一个 gxw.txt的文件,其中的内容为123
LOW:
?page=/var/www/gxw.txt
直接写入gxw.txt所在的文件就可以查看
其源代码为:
可以看出并未做出任何过滤
Medium:
直接查看源代码可以看出,他只是过滤掉了 http:// , https:// , …/ , …\ , 这是为了防止远程和本的的文件包含,但也可以绕过用 htt http://**p://**来代替http://
但是这种过滤对绝对路径没有起到效果,我依旧可以用?page=/var/www/gxw.txt 来访问我刚才创建的文件
Heigh
这里文件名是必须file* 或者是include.php
所以可以用 file 协议进行绕过
?page=file:///var/www/gxw.txt
Impossible:
这里是设置了白名单,只允许include.php , file1 , file2 , file3。所以避免了文件包含漏洞。
文件包含还可以和文件上传一起使用,上传木马,再用文件包含来打开运行。