php.ini 配置选项open_basedir作用

open_basedir: 将用户可操作的文件限制在某目录下
 
一般配置为:
open_basedir = "/data/webdata/htdocs/:/tmp/" //网站根目录
添加/tmp/ 是因为:文件上传,SESSION读写会用到临时目录。 
 
安全演示:
 
如果把 open_basedir 改为 open_basedir = "/"
 
执行下面代码:

echo "current:".getcwd();
echo '
';
chdir('/');
echo "chdir:".getcwd();
echo '
';
$lines = file('etc/passwd');

foreach ($lines as $line_num => $line) {
echo "Line #{$line_num} : " . htmlspecialchars($line) . "
\n";
}
?>
再改成 open_basedir = "网站根目录",再执行上述代码。就可对比出危害了。如果open_basedir设置不当当,就会泄露很多服务器信息,上述代码可以拿到linux用户信息。
 

0 个评论

要回复文章请先登录注册