首页 -> 安全研究

安全研究

安全漏洞
SuSE Linux 本地用户可以删除任意系统文件

发布日期:2000-04-24
更新日期:2000-04-24

受影响系统:

S.u.S.E. Linux 6.3
S.u.S.E. Linux 6.2
S.u.S.E. Linux 6.1
S.u.S.E. Linux 6.0
描述:

SuSE Linux 6.3以及更低版本存在一个安全漏洞,允许任意用户删除系统中的任意文件。如果
在/etc/rc.onfig中的MAX_DAYS_IN_TMP变量被设置成大于0值,那么任意本地用户都可以删除
任意的系统文件。在SuSE 6.3中,这个问题是由etc/cron.daily/aaa_base产生的,而在更老
一点的版本中,问题处在/root/bin/cron.daily程序。

<* 来源:peter@gmv.spm.univ-rennes1.fr *>

测试方法:

警 告

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


mkdir -p "/tmp/foo /etc"
touch -t old-date "/tmp/foo /etc/filetodelete"


建议:

下面是一个SuSE 6.3下的临时补丁程序:

--- aaa_base~   Mon Jan  3 18:16:55 2000
+++ aaa_base    Fri Apr 21 08:42:19 2000
@@ -158,20 +158,10 @@
     done

     for TMP_DIR in $TMP_DIRS_TO_CLEAR ; do
-        for DEL_FILE in `find $TMP_DIR/. $OMIT \( -type f -o -type l \) \
-                         -atime +$MAX_DAYS_IN_TMP | sort -r` ; do
-            rm -f $DEL_FILE
-            DEL_DIR=`dirname $DEL_FILE`
-            if [ "$DEL_DIR" != "$TMP_DIR/." ] ; then
-                rmdir $DEL_DIR 2> /dev/null
-            fi
-        done
-    done
-    for DEL_DIR in `find $TMP_DIR/. $OMIT \( -type d \) \
-                    -ctime +$MAX_DAYS_IN_TMP | sort -r` ; do
-        if [ "$DEL_DIR" != "$TMP_DIR/." ] ; then
-            rmdir $DEL_DIR 2> /dev/null
-        fi
+               find $TMP_DIR/. $OMIT ! -type d \
+                       -atime +$MAX_DAYS_IN_TMP -exec rm -f '{}' ';'
+               find $TMP_DIR/. $OMIT -depth -type d -empty -mindepth 1 \
+                       -mtime +$MAX_DAYS_IN_TMP -exec rmdir '{}' ';'
     done
fi



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