漏洞信息详情
Linux-PAM配置文件非ASCII用户名解析本地权限提升漏洞
- CNNVD编号:CNNVD-200903-235
- 危害等级: 中危
- CVE编号: CVE-2009-0887
- 漏洞类型: 数字错误
- 发布时间: 2009-03-12
- 威胁类型: 本地
- 更新时间: 2009-04-18
- 厂 商: kernel
- 漏洞来源: Marcus Granado
漏洞简介
可插拔认证模块(PAM)是用于认证用户的机制,使用在多种Linux版本上。
libpam库在试图认证用户名中包含有unicode/utf-8字符SSH登录请求时没有正确地解析PAM配置文件中的非ascii用户名。
pam_misc.c文件62、65和95行的_pam_StrTok函数存在错误的char-gt;int类型转换,如果字符值大于127就会导致出现负数。例如,在pam_misc.c的95行,代码使用end所指向的当前字符值索引空字符table数组:
< } else if (*from) {
< /* simply look for next blank char */
< for (end=from; *end && !table[(int)*end]; ++end);
*end所返回的字符值默认为有符型的,如果使用非ascii字符(大于127,如utf-8字符),在将其转换为int时会解释为负值。因此,代码从-128到127而不是0到255索引table数组。导致访问表格范围之外或函数栈帧范围之外的内存。
漏洞公告
目前厂商已经发布了升级补丁以修复这个安全问题,补丁下载链接:
http://pam.cvs.sourceforge.net/viewvc/pam/Linux-PAM/libpam/pam_misc.c?view=log
参考网址
来源: BID
名称: 34010
链接: http://www.securityfocus.com/bid/34010
来源: FEDORA
名称: FEDORA-2009-3231
链接: https://www.redhat.com/archives/fedora-package-announce/2009-April/msg00420.HTML
来源: FEDORA
名称: FEDORA-2009-3204
链接: https://www.redhat.com/archives/fedora-package-announce/2009-April/msg00398.HTML
来源: XF
名称: linuxpam-pamstrtok-priv-escalation(49110)
链接: http://xforce.iss.net/xforce/xfdb/49110
来源: MANDRIVA
名称: MDVSA-2009:077
链接: http://www.mandriva.com/security/advisories?name=MDVSA-2009:077
来源: SECUNIA
名称: 34733
链接: http://secunia.com/advisories/34733
来源: pam.cvs.sourceforge.net
链接: http://pam.cvs.sourceforge.net/viewvc/pam/Linux-PAM/libpam/pam_misc.c?view=log
来源:pam.cvs.sourceforge.net
链接: http://pam.cvs.sourceforge.net/viewvc/pam/Linux-PAM/libpam/pam_misc.c?r1=1.9&r2=1.10&view=patch
来源: MLIST
名称: [oss-security] 20090305 CVE Request -- pam
链接: http://openwall.com/lists/oss-security/2009/03/05/1
受影响实体
- Kernel Linux-Pam:0.99.1.0
- Kernel Linux-Pam:0.99.10.0
- Kernel Linux-Pam:0.99.2.0
- Kernel Linux-Pam:0.99.2.1
- Kernel Linux-Pam:0.99.4.0
补丁
暂无
评论