CVE-2002-1580
CVSS7.5
发布时间 :2004-06-14 00:00:00
修订时间 :2008-09-05 16:30:58
NMCOES    

[原文]Integer overflow in imapparse.c for Cyrus IMAP server 1.4 and 2.1.10 allows remote attackers to execute arbitrary code via a large length value that facilitates a buffer overflow attack, a different vulnerability than CVE-2002-1347.


[CNNVD]Cyrus IMAPD Pre-Login堆破坏漏洞(CNNVD-200406-049)

        
        Cyrus IMAPD是一款免费开放源代码Interactive Mail Access Protocol (IMAP)协议实现,可使用在Unix和Linux操作系统下。
        Cyrus IMAPD不充分处理登录超长字符串,远程攻击者可以利用这个漏洞对守护程序进行缓冲区溢出攻击,可能以IMAPD进程权限在系统上执行任意指令。
        攻击者连接IMAPD守护程序,在连接协商阶段发送超长登录字符串,可导致发生基于堆的缓冲区溢出,精心构建提交的字符串可以覆盖内存任意地址而以IMAPD进程权限在系统上执行任意指令。
        

- CVSS (基础分值)

CVSS分值: 7.5 [严重(HIGH)]
机密性影响: PARTIAL [很可能造成信息泄露]
完整性影响: PARTIAL [可能会导致系统文件被修改]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: [--]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)

cpe:/a:carnegie_mellon_university:cyrus_imap_server:2.1.10
cpe:/a:carnegie_mellon_university:cyrus_imap_server:1.4
cpe:/a:carnegie_mellon_university:cyrus_imap_server:2.0.16
cpe:/a:carnegie_mellon_university:cyrus_imap_server:2.1.9
cpe:/a:carnegie_mellon_university:cyrus_imap_server:2.0.12
cpe:/a:carnegie_mellon_university:cyrus_imap_server:1.5.19

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2002-1580
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2002-1580
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-200406-049
(官方数据源) CNNVD

- 其它链接及资源

http://www.kb.cert.org/vuls/id/740169
(VENDOR_ADVISORY)  CERT-VN  VU#740169
http://xforce.iss.net/xforce/xfdb/10744
(VENDOR_ADVISORY)  XF  cyrus-imap-preauth-bo(10744)
http://www.securityfocus.com/bid/6298
(VENDOR_ADVISORY)  BID  6298
http://www.securityfocus.com/archive/1/301864
(VENDOR_ADVISORY)  BUGTRAQ  20021202 pre-login buffer overflow in Cyrus IMAP server
http://www.debian.org/security/2002/dsa-215
(UNKNOWN)  DEBIAN  DSA-215
http://distro.conectiva.com.br/atualizacoes/?id=a&anuncio=000557
(VENDOR_ADVISORY)  CONECTIVA  CLA-2002:557
http://asg.web.cmu.edu/cyrus/download/imapd/changes.html
(UNKNOWN)  CONFIRM  http://asg.web.cmu.edu/cyrus/download/imapd/changes.html
http://distro.conectiva.com/atualizacoes/?id=a&anuncio=000557
(UNKNOWN)  CONECTIVA  000557

- 漏洞信息

Cyrus IMAPD Pre-Login堆破坏漏洞
高危 边界条件错误
2004-06-14 00:00:00 2005-10-31 00:00:00
远程  
        
        Cyrus IMAPD是一款免费开放源代码Interactive Mail Access Protocol (IMAP)协议实现,可使用在Unix和Linux操作系统下。
        Cyrus IMAPD不充分处理登录超长字符串,远程攻击者可以利用这个漏洞对守护程序进行缓冲区溢出攻击,可能以IMAPD进程权限在系统上执行任意指令。
        攻击者连接IMAPD守护程序,在连接协商阶段发送超长登录字符串,可导致发生基于堆的缓冲区溢出,精心构建提交的字符串可以覆盖内存任意地址而以IMAPD进程权限在系统上执行任意指令。
        

- 公告与补丁

        临时解决方法:
        如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
        * Timo Sirainen <tss@iki.fi>提供了如下第三方补丁:
        diff -ru cyrus-imapd-2.1.10-old/imap/imapparse.c cyrus-imapd-2.1.10/imap/imapparse.c
        --- cyrus-imapd-2.1.10-old/imap/imapparse.c 2002-06-24 21:58:41.000000000 +0300
        +++ cyrus-imapd-2.1.10/imap/imapparse.c 2002-11-29 00:20:44.000000000 +0200
        @@ -97,7 +97,7 @@
         struct buf *buf, int type)
         {
         int c;
        - int i;
        + unsigned int i;
         unsigned int len = 0;
         int sawdigit = 0;
         int isnowait;
        @@ -228,6 +228,16 @@
         if (c != EOF) prot_ungetc(c, pin);
         return EOF;
         }
        + if (len > 65536) {
        + if (isnowait) {
        + for (i = 0; i < len; i++)
        + c = prot_getc(pin);
        + }
        + prot_printf(pout, "* BAD Literal too large\r\n");
        + prot_flush(pout);
        + if (c != EOF) prot_ungetc(c, pin);
        + return EOF;
        + }
         if (len >= buf->alloc) {
         buf->alloc = len+1;
         buf->s = xrealloc(buf->s, buf->alloc+1);
        厂商补丁:
        Debian
        ------
        Debian已经为此发布了一个安全公告(DSA-215-1)以及相应补丁:
        DSA-215-1:New cyrus-imapd packages fix remote command execution
        链接:
        http://www.debian.org/security/2002/dsa-215

        补丁下载:
        Source archives:
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-imapd_1.5.19-2.2.dsc

        Size/MD5 checksum: 681 7ed2dc53009118f622c466c7490910eb
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-imapd_1.5.19-2.2.diff.gz

        Size/MD5 checksum: 15807 75de24bbbf6906b2dcbc58ff94480faa
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-imapd_1.5.19.orig.tar.gz

        Size/MD5 checksum: 526190 b789ea3868be439c27b24a8aa6d0b99f
        Alpha architecture:
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-admin_1.5.19-2.2_alpha.deb

        Size/MD5 checksum: 42610 042e48cefd32648ad22780b2dd75d3e4
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-common_1.5.19-2.2_alpha.deb

        Size/MD5 checksum: 570800 37eba3e8c00ceee87637527fda215e90
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-dev_1.5.19-2.2_alpha.deb

        Size/MD5 checksum: 83332 2d5105eebbace38839fe45897898560d
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-imapd_1.5.19-2.2_alpha.deb

        Size/MD5 checksum: 165502 58d468b7568031ef6ebfb6d162a87ea2
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-nntp_1.5.19-2.2_alpha.deb

        Size/MD5 checksum: 165366 a99934002ff65416f62949b48e161c2d
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-pop3d_1.5.19-2.2_alpha.deb

        Size/MD5 checksum: 78606 5616b0c2232bf237cd62aa79c60a74f6
        ARM architecture:
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-admin_1.5.19-2.2_arm.deb

        Size/MD5 checksum: 38378 68c99d95c4bc94244aa11531643e752a
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-common_1.5.19-2.2_arm.deb

        Size/MD5 checksum: 427770 29731f1cd6ee7a1bc18fd43d21a30d99
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-dev_1.5.19-2.2_arm.deb

        Size/MD5 checksum: 77060 c3ef8e84ea192e1792811c889b7e64f6
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-imapd_1.5.19-2.2_arm.deb

        Size/MD5 checksum: 130436 f4424382f2945d196ce68d9dfe51ce04
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-nntp_1.5.19-2.2_arm.deb

        Size/MD5 checksum: 126334 290490d751199efae7feb518fe5e209a
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-pop3d_1.5.19-2.2_arm.deb

        Size/MD5 checksum: 59246 55abe9bb680c1bf75a1d8ccda8d5c0ef
        Intel IA-32 architecture:
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-admin_1.5.19-2.2_i386.deb

        Size/MD5 checksum: 37840 c86d3b23d50017c4caefebaffaa52c88
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-common_1.5.19-2.2_i386.deb

        Size/MD5 checksum: 409216 e03b8b803fdd52b16f0da981a32d7cbd
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-dev_1.5.19-2.2_i386.deb

        Size/MD5 checksum: 72742 7b41f08a21aab4683c60e0ff0c87f4ad
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-imapd_1.5.19-2.2_i386.deb

        Size/MD5 checksum: 121794 a1afc55e62e68546e1f746bebf215010
        
        http://security.debian.org/pool/updates/non-free/c/cyrus-imapd/cyrus-nntp_1.5.19-2.2_i386.deb

        Size/MD5 checksum: 

- 漏洞信息 (22061)

Cyrus IMAPD 1.4/1.5.19/2.0.12/2.0.16/2.1.9/2.1.10 Pre-Login Heap Corruption Vulnerability (EDBID:22061)
linux dos
2002-12-02 Verified
0 Timo Sirainen
N/A [点击下载]
source: http://www.securityfocus.com/bid/6298/info

Cyrus IMAPD is a freely available, open source Interactive Mail Access Protocol (IMAP) daemon. It is available for Unix and Linux operating systems.

It has been reported that Cyrus IMAPD does not sufficiently handle overly long strings. In some cases, when a user connects to the daemon, and upon negotiating the connection sends a login string of excessive length, a buffer overflow occurs. This could result in heap corruption and arbitrary words in memory being overwritten. It may be possible to exploit this issue to execute arbitrary code.

perl -e 'print "x login {4294967295}\r\n\xf0\xef\xff\xbf\x90\xef\xff\xbf\xfc\xff\xff\xff\xfc\xff\xff\xff";'|nc localhost imap2
<ctrl-c>		

- 漏洞信息

55701
Cyrus IMAP Server login Command Remote Overflow
Remote / Network Access Input Manipulation
Loss of Integrity Third-Party Solution
Vendor Verified

- 漏洞描述

- 时间线

2002-12-02 Unknow
Unknow Unknow

- 解决方案

Upgrade to version 2.1.11 or higher, as it has been reported to fix this vulnerability. An upgrade is required as there are no known workarounds.

- 相关参考

- 漏洞作者

Unknown or Incomplete

- 漏洞信息

Cyrus IMAPD Pre-Login Heap Corruption Vulnerability
Boundary Condition Error 6298
Yes No
2002-12-02 12:00:00 2009-07-11 07:16:00
Vulnerability discovery credited to Timo Sirainen <tss@iki.fi>.

- 受影响的程序版本

Carnegie Mellon University Cyrus IMAP Server 2.1.10
Carnegie Mellon University Cyrus IMAP Server 2.1.9
+ S.u.S.E. Linux 8.1
Carnegie Mellon University Cyrus IMAP Server 2.0.16
+ S.u.S.E. Linux 8.0 i386
+ S.u.S.E. Linux 7.3 sparc
+ S.u.S.E. Linux 7.3 ppc
+ S.u.S.E. Linux 7.3 i386
Carnegie Mellon University Cyrus IMAP Server 2.0.12
+ S.u.S.E. Linux 7.1 x86
+ S.u.S.E. Linux 7.1 ppc
+ S.u.S.E. Linux 7.1 alpha
Carnegie Mellon University Cyrus IMAP Server 1.5.19
+ Debian Linux 3.0
+ Debian Linux 2.2
Carnegie Mellon University Cyrus IMAP Server 1.4

- 漏洞讨论

Cyrus IMAPD is a freely available, open source Interactive Mail Access Protocol (IMAP) daemon. It is available for Unix and Linux operating systems.

It has been reported that Cyrus IMAPD does not sufficiently handle overly long strings. In some cases, when a user connects to the daemon, and upon negotiating the connection sends a login string of excessive length, a buffer overflow occurs. This could result in heap corruption and arbitrary words in memory being overwritten. It may be possible to exploit this issue to execute arbitrary code.

- 漏洞利用

The following proof of concept has been made available by Timo Sirainen &lt;tss@iki.fi&gt;:

perl -e 'print "x login {4294967295}\r\n\xf0\xef\xff\xbf\x90\xef\xff\xbf\xfc\xff\xff\xff\xfc\xff\xff\xff";'|nc localhost imap2
&lt;ctrl-c&gt;

- 解决方案

Debian has released an advisory (DSA 215-1) which contains fixes. Information about obtaining and applying these fixes can be found in the attached advisory.

Fixes are available:


Carnegie Mellon University Cyrus IMAP Server 1.5.19

Carnegie Mellon University Cyrus IMAP Server 2.0.12

Carnegie Mellon University Cyrus IMAP Server 2.0.16

Carnegie Mellon University Cyrus IMAP Server 2.1.9

- 相关参考

 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站