CVE-2002-1490
CVSS2.1
发布时间 :2003-04-02 00:00:00
修订时间 :2008-09-05 16:30:44
NMCOS    

[原文]NetBSD 1.4 through 1.6 beta allows local users to cause a denial of service (kernel panic) via a series of calls to the TIOCSCTTY ioctl, which causes an integer overflow in a structure counter and sets the counter to zero, which frees memory that is still in use by other processes.


[CNNVD]NetBSD重复调用TIOSCTTY IOCTL缓冲区溢出漏洞(CNNVD-200304-019)

        
        NetBSD是一款开放源代码的操作系统。
        会话进程在调用TIOCSCTTY ioctl缺少正确处理,本地攻击者可以利用这个漏洞进行缓冲区溢出攻击,可以导致内核崩溃。
        一个进程通过派生一个子进程并父进程退出来启动新的会话,新的子进程然后调用setsid(2)建立一个新的会话,因此成为会话发起者(session leader),子进程然后再调用TIOCSCTTY ioctl。
        在多个进程之间共享的结构(如会话结构)一般包含一个计数器来跟踪一个结构有多少次被引用,典型的情况下,NetBSD中使用宏来增加/递减使用的计数器,然后当计数器归零的时候结构被释放。
        通过多次重复调用TIOCSCTTY,当进程退出的时候可使整数计数器溢出,导致计数器归零,并且即使其他进程仍旧引用的情况下结构也被释放,根据内核选项,这可立即导致内存被垃圾数据覆盖,或者当内存分配给其他进程的时候被随机数据覆盖,可导致内核崩溃。
        <*链接:ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2002-007.txt.asc
        *>

- CVSS (基础分值)

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

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

cpe:/o:netbsd:netbsd:1.4.1NetBSD 1.4.1
cpe:/o:netbsd:netbsd:1.6:betaNetBSD 1.6 Beta
cpe:/o:netbsd:netbsd:1.4.1::arm32
cpe:/o:netbsd:netbsd:1.5.3NetBSD 1.5.3
cpe:/o:netbsd:netbsd:1.4.2::sparc
cpe:/o:netbsd:netbsd:1.4.2::alpha
cpe:/o:netbsd:netbsd:1.4.1::alpha
cpe:/o:netbsd:netbsd:1.4::arm32
cpe:/o:netbsd:netbsd:1.4::sparc
cpe:/o:netbsd:netbsd:1.5NetBSD 1.5
cpe:/o:netbsd:netbsd:1.5::sh3
cpe:/o:netbsd:netbsd:1.4.1::x86
cpe:/o:netbsd:netbsd:1.5.2NetBSD 1.5.2
cpe:/o:netbsd:netbsd:1.4::x86
cpe:/o:netbsd:netbsd:1.4.1::sparc
cpe:/o:netbsd:netbsd:1.4.2::arm32
cpe:/o:netbsd:netbsd:1.5.1NetBSD 1.5.1
cpe:/o:netbsd:netbsd:1.4.2::x86
cpe:/o:netbsd:netbsd:1.4::alpha
cpe:/o:netbsd:netbsd:1.4.3NetBSD 1.4.3
cpe:/o:netbsd:netbsd:1.4.1::sh3
cpe:/o:netbsd:netbsd:1.4NetBSD 1.4
cpe:/o:netbsd:netbsd:1.5::x86
cpe:/o:netbsd:netbsd:1.4.2NetBSD 1.4.2

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

未找到相关OVAL定义

- 官方数据库链接

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

- 其它链接及资源

http://www.securityfocus.com/bid/5722
(VENDOR_ADVISORY)  BID  5722
http://www.iss.net/security_center/static/10115.php
(VENDOR_ADVISORY)  XF  netbsd-tiocsctty-ioctl-bo(10115)
http://www.osvdb.org/7566
(UNKNOWN)  OSVDB  7566
ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2002-007.txt.asc
(UNKNOWN)  NETBSD  NetBSD-SA2002-007

- 漏洞信息

NetBSD重复调用TIOSCTTY IOCTL缓冲区溢出漏洞
低危 边界条件错误
2003-04-02 00:00:00 2005-05-13 00:00:00
本地  
        
        NetBSD是一款开放源代码的操作系统。
        会话进程在调用TIOCSCTTY ioctl缺少正确处理,本地攻击者可以利用这个漏洞进行缓冲区溢出攻击,可以导致内核崩溃。
        一个进程通过派生一个子进程并父进程退出来启动新的会话,新的子进程然后调用setsid(2)建立一个新的会话,因此成为会话发起者(session leader),子进程然后再调用TIOCSCTTY ioctl。
        在多个进程之间共享的结构(如会话结构)一般包含一个计数器来跟踪一个结构有多少次被引用,典型的情况下,NetBSD中使用宏来增加/递减使用的计数器,然后当计数器归零的时候结构被释放。
        通过多次重复调用TIOCSCTTY,当进程退出的时候可使整数计数器溢出,导致计数器归零,并且即使其他进程仍旧引用的情况下结构也被释放,根据内核选项,这可立即导致内存被垃圾数据覆盖,或者当内存分配给其他进程的时候被随机数据覆盖,可导致内核崩溃。
        <*链接:ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2002-007.txt.asc
        *>

- 公告与补丁

        厂商补丁:
        NetBSD
        ------
        NetBSD已经为此发布了一个安全公告(NetBSD-SA2002-007)以及相应补丁:
        NetBSD-SA2002-007:Repeated TIOCSCTTY ioctl can corrupt session hold counts
        链接:ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2002-007.txt.asc
        最新的NetBSD 1.6 release不存在此漏洞,建议用户升级到NetBSD 1.6版本。
        否则你必须对内核源代码进行升级,重建和安装新的内核,一旦内核源代码更新后,安装如下指示进行内核重建和安装:
        
        http://www.netbsd.org/Documentation/kernel/#how_to_build_a_kernel

        * NetBSD-current:
         系统运行在2002-07-21之前的NetBSD-current版本必须升级到2002-07-21 NetBSD-current版本或者之后的版本。
        
         下面的目录必须从netbsd-current CVS branch (aka HEAD)升级:
         src/sys/kern/
        
         或者采用如下补丁:
        
         ftp://ftp.netbsd.org/pub/NetBSD/security/patches/SA2002-007-tiocsctty.patch
        
         对文件进行补丁修复:
        
         # cd src/sys
         # patch < /path/to/SA2002-007-tiocsctty.patch
        
         按照如下方法配置,编译,安装和重新启动新内核:
        
        
        http://www.netbsd.org/Documentation/kernel/#building_a_kernel

        * NetBSD 1.6 beta:
        
         系统运行NetBSD 1.6 BETAs和Release Candidates版本必须升级到NetBSD 1.6 release版本。
        
        
         下面的目录必须从netbsd-1-6 CVS branch上升级:
         src/sys/kern/
        
         或者采用如下补丁:
        
         ftp://ftp.netbsd.org/pub/NetBSD/security/patches/SA2002-007-tiocsctty.patch
        
         对文件进行补丁修复:
        
         # cd src/sys
         # patch < /path/to/SA2002-007-tiocsctty.patch
        
         按照如下方法配置,编译,安装和重新启动新内核:
        
        
        http://www.netbsd.org/Documentation/kernel/#building_a_kernel

        
        * 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升级:
         src/sys/kern/
        
         或者采用如下补丁:
        
         ftp://ftp.netbsd.org/pub/NetBSD/security/patches/SA2002-007-tiocsctty.patch
        
         对文件进行补丁修复:
        
         # cd src/sys
         # patch < /path/to/SA2002-007-tiocsctty.patch
        
         按照如下方法配置,编译,安装和重新启动新内核:
        
        
        http://www.netbsd.org/Documentation/kernel/#building_a_kernel

        * NetBSD 1.4.x:
         尚无

- 漏洞信息

7566
NetBSD TIOCSCTTY ioctl Overflow DoS
Local Access Required Denial of Service, Input Manipulation
Loss of Integrity, Loss of Availability
Exploit Public

- 漏洞描述

NetBSD contains a flaw that may allow a local denial of service. The issue is triggered when a long series of system calls are made to the TIOCSCTTY ioctl. This can cause an integer overflow in a structure counter, setting the counter to zero. This in turn frees memory still in use by other processes, causing a kernel panic, and will result in loss of availability for the platform.

- 时间线

2002-09-16 Unknow
2002-09-16 Unknow

- 解决方案

Upgrade to version 1.6 or higher, as it has been reported to fix this vulnerability. It is also possible to correct the flaw by applying the vendor-supplied patch.

- 相关参考

- 漏洞作者

- 漏洞信息

NetBSD Repeated TIOSCTTY IOCTL Buffer Overflow Vulnerability
Boundary Condition Error 5722
No Yes
2002-09-17 12:00:00 2009-07-11 05:06:00
Discovery of this vulnerability credited to David Laight.

- 受影响的程序版本

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

- 不受影响的程序版本

NetBSD NetBSD 1.6

- 漏洞讨论

A call to TIOSCTTY will increment the hold count of a kernel structure shared between processes in the same session. Thus, repeated calls to TIOSCTTY will cause an internal buffer to be incremented indefinitely and overflow. The flaw will allow a local attacker to cause the memory structure to be freed prematurely. This may cause a kernel panic or cause faulty teminal sessions.

- 漏洞利用

Currently we are not aware of any exploits for this issue. If you feel we are in error or are aware of more recent information, please mail us at: vuldb@securityfocus.com &lt;mailto:vuldb@securityfocus.com&gt;.

- 解决方案

Users of NetBSD are strongly urged to upgrade to NetBSD 1.6. Further details are available in the referenced advisory.

- 相关参考

     

     

    关于SCAP中文社区

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

    版权声明

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