发布时间 :2003-04-11 00:00:00
修订时间 :2016-10-17 22:27:00

[原文]Integer signedness error in select() on OpenBSD 3.1 and earlier allows local users to overwrite arbitrary kernel memory via a negative value for the size parameter, which satisfies the boundary check as a signed integer, but is later used as an unsigned integer during a data copying operation.

[CNNVD]OpenBSD select系统调用本地缓冲区溢出漏洞(CNNVD-200304-083)


- CVSS (基础分值)

CVSS分值: 7.2 [严重(HIGH)]
机密性影响: COMPLETE [完全的信息泄露导致所有系统文件暴露]
完整性影响: COMPLETE [系统完整性可被完全破坏]
可用性影响: COMPLETE [可能导致系统完全宕机]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

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

cpe:/o:openbsd:openbsd:3.0OpenBSD 3.0
cpe:/o:openbsd:openbsd:3.1OpenBSD 3.1

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


- 官方数据库链接
(官方数据源) MITRE
(官方数据源) NVD
(官方数据源) CNNVD

- 其它链接及资源
(UNKNOWN)  BUGTRAQ  20020812 OpenBSD Security Advisory: Select Boundary Condition (fwd)
(VENDOR_ADVISORY)  XF  openbsd-select-bo(9809)

- 漏洞信息

OpenBSD select系统调用本地缓冲区溢出漏洞
高危 边界条件错误
2003-04-11 00:00:00 2005-05-13 00:00:00

- 公告与补丁

        * 暂时没有合适的临时解决方法。
        采用提供的内核补丁或者升级到3.0-stable或者从2002-08-11 17:00 EDT开始或者之后的3.1-stable。

- 漏洞信息

OpenBSD select() Integer Signedness Arbitrary Kernel Memory Overwrite
Local Access Required Input Manipulation
Loss of Integrity
Exploit Unknown

- 漏洞描述

A local overflow exists in OpenBSD. The select() system call fails to check bounds resulting in a buffer overflow. With a malformed size parameter sent to select(), an attacker can overwrite kernel memory resulting in a loss of integrity.

- 时间线

2002-08-11 Unknow
Unknow Unknow

- 解决方案

Currently, there are no known workarounds or upgrades to correct this issue. However, OpenBSD has released a patch to address this vulnerability.

- 相关参考

- 漏洞作者

Unknown or Incomplete

- 漏洞信息

OpenBSD select() Buffer Overflow Vulnerability
Boundary Condition Error 5442
No Yes
2002-08-12 12:00:00 2007-11-03 12:46:00
Vulnerability first detailed in OpenBSD security advisory dated 2002-08-11.

- 受影响的程序版本

OpenBSD OpenBSD 2.9
OpenBSD OpenBSD 3.1
OpenBSD OpenBSD 3.0

- 漏洞讨论

A buffer-overflow vulnerability has been reported for the 'select(2)' function. This function lets programmers examine I/O descriptors.

The size parameter for the 'select()' function is a signed integer. Reportedly, 'select()' evaluates the upper boundary checks in a signed context. As a result, an attacker can cause the kernel to overwrite arbitrary locations in memory when supplying 'select()' with certain negative values for the size parameter.

- 漏洞利用

Core Security Technologies has developed a working commercial exploit for its CORE IMPACT product. This exploit is not otherwise publicly available or known to be circulating in the wild.

- 解决方案

Users are advised to apply the available patches or to update their systems to OpenBSD 3.0-stable or 3.1-stable dated 2002-08-11 17:00 EDT or later.

OpenBSD OpenBSD 3.0

OpenBSD OpenBSD 3.1

- 相关参考