首页 -> 安全研究

安全研究

安全漏洞
Cyrus IMSP守护程序远程缓冲区溢出漏洞

发布日期:2003-12-15
更新日期:2003-12-19

受影响系统:
Carnegie Mellon University Cyrus IMSP Daemon 1.7
Carnegie Mellon University Cyrus IMSP Daemon 1.6 a3
Carnegie Mellon University Cyrus IMSP Daemon 1.5 a6
Carnegie Mellon University Cyrus IMSP Daemon 1.4
不受影响系统:
Carnegie Mellon University Cyrus IMSP Daemon 1.7 a
Carnegie Mellon University Cyrus IMSP Daemon 1.6 a4
描述:
BUGTRAQ  ID: 9227

Cyrus IMSP程序是IMSP(Internet Message Support Protocol)协议实现。

Cyrus IMSP程序在处理部分类型请求时不正确,远程攻击者可以利用这个漏洞进行缓冲区溢出攻击,可能以守护进程权限在系统上执行任意指令。

问题存在于abook_dbname函数中,以如下方法调用sprintf()函数:

sprintf(dbname, abookdb, ownerlen, name, name);

abookdb定义如下:

static char abookdb[] = "user/%.*s/abook.%s";

在代码中几个函数使用abook_dbname()和提供256字节的本地字符缓冲作为函数的第一个参数,由于第二个参数"name"可以被用户控制,因此提交超长字符串作为"name"参数数据,可能以守护进程权限在系统上执行任意指令。

<*来源:Felix Lindner (felix@lindner.nruns.com
        Michael Guenther
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=107152175020448&w=2
*>

建议:
厂商补丁:

Carnegie Mellon University
--------------------------
此问题在Cyrus IMSP 1.6a4和1.7a版本中得到修正:

http://www.cmu.edu/computing/cyrus/cyrus.html

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