目录
File Inclusion,意思是文件包含(漏洞),是指当服务器开启allow_url_include选项时,就可以通过php的某些特性函数(include(),require()和include_once(),require_once())利用url去动态包含文件,此时如果没有对文件来源进行严格审查,就会导致任意文件读取或者任意命令执行。文件包含漏洞分为本地文件包含漏洞与远程文件包含漏洞,远程文件包含漏洞是因为开启了php配置中的allow_url_fopen选项(选项开启之后,服务器允许包含一个远程的文件)。
Low
源码:
<?php
// The page we wish to display
$file = $_GET[ 'page' ];
?>
可以看到,low级别的代码对包含的文件没有进行任何的过滤,这导致我们可以进行包含任意的文件。
当我们包含一个不存在的文件 aaa.php ,看看会发生什么情况!
http://127.0.0.1/vulnerabilities/fi/?page=aaa.php
可以看到,发生了报错,并且把网站的路径都给暴露出来了。