| 网站首页 | 新闻中心 | 系统安全 | 网络安全 | 安全技术 | 下载中心 | 
课件制作网.
收藏本站
设为首页
安全365
PHP符号链接绕过open_basedir安全限制漏洞
PHP符号链接绕过open_basedir安全限制漏洞
作者:佚名 文章来源:不详 点击数: 更新时间:2007-1-26 15:05:34
2006-10-9 10:05:55

发布日期:2006-10-03
更新日期:2006-10-09

受影响系统:
PHP PHP 5
PHP PHP 4

描述:

BUGTRAQ  ID: 20326

PHP是广泛使用的通用目的脚本语言,特别适合于Web开发,可嵌入到HTML中。

PHP在检查和处理文件访问路径时存在漏洞,本地攻击者可能利用此漏洞非授权访问文件。

PHP的open_basedir功能可以禁止脚本访问所配置的基础目录以外的文件。这个检查是在处理文件的PHP函数在实际的开放调用发生之前执行的。在检查和实际开放调用之间有一个时间差,而攻击者可以利用这个时间差更改所检查的路径,指向open_basedir限制所禁止访问的文件。

尽管很难利用这个时间差更改路径,但攻击者可以使用symlink()函数来发动攻击。PHP的symlink()函数要保证符号链接操作的来源和目标都是open_basedir和safe_mode限制所允许的,但攻击者可以使用mkdir()、unlink()及至少两个符号链接将链接指向任意文件。

<*来源:Stefan Esser (s.esser@ematters.de)
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=115996035115020&w=2
        http://secunia.com/advisories/22235/
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

mkdir("a/a/a/a/a/a");
   symlink("a/a/a/a/a/a", "dummy");
   symlink("dummy/../../../../../../", "xxx");
   unlink("dummy");
   symlink(".", "dummy");

建议:

临时解决方法:

* 在php.ini中禁用symlink()函数。

厂商补丁:

PHP
---
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.php.net

文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
     
     
     
    PHP html_entity_decode
    PHP HTMLEntities和HTML
    PHP wordwrap()缓冲区溢
    phpMyAdmin多个HTTP响应
    PHP session.save_path(
    WordPress functions.ph
    PHP Easy Download file
    PHP HTMLEntities和HTML
    WordPress functions.ph
    PHP Easy Download file

    Copyright © 2006-2008 www.anquan365.com 安全365
    建议使用1024*768分辨率及第三方浏览器对本站进行浏览