快捷搜索:   服务器  安全  linux 安全  MYSQL  dedecms

RedHat Linux dump 缓冲区溢出漏洞

  受影响系统:

  MandrakeSoft Linux Mandrake 7.0

  MandrakeSoft Linux Mandrake 6.1

  RedHat Linux 6.2

  RedHat Linux 6.1

  RedHat Linux 6.0

  RedHat Linux 5.2

  RedHat Linux 5.1

  不受影响系统:

  NetBSD-current

  描述:

  RedHat Linux中有一个文件备份工具"dump".它被安装在 /sbin下并且被设置了

  setuid/setgid root位。当传送一个很长的字符串给"-f a"参数时,dump将发生

  堆栈溢出。如果提供的参数经过精心构造,攻击者就可能替代堆栈中保存的EIP

  (指令指针或者返回地址)并以gid root权限来执行任意代码。Dump在crash时会

  丢弃setuid root权限,但是没有丢弃setgid root权限。因此攻击者可能利用这

  个漏洞获得setgid root权限,进而可能获取对整个系统的控制权。

  <* 来源: - Yong-jun, Kim -

  e - mail : [email protected] [email protected]

  homepage : http://www.hackerslab.org http://ce.hannam.ac.kr/~s96192

  *>

  测试方法:

  警 告

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

  [loveyou@loveyou SOURCES]$ dump -f a `perl -e 'print "x" x 556'`

  DUMP: Date of this level 0 dump: Mon Feb 28 14:45:01 2000

  DUMP: Date of last level dump: the epoch

  DUMP: Dumping xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx to a

  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: 颇老 捞抚捞 呈公 遍聪促 while opening filesystem

  DUMP: SIGSEGV: ABORTING!

  Segmentation fault

  [loveyou@loveyou SOURCES]$ dump -f a `perl -e 'print "loveyou" x 556'`

  DUMP: SIGSEGV: ABORTING!

  Segmentation fault <= occur ctime4()

  建议:

  Yong-jun, Kim提供了一个patch:

  [root@loveyou SOURCES]# diff -ru dump-0.4b13/dump/main_orig.c dump-0.4b13/dump/main.c

  --- dump-0.4b13/dump/main_orig.c Mon Feb 28 14:40:01 2000

  +++ dump-0.4b13/dump/main.c Mon Feb 28 14:40:57 2000

  @@ -273,6 +273,9 @@

  exit(X_STARTUP);

  }

  disk = *argv++;

  + if ( strlen(disk) > 255 )

  + exit(X_STARTUP);

  +

  argc--;

  if (argc >= 1) {

  (void)fprintf(stderr, "Unknown arguments to dump:");

  临时解决办法:

  去掉dump的suid位: chmod a-s /sbin/dump

顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论