漏洞信息详情
Sun Solaris cachefsd远程堆缓冲区溢出漏洞
- CNNVD编号:CNNVD-200205-079
- 危害等级: 超危
- CVE编号:
CVE-2002-0033
- 漏洞类型:
边界条件错误
- 发布时间:
2002-05-29
- 威胁类型:
远程
- 更新时间:
2005-08-17
- 厂 商:
sun - 漏洞来源:
LSD contact@lsd-pl… -
漏洞简介
Sun Solaris 2.5.1、2.6、7和8 缺省自带和安装了cachefsd程序,它用来对通过NFS mount的远程文件系统的操作请求进行缓存。在Solaris系统下,cachefsd服务以RPC服务形式被安装,号码为100235。
Solaris cachefsd程序中存在一个可远程利用的堆缓冲区溢出漏洞。远程或本地攻击者可以向cachefsd程序发送一个畸形RPC请求来获取root权限。
cachefsd的第五个RCP服务函数:cachefsd_fs_mounted_1_svc()需要客户端提供两个字符串参数,一个是cache dir(这个表示要mount的目录名),一个是cache name(cache名)。cachefsd_fs_mounted_1_svc()会调用subr_add_mount()来增加远程mount点,subr_add_mount()又调用cfsd_fscache_create()函数来将这两个参数保存在一个fscache结构中(这个结构由函数cfsd_calloc()动态分配),然而,在保存参数时程序没有进行边界检查,而是直接调用strcpy()函数进行拷贝操作。如果攻击者提供超长的参数,就可能发生堆溢出,动态内存边界处的内存分配管理结构就会被覆盖,攻击者可能改变程序流程执行任意代码。
漏洞公告
临时解决方法:
如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
* 根据Sun提供的信息,禁止cachefsd服务只会对使用AutoClient的系统产生一些影响,而且只会对中断连接模式产生影响。它不会影响正常的mount和umount操作,只是在执行”mount -F cachefs…”命令时会报告”mount -F cachefs: cachefsd is not running”。
因此我们我们建议您在还没有安装补丁之前暂时关闭cachefsd服务。
具体方法是:
1. 转变成root用户
$ su –
#
2. 关闭cachefsd服务
使用您熟悉的编辑器打开/etc/inetd.conf文件,找到如下行:
100235/1 tli rpc/tcp wait root /usr/lib/fs/cachefs/cachefsd cachefsd
在该行的开始处增加”#”号来将其注释:
#100235/1 tli rpc/tcp wait root /usr/lib/fs/cachefs/cachefsd cachefsd
保存修改,退出编辑器。
3. 禁止cachefsd的执行权限(可选)
# chmod 000 /usr/lib/fs/cachefs/cachefsd
4. 重新启动inetd
# ps -ef|grep inetd
root 167 1 0 Oct 07 ? 0:07 /usr/sbin/inetd -s -t
# kill -HUP 167 (上面的例子中,167是inetd的pid)
如果已经有cachefsd进程在运行,最好将其杀掉。
# ps -ef|grep cachefsd
# kill
在Solaris 7或者8下,可以使用pkill命令来完成上面的操作:
$ pkill -HUP inetd
$ pkill cachefsd
厂商补丁:
Sun
—
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://sunsolve.sun.com/security” target=”_blank”>
http://sunsolve.sun.com/security
参考网址
来源:CERT/CC Advisory: CA-2002-11
名称: CA-2002-11
链接:http://www.cert.org/advisories/CA-2002-11.html
来源:US-CERT Vulnerability Note: VU#635811
名称: VU#635811
链接:http://www.kb.cert.org/vuls/id/635811
来源: sunsolve.sun.com
链接:http://sunsolve.sun.com/pub-cgi/retrieve.pl?doc=fsalert%2F44309
来源: BUGTRAQ
名称: 20020505 [LSD] Solaris cachefsd remote buffer overflow vulnerability
链接:http://archives.neohapsis.com/archives/bugtraq/2002-05/0026.html
来源: BID
名称: 4674
链接:http://www.securityfocus.com/bid/4674
来源: XF
名称: solaris-cachefsd-name-bo(8999)
链接:http://www.iss.net/security_center/static/8999.php
来源: US Government Resource: oval:org.mitre.oval:def:31
名称: oval:org.mitre.oval:def:31
链接:http://oval.mitre.org/repository/data/getDef?id=oval:org.mitre.oval:def:31
来源: US Government Resource: oval:org.mitre.oval:def:124
名称: oval:org.mitre.oval:def:124
链接:http://oval.mitre.org/repository/data/getDef?id=oval:org.mitre.oval:def:124