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.de (
avart@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(网友投票)