CVE-2002-1674
CVSS1.2
发布时间 :2002-12-31 00:00:00
修订时间 :2008-09-05 16:31:13
NMCO    

[原文]procfs on FreeBSD before 4.5 allows local users to cause a denial of service (kernel panic) by removing a file that the fstatfs function refers to.


[CNNVD]FreeBSD fstatfs 内核函数竞争条件漏洞(CNNVD-200212-173)

        
        FreeBSD 内核中包含一个fstatfs()函数,用来获取文件系统的状态信息。procfs是进程文件系统,它提供了一个指向系统进程表以及相关数据的文件系统接口。
        在fstatfs函数中存在一个竞争条件,可能导致本地内核崩溃,造成拒绝服务。
        在调用fstatfs()函数以及某文件被访问之间,该文件可以被删除,这将造成文件描述符变得无效。目前已知procfs文件系统受到此问题影响,当procfs被装载时,本地未授权用户可以造成内核崩溃。
        

- CVSS (基础分值)

CVSS分值: 1.2 [轻微(LOW)]
机密性影响: NONE [对系统的机密性无影响]
完整性影响: NONE [不会对系统完整性产生影响]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: HIGH [漏洞利用存在特定的访问条件]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)

cpe:/o:freebsd:freebsd:4.2FreeBSD 4.2
cpe:/o:freebsd:freebsd:4.4FreeBSD 4.4
cpe:/o:freebsd:freebsd:4.3FreeBSD 4.3
cpe:/o:freebsd:freebsd:4.1.1FreeBSD 4.1.1
cpe:/o:freebsd:freebsd:4.5FreeBSD 4.5
cpe:/o:freebsd:freebsd:4.1FreeBSD 4.1

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2002-1674
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2002-1674
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-200212-173
(官方数据源) CNNVD

- 其它链接及资源

http://xforce.iss.net/xforce/xfdb/8112
(PATCH)  XF  bsd-fstatfs-dos(8112)
http://www.securityfocus.com/bid/4040
(PATCH)  BID  4040
ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-02:09.fstatfs.asc
(VENDOR_ADVISORY)  FREEBSD  FreeBSD-SA-02:09

- 漏洞信息

FreeBSD fstatfs 内核函数竞争条件漏洞
低危 竞争条件
2002-12-31 00:00:00 2005-10-20 00:00:00
本地  
        
        FreeBSD 内核中包含一个fstatfs()函数,用来获取文件系统的状态信息。procfs是进程文件系统,它提供了一个指向系统进程表以及相关数据的文件系统接口。
        在fstatfs函数中存在一个竞争条件,可能导致本地内核崩溃,造成拒绝服务。
        在调用fstatfs()函数以及某文件被访问之间,该文件可以被删除,这将造成文件描述符变得无效。目前已知procfs文件系统受到此问题影响,当procfs被装载时,本地未授权用户可以造成内核崩溃。
        

- 公告与补丁

        临时解决方法:
        如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
        * 以root身份使用umount(8)命令写在所有的procfs文件系统:
         # umount -f -a -t procfs
         在/etc/fstab中禁止自动加载procfs文件系统,删除或者注释掉下列行:
         proc /proc procfs rw 0 0
        * 禁止不可信用户获取系统访问权限。
        厂商补丁:
        FreeBSD
        -------
        FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-02:09)以及相应补丁:
        FreeBSD-SA-02:09:fstatfs race condition may allow local denial of service via procfs
        链接:ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-02:09.fstatfs.asc
        您可以使用下列任意一种方法修复此安全漏洞:
        1) 将受影响的系统升级到修正日期(2002-01-07)后发布的4.5-RELEASE 、4.5-STABLE、 RELENG_4_5、RELENG_4_4、RELENG_4_3。
        2) 修正日期(2002-01-07)前发布的FreeBSD 4.x系统:
        下列补丁适用于修正日期前发布的FreeBSD 4.x系统。
        它们可能不适用于已淘汰的,不再受支持的FreeBSD版本。
        请从下列地址下载补丁和分离的PGP签名,并用你的PGP工具核实签名。
        # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:09/fstatfs.patch
        # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-02:09/fstatfs.patch.asc
        以root身份执行下列命令:
        Execute the following commands as root:
        # cd /usr/src
        # patch -p < /path/to/patch
        如果procfs被静态编译进入kernel(例如,内核配置文件包含'options PROCFS'行),您应当按照
        http://www.freebsd.org/handbook/kernelconfig.html
中的描述重建并重新安装内核,然后使用新内核重新启动系统以使改变生效。
        如果procfs是使用KLD(使用kldstat命令检查是否是这种情况)动态加载的,而且系统安全等级没有提升,系统可以实时修复无需重启。您可以在安装了上述源码补丁之后执行下列命令进行操作:
        # cd /usr/src/sys/modules/procfs
        # make depend && make all install
        # umount -f -a -t procfs
        # kldunload procfs
        # kldload procfs
        # mount -a -t procfs

- 漏洞信息

21359
FreeBSD procfs fstatfs Function Local DoS
Local Access Required Denial of Service, Race Condition
Loss of Availability

- 漏洞描述

FreeBSD contains a flaw that may allow a local denial of service. The issue is triggered when a malicious user removes a file that fstatfs intends to access before fstatfs can actually access it, resulting in a loss of availability for the platform.

- 时间线

2002-02-06 Unknow
Unknow Unknow

- 解决方案

Upgrade to version 4.5-RELEASE or 4.5-STABLE, or the RELENG_4_5, RELENG_4_4, or RELENG_4_3 security branches dated after their respective correction dates, as it has been reported to fix this vulnerability. In addition, FreeBSD has released a patch for some older versions. It is also possible to correct the flaw by implementing the following workaround: umount -f -a -t procfs Disable the automatic mounting of all instances of procfs in /etc/fstab, remove or comment out the line(s) of the following form: proc /proc procfs rw 0 0

- 相关参考

- 漏洞作者

 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站