OpenBSD CHPass不安全临时文件符号链接漏洞

漏洞信息详情

OpenBSD CHPass不安全临时文件符号链接漏洞

漏洞简介

OpenBSD是一款开放源代码的UNIX操作系统,提供用于编辑用户数据信息的工具chpass(1)(或硬连接到此程序的chfn和chsh)。
chpass不正确处理临时文件,本地攻击者可以利用这个漏洞显示系统任意文件中的部分内容。
chpass会把用户数据库信息写到临时文件中以供编辑器修改,当编辑器运行时,用户可以挂起编辑器(^Z),并使用硬连接指向的任意文件来代替临时文件,然后在恢复编辑器到前台,以不保存方式退出编辑器,让chpass进行文件的其他操作,在这时候chpass打开文件,会以如下方式读取文件:
-如果文件超过2048字节,将放弃读取。
-如果文件以\’\’#\’\’开头,忽略。
-其他的检查行的有效性。
如果发现检查的行合法,chpass就会处理下一个。但是如果某行不合法及以\”shell:\”开头,并剩余的字符是可打印字符,当chpass处理时就会显示错误消息,但错误消息中包含文件内容,造成硬连接指向的敏感文件内容被泄露。

漏洞公告

临时解决方法:
如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:

* Marc Bevand <bevand_m@epita.fr>提供了如下第三方补丁程序:

http://www.epita.fr/~bevand_m/asa/asa-0001.openbsd-chpass.cvs-diff” target=”_blank”>
http://www.epita.fr/~bevand_m/asa/asa-0001.openbsd-chpass.cvs-diff

—8<————– asa-0001.openbsd-chpass.cvs-diff —————–

Index: edit.c

===================================================================

RCS file: /cvs/src/usr.bin/chpass/edit.c,v

retrieving revision 1.23

diff -u -r1.23 edit.c

— edit.c 31 Jul 2002 22:08:42 -0000 1.23

+++ edit.c 2 Feb 2003 18:34:02 -0000

@@ -48,6 +48,7 @@

#include

#include

#include

+#include

#include

#include

#include

@@ -152,12 +153,14 @@

char *p, *q;

ENTRY *ep;

FILE *fp;

+ int fd;

– if (!(fp = fopen(tempname, “r”)))

+ if ((fd = open(tempname, O_RDONLY|O_NOFOLLOW)) == -1 ||

+ (fp = fdopen(fd, “r”)) == NULL)

pw_error(tempname, 1, 1);

– if (fstat(fileno(fp), &sb))

+ if (fstat(fd, &sb))

pw_error(tempname, 1, 1);

– if (sb.st_size == 0) {

+ if (sb.st_size == 0 || sb.st_nlink != 1) {

warnx(“corrupted temporary file”);

goto bad;

}

—8<————– asa-0001.openbsd-chpass.cvs-diff —————–
厂商补丁:
OpenBSD
——-
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.openbsd.org/security.html” target=”_blank”>
http://www.openbsd.org/security.html

参考网址

来源: XF
名称: openbsd-chpass-information-disclosure(11233)
链接:http://xforce.iss.net/xforce/xfdb/11233

来源: BID
名称: 6748
链接:http://www.securityfocus.com/bid/6748

来源: BUGTRAQ
名称: 20030203 ASA-0001: OpenBSD chpass/chfn/chsh file content leak
链接:http://www.securityfocus.com/archive/1/309962

来源: SECTRACK
名称: 1006035
链接:http://www.securitytracker.com/id?1006035

来源: SREASON
名称: 3238
链接:http://securityreason.com/securityalert/3238

来源:NSFOCUS
名称:4310
链接:http://www.nsfocus.net/vulndb/4310

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享