首页 -> 安全研究
安全研究
安全漏洞
NetBSD IPv4多播工具缓冲区溢出漏洞
发布日期:2002-09-17
更新日期:2002-09-23
受影响系统:
NetBSD NetBSD 1.6 beta不受影响系统:
NetBSD NetBSD 1.5.3
NetBSD NetBSD 1.5.2
NetBSD NetBSD 1.5.1
NetBSD NetBSD 1.5 x86
NetBSD NetBSD 1.5 sh3
NetBSD NetBSD 1.5
NetBSD NetBSD 1.4.3
NetBSD NetBSD 1.4.2 x86
NetBSD NetBSD 1.4.2 SPARC
NetBSD NetBSD 1.4.2 arm32
NetBSD NetBSD 1.4.2 Alpha
NetBSD NetBSD 1.4.2
NetBSD NetBSD 1.4.1 x86
NetBSD NetBSD 1.4.1 SPARC
NetBSD NetBSD 1.4.1 sh3
NetBSD NetBSD 1.4.1 arm32
NetBSD NetBSD 1.4.1 Alpha
NetBSD NetBSD 1.4.1
NetBSD NetBSD 1.4 x86
NetBSD NetBSD 1.4 SPARC
NetBSD NetBSD 1.4 arm32
NetBSD NetBSD 1.4 Alpha
NetBSD NetBSD 1.4
NetBSD NetBSD 1.6描述:
BUGTRAQ ID: 5727
CVE(CAN) ID: CVE-2002-1500
NetBSD是一款开放源代码的操作系统。
NetBSD多个IPv4多播程序在执行FD_SET()函数时缺少正确边界检查,攻击者可以利用这个漏洞进行缓冲区溢出攻击,可能以root用户权限在系统上执行任意指令。
IPv4多播相关工具如mrinfo(1)和mtrace(1), 以及PPPD都是以suid root权限安装,这些工具使用了select(2),select(2)使用fd_set描述字符集,这个描述字符集支持FD_SETSIZE (256)个文件描述符,这些工具当执行FD_SET()操作的时候没有很好的对缓冲区边界进行检查,如果select(2)使用的文件描述符超过FD_SETSIZE定义的大小,就可以导致产生缓冲区溢出,利用这些程序可能以root用户权限在系统上执行任意指令。
<*链接:ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2002-014.txt.asc
*>
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 如果你不打算和计划使用多播相关的工具或者pppd,可使用暂时去除相关SETUID位进行修补:
# chmod u-s /usr/sbin/mrinfo /usr/sbin/mtrace /usr/sbin/pppd
厂商补丁:
NetBSD
------
NetBSD已经为此发布了一个安全公告(NetBSD-SA2002-014)以及相应补丁:
NetBSD-SA2002-014:fd_set overrun in mbone tools and pppd
链接:ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2002-014.txt.asc
最新的NetBSD 1.6 release不存在此漏洞,建议用户升级到NetBSD 1.6版本。
否则你可以通过升级你的源代码树,重建和安装新的版本来更新二进制程序:
* NetBSD-current:
系统运行在2002-08-10之前的NetBSD-current版本必须升级到2002-08-10 NetBSD-current版本或者之后的版本。
下面的目录必须从netbsd-current CVS branch (aka HEAD)升级:
usr.sbin/mrinfo
usr.sbin/mtrace
usr.sbin/pppd
要升级CVS,重建和重安装mrinfo和mtrace:
# cd src
# cvs update -dP usr.sbin/mrinfo usr.sbin/mtrace usr.sbin/pppd
# cd usr.sbin/mrinfo
# make cleandir dependall
# make install
# cd usr.sbin/mtrace
# make cleandir dependall
# make install
# cd usr.sbin/pppd
# make cleandir dependall
# make install
* NetBSD 1.6 beta:
系统运行NetBSD 1.6 BETAs和Release Candidates版本必须升级到NetBSD 1.6 release版本。
下面的目录必须从netbsd-1-6 CVS branch上升级:
usr.sbin/mrinfo
usr.sbin/mtrace
usr.sbin/pppd
要升级CVS,重建和重安装mrinfo和mtrace:
# cd src
# cvs update -d -P -r netbsd-1-6 \
usr.sbin/mrinfo usr.sbin/mtrace usr.sbin/pppd
# cd usr.sbin/mrinfo
# make cleandir dependall
# make install
# cd usr.sbin/mtrace
# make cleandir dependall
# make install
# cd usr.sbin/pppd
# make cleandir dependall
# make install
* NetBSD 1.5, 1.5.1, 1.5.2, 1.5.3:
系统运行在2002-09-05之前的NNetBSD 1.5 branch版本必须升级到2002-09-05 NetBSD 1.5 branch版本或者之后的版本。
下面的目录必须从netbsd-1-5 CVS branch升级:
usr.sbin/mrinfo
usr.sbin/mtrace
usr.sbin/pppd
要升级CVS,重建和重安装mrinfo和mtrace:
# cd src
# cvs update -d -P -r netbsd-1-5 \
usr.sbin/mrinfo usr.sbin/mtrace usr.sbin/pppd
# cd usr.sbin/mrinfo
# make cleandir dependall
# make install
# cd usr.sbin/mtrace
# make cleandir dependall
# make install
# cd usr.sbin/pppd
# make cleandir dependall
# make install
* NetBSD 1.4.x:
尚无
浏览次数:3107
严重程度:0(网友投票)
绿盟科技给您安全的保障