安全研究

安全漏洞
Horde应用框架go.php远程文件读取漏洞

发布日期:2006-03-15
更新日期:2006-03-16

受影响系统:
Horde Horde <= v3.09
不受影响系统:
Horde Horde 3.1
描述:
BUGTRAQ  ID: 17117

Horde Framework是个以PHP为基础的架构,用于创建网络应用程序。

Horde在处理用户请求的参数值时存在漏洞,远程攻击者可能利用此漏洞遍历服务器目录读取某些文件。

Horde的/services/go.php文件不安全的调用了readfile()函数:

--------------------------------------------------------------
$_GET['url'] = trim($_GET['url']);

if (get_magic_quotes_gpc()) {
    $url = @parse_url(trim(stripslashes($_GET['url'])));
} else {
    $url = @parse_url(trim($_GET['url']));
}

if (empty($url) || empty($url['host'])) {
    exit;
}

if ((!empty($_SERVER['SERVER_NAME']) &&
     $_SERVER['SERVER_NAME'] == $url['host']) ||
    (!empty($_SERVER['HTTP_HOST']) &&
     $_SERVER['HTTP_HOST'] == $url['host'])) {

.........

// Pass through image content if requested.
if (!empty($_GET['untrusted'])) {
    readfile($_GET['url']);
    exit;
--------------------------------------------------------------

调用parse_url试图通过参数中必须包含“ http:// ”字符串的要求来检查过滤输入,但在URL变量中嵌入NULL字符可以允许攻击者控制传送给readfile()的变量,导致以Web Server权限读取系统中的任意文件。此漏洞可以在某些版本默认安装的Linux发行版上被利用。

<*来源:Paul Craig (headpimp@pimp-industries.com
        CodeScan Labs (advisories@codescan.com
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=114244131218980&w=2
*>

建议:
厂商补丁:

Horde
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

ftp://ftp.horde.org/pub/horde/horde-3.1.tar.gz

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