首页 -> 安全研究

安全研究

安全漏洞
PHP未定义Safe_Mode_Include_Dir选项绕过Safemode模式漏洞

发布日期:2003-07-16
更新日期:2003-07-23

受影响系统:
PHP PHP 4.3.2
PHP PHP 4.3.1
PHP PHP 4.3.0
描述:
BUGTRAQ  ID: 8201

PHP是一款广泛使用的脚本语言解析系统,可以方便的进行WEB开发,能嵌入到HTML中使用。

PHP存在安全漏洞,攻击者可以使用include()和require()在限制目录中调用外部文件,允许程序绕过Safe模式。

当safe_mode_include_dir PHP指示没有定义时会出现此问题,报告当通过include()或require()调用访问文件时存在逻辑错误可导致PHP错误的运行安全检查,使攻击者绕过Safe模式模型。

此问题可引起在使用Safe模式的环境中,如WEB资源由多个用户共享时,可使攻击者绕过安全模式未授权访问受限制资源。

<*来源:Michal Krause (michal@krause.cz
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=105839111204227&w=2
*>

测试方法:

警 告

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

Michal Krause (michal@krause.cz)提供了如下测试方法:

<?
echo("trying to read /etc/passwd");
include("/etc/passwd");
?>

建议:
临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* 非官方补丁如下:

修改main/fopen_wrappers.c文件中的php_check_safe_mode_include_dir函数,使用

return -1;

代替为:

return 0;

重新编译PHP并运行。

厂商补丁:

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

http://www.php.net

浏览次数:3522
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障