首页 -> 安全研究

安全研究

安全漏洞
CARE 2002不安全文件包含输入验证错误漏洞

发布日期:2002-07-12
更新日期:2002-07-18

受影响系统:
CARE 2002 CARE 2002 1.0.01
CARE 2002 CARE 2002 1.0
描述:
BUGTRAQ  ID: 5218
CVE(CAN) ID: CVE-2002-0998

CARE 2002是一款集成的健康护理一体软件,提供由PHP实现的WEB接口。

CARE 2002对用户的输入缺少正确的验证检查,远程攻击者可以利用这个漏洞以WEB服务进程权限在系统上查看任意文件内容。

./main/cafenews.php脚本中存在包含的函数变量可以被用户控制:

[...]
include("../language/".$lang."/lang_".$lang."_newsdummy.php");
[...]

如果在php.ini配置文件中'register_globals'变量设置为'on'和magic_quotes_gpc设置为'off',就可以导致攻击者以WEB的权限查看系统上任意文件内容。上面示例中如果$lang变量包含NULL字符如(%00),包含的变量就会忽略NULL字符后的所有内容,通过提交请求系统中的任意文件名再追加NULL字符,脚本就会忽略NULL字符后的所有包含,而直接显示提交的文件内容。

如foobar.php脚本类似如下:

<?php
include("../".$input."blubb");
?>

使用如下参数调用文件:

foobar.php?input=bla%00bla

在magic_quotes_gcp设置为off的情况下,结果为:

<br />
<b>Warning</b>: Failed opening '../bla\0blablubb' for inclusion
(include_path='.:/usr/local/lib/php') in <b>/home/user/public_html/foobar.php</b> on
line
<b>2</b><br />

<*来源:avart@gmx.deavart@gmx.de
  
  链接:http://archives.neohapsis.com/archives/bugtraq/2002-07/0128.html
*>

建议:
临时解决方法:

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

* 在php.ini配置文件中设置'register_globals'选项为'off',并使用'magic_quotes_gpc'选项为'on'。

厂商补丁:

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

http://www.care2x.com

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