FreeBSD kqueue机制本地拒绝服务漏洞

漏洞信息详情

FreeBSD kqueue机制本地拒绝服务漏洞

漏洞简介

FreeBSD 提供了一个kqueue机制使进程可以对感兴趣的与特定文件描述符有关的特定事件进行注册,并在与所选描述符有关的这些事件发生时接收异步通知。
FreeBSD 4.6以及以前的系统中kqueue实现中存在一个安全漏洞,可能允许本地攻击者使系统崩溃。
如果pipe(2)系统调用创建了一个管道,且该管道一端被封闭,那么在管道另一端注册EVFILT_WRITE过滤器就会导致kernel崩溃。常出现这一问题的情况是进程使用一个管道与子进程进行通信时使用kqueue监视该管道,而子进程在fork(2)调用后不久就已经死掉,而这时父进程还没来得及注册该过滤器。任意一个本地用户都可以运行恶意程序使系统崩溃。

漏洞公告

临时解决方法:
本漏洞没有合适的临时解决方案,只能限制不可信用户登陆您的系统。
厂商补丁:
FreeBSD
——-
FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-02:37)以及相应补丁:

FreeBSD-SA-02:37:local users can panic the system using the kqueue mechanism

链接:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-02:37.kqueue.asc

补丁下载:

经检验,下列补丁适用于FreeBSD 4.4、4.5和4.6系统。

a) 从下列地址下载相应的补丁并用你的PGP工具核实分开的PGP签名。

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:37/kqueue.patch

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:37/kqueue.patch.asc

b) 安装补丁。

# cd /usr/src

# patch < /path/to/patch

c) 按照下列描述重新编写kernel并重启系统:

URL:http://www.freebsd.org/handbook/kernelconfig.html” target=”_blank”>
http://www.freebsd.org/handbook/kernelconfig.html

参考网址

来源: FREEBSD
名称: FreeBSD-SA-02:37.kqueue
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=102865142610126&w=2

来源: BID
名称: 5405
链接:http://www.securityfocus.com/bid/5405

来源: OSVDB
名称: 5069
链接:http://www.osvdb.org/5069

来源: XF
名称: freebsd-kqueue-dos(9774)
链接:http://www.iss.net/security_center/static/9774.php

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享