Chinaunix首页 | 论坛 | 博客
  • 博客访问: 12440
  • 博文数量: 6
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-21 16:56
文章分类
文章存档

2013年(6)

我的朋友
最近访客

分类: LINUX

2013-03-26 11:36:59

在微软本月月经日(8.11)的同一天,国外黑客taviso和julien公开了可以攻击所有新旧Linux系统的一个漏洞,包括但不限于 RedHat,CentOS,Suse,Debian,Ubuntu,Slackware,Mandriva,Gentoo及其衍生系统。黑客只需要执行 一个命令,就可以通过此漏洞获得root权限,即使开启了SELinux也于事无补。攻击这个漏洞到底有多简单,下面我们看图说话,有图有真相。

CHANGELOGS:

2009/08/16 chenjun@xfocus提供了debian/ubuntu系统的修复方式。

2009/08/16 根据网友要求添加漏洞详情和exploit下载地址。

2009/08/16 改进修复方式,避免RHEL下的无效修复。感谢小阮MM反馈并提供服务器协助定位解决。

2009/08/16 添加攻击经验记录。感谢cnbird分享经验。

linuxlocalroot

如上图所示,利用此漏洞极其简单,并且影响所有的Linux内核,baoz强烈建议系统管理员或安全人员参考下列临时修复方案,以防止Linux系统被攻击 。

1、使用Grsecurity或者Pax内核安全补丁,并开启KERNEXEC防护功能。

2、升级到2.6.31-rc6或2.4.37.5以上的内核版本。

3、如果您使用的是RedHa tEnterprise Linux 4/5的系统或Centos4/5的系统,您可以通过下面的操作简单的操作防止被攻击。

在/etc/modprobe.conf文件中加入下列内容:

install pppox /bin/true
install bluetooth /bin/true
install appletalk /bin/true
install ipx /bin/true
install sctp /bin/true

执行/sbin/lsmod | grep -e ppp -e blue -e app -e ipx -e sct,如果没有输出,你不需要重启,如果有输出,你需要重启系统,才可以对此攻击免疫。

下图是免疫前后的效果对比图:

2.6local

mianyi

4、如果您使用的是Debian或Ubuntu系统,您可以通过下面的操作防止被攻击(感谢chenjun提供)

cat > /etc/modprobe.d/mitigate-2692.conf << EOM
install ppp_generic /bin/true
install pppoe /bin/true
install pppox /bin/true
install slhc /bin/true
install bluetooth /bin/true
install ipv6 /bin/true
install irda /bin/true
install ax25 /bin/true
install x25 /bin/true
install ipx /bin/true
install appletalk /bin/true
EOM
/etc/init.d/bluez-utils stop

很明显,第三、四个方案最简单也相对有效,对业务影响也最小,如果您对编译和安装Linux内核不熟悉,千万不要使用前两个方案,否则您的系统可能永远无法启动。

如果你希望了解漏洞详情,请访问下列URL:

http://blog.cr0.org/2009/08/linux-null-pointer-dereference-due-to.html

如果你希望亲手验证此漏洞,你可以下载下列两个代码包测试(有可能导致系统不稳定,当机等现象,后果自负):

http://www.securityfocus.com/data/vulnerabilities/exploits/wunderbar_emporium-3.tgz

http://www.securityfocus.com/data/vulnerabilities/exploits/36038-4.tgz

攻击经验记录:

1、如果selinux没开,会报缺少Pulseaudio文件,实际上根本不需要他,只是selinux没开导致的,用另外一个exp攻击同样不 成功。从这里可以总结出来,如果你没开selinux,在现有的exploit下,不需要做任何操作,也不会受到攻击。当然,这个是我个人经验总结,并且 只在RHEL5上验证过,请各位自己评估风险。顺带说一下,SElinux这东西,默认是开启的,如果你没关闭过他。根据我的猜测,可能是exp在 bypass selinux那段代码里出了点问题。所以说改/etc/selinux/config文件,禁用selinux,也可以在一定程度上防范公开的exp。

[xiaoruan@localhost wunderbar_emporium]$ ./wunderbar_emporium.sh
  [+] Personality set to: PER_SVR4
Pulseaudio does not exist!

[xiaoruan@localhost run]$ sh run.sh
padlina z lublina!
mprotect: Cannot allocate memory

2、回连的shell溢出虽然可以成功,但uid不是0,解决办法是用一个带pty的shell。这个经验由cnbird提供。

Linux在微软的月经日爆如此严重的漏洞,挺值得纪念的。

阅读(579) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~