首页 -> 安全研究

安全研究

安全漏洞
irc2 SERVER命令参数远程缓冲区溢出漏洞

发布日期:2003-02-07
更新日期:2003-02-12

受影响系统:
Dalnet ircd 4.4.5
Dalnet ircd 4.4.10
irc2 irc2 2.8.21
不受影响系统:
Dalnet ircd 4.6.7
Dalnet ircd 4.6.5
Dalnet ircd 4.4.11
描述:
BUGTRAQ  ID: 6804

irc2是一款流行的IRC服务程序。

由于对服务器端'SERVER'命令的参数缺少正确边界缓冲区检查,远程攻击者可以利用这个漏洞进行缓冲区溢出攻击,可能以IRC进程权限在系统上执行任意指令。

攻击者提供超长的字符串作为'SERVER'命令的参数,可触发基于堆栈的缓冲区溢出,导致产生拒绝服务或以IRCD权限在系统上执行任意指令。

<*来源:Andy Church (achurch@dragonfire.net
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=87602558319195&w=2
*>

建议:
临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* Andy Church <achurch@dragonfire.net>提供如下第三方补丁:

--- src/s_serv.c.old    Sun Dec  8 21:06:55 1996
+++ src/s_serv.c        Tue Jul  1 00:42:16 1997
@@ -282,15 +282,17 @@
            {
                hop = atoi(parv[2]);
                (void)strncpy(info, parv[3], REALLEN);
+               info[REALLEN] = 0;
            }
        else if (parc > 2)
            {
-               (void)strncpy(info, parv[2], REALLEN);
+               (void)strncpy(info, parv[2], REALLEN-2);
+               info[REALLEN-2] = 0;
                if (parc > 3)
                    {
-                               i = strlen(info);
-                               (void)strncat(info, " ", REALLEN - i - 1);
-                               (void)strncat(info, parv[3], REALLEN - i - 2);
+                       (void)strcat(info, " ");
+                       (void)strncat(info, parv[3], REALLEN-strlen(info));
+                       info[REALLEN] = 0;
                    }
            }
        /*

厂商补丁:

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

http://bahamut.dal.net/

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