Dalnet IRC Server "SUMMON"缓冲溢出漏洞发布时间:2000-09-15 更新时间:2000-09-15 严重程度:高 威胁程度:远程管理员权限 错误类型:输入验证错误 利用方式:服务器模式 受影响系统 Dalnet ircd 4.6.5详细描述 Dalnet ircd 是一个流行的INTERNET聊天应用程序IRC,其中有一个实现特征,即使 SUMMON命令,这个命令存在一个漏洞可以授权攻击者远程访问运行此服务程序的 主机。这个缓冲溢出比较难利用,因为SHELLCODE必须分开为多个变量,其中一个 是主机名,再重建内存和在堆栈上执行。并且,SUMMONS命令在此服务程序中也不是 默认使用的。它在编译时来定义是否使用。 测试代码 可以使用下面的程序进行测试: http://www.securityfocus.com/data/vulnerabilities/exploits/dalnet465partial-exp.c 解决方案 Matt Conover <shok@cannabis.dataforce.net>提供了补丁: Apply the patch to following to s_bsd.c: --- s_bsd.old.c Mon Nov 1 17:34:19 1999 +++ s_bsd.c Mon Nov 1 17:35:39 1999 @@ -2327,7 +2327,7 @@ sendto_one(who, wrerr, who->name); return; } - (void)sprintf(line, "ircd: Channel %s, by %s@%s (%s) %s\n\r", + (void)snprintf(line, sizeof(line), "ircd: Channel %s, by %s@%s (%s) %s\n\r", chname, who->user->username, who->user->host, who->name, who->info); if (write(fd, line, strlen(line)) != strlen(line)) { 相关信息 |