发布时间 :2003-04-22 00:00:00
修订时间 :2008-09-05 16:30:42

[原文]Buffer overflow in setlocale in libc on NetBSD 1.4.x through 1.6, and possibly other operating systems, when called with the LC_ALL category, allows local attackers to execute arbitrary code via a user-controlled locale string that has more than 6 elements, which exceeds the boundaries of the new_categories category array, as exploitable through programs such as xterm and zsh.

[CNNVD]NetBSD LibC SetLocale缓冲区溢出漏洞(CNNVD-200304-115)

        运行于NetBSD 1.4.x至1.6版本和可能其他操作系统的libc的setlocale存在缓冲区溢出漏洞。当调用LC_ALL类型时,本地用户可以借助超过6个元素的用户控制locale字符串执行任意代码,该字符串属于越界的new_categories类型数组,就像xterm和zsh程序中使用一样。

- CVSS (基础分值)

CVSS分值: 4.6 [中等(MEDIUM)]
机密性影响: PARTIAL [很可能造成信息泄露]
完整性影响: PARTIAL [可能会导致系统文件被修改]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

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

cpe:/o:netbsd:netbsd:1.5.2NetBSD 1.5.2
cpe:/o:netbsd:netbsd:1.6:betaNetBSD 1.6 Beta
cpe:/o:netbsd:netbsd:1.5.3NetBSD 1.5.3
cpe:/o:netbsd:netbsd:1.5.1NetBSD 1.5.1
cpe:/o:netbsd:netbsd:1.5NetBSD 1.5
cpe:/o:netbsd:netbsd:1.4NetBSD 1.4

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


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

- 其它链接及资源
(VENDOR_ADVISORY)  XF  netbsd-libc-setlocale-bo(10159)

- 漏洞信息

NetBSD LibC SetLocale缓冲区溢出漏洞
中危 缓冲区溢出
2003-04-22 00:00:00 2005-05-13 00:00:00
        运行于NetBSD 1.4.x至1.6版本和可能其他操作系统的libc的setlocale存在缓冲区溢出漏洞。当调用LC_ALL类型时,本地用户可以借助超过6个元素的用户控制locale字符串执行任意代码,该字符串属于越界的new_categories类型数组,就像xterm和zsh程序中使用一样。

- 公告与补丁

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

- 漏洞信息

NetBSD libc setlocale LC_ALL Category Privilege Escalation
Local Access Required Input Manipulation, Misconfiguration
Loss of Confidentiality, Loss of Integrity, Loss of Availability
Exploit Public

- 漏洞描述

A local overflow exists in setlocale in NetBSD's libc. setlocale fails to handle input correctly under the following conditions: 1) LC_ALL is called, 2) there are more than six slash-separated arguments in the second string, and 3) the second string is derived from user-supplied data. This can result in a buffer overflow. With a specially crafted request, an attacker can cause the execution of arbitrary code, resulting in a loss of confidentiality, integrity, and/or availability.

- 时间线

2002-09-17 Unknow
2002-09-17 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.

- 相关参考

- 漏洞作者

Unknown or Incomplete

- 漏洞信息

NetBSD LibC SetLocale Buffer Overflow Vulnerability
Boundary Condition Error 5724
No Yes
2002-09-17 12:00:00 2009-07-11 05:06:00
Discovery of this vulnerability credited to Andrey A. Chernov.

- 受影响的程序版本

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 arm32
NetBSD NetBSD 1.4.2 Alpha
NetBSD NetBSD 1.4.2
NetBSD NetBSD 1.4.1 x86
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 arm32
NetBSD NetBSD 1.4 Alpha
NetBSD NetBSD 1.4
NetBSD NetBSD 1.6

- 不受影响的程序版本

NetBSD NetBSD 1.6

- 漏洞讨论

A buffer overflow vulnerability has been discovered in NetBSD versions 1.5.3 and earlier.

The buffer overflow is reported to occur in the setlocale() function in libc. This vulnerability is reportedly exploitable when certain specific conditions are met. The vulnerability when successfully exploited, will give a local user root access to the system.

A number of programs, such as xterm and zsh, may meet the conditions needed for successful exploitation.

- 漏洞利用

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: <>.

- 解决方案

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

- 相关参考