Linux Bash严重漏洞最终修复方案

发布时间:2014-07-13

日前Linux官方内置Bash中新发现一个非常严重安全漏洞

(漏洞参考https://access.redhat.com/security/cve/CVE-2014-6271)

黑客可以利用该Bash漏洞完全控制目标系统并发起攻击,为了避免您Linux服务器受影响,建议您尽快完成漏洞修补,修复方法如下,请了解!

所有安装GNU bash 版本小于或者等于4.3的Linux操作系统。
漏洞检测命令:env -i X='() { (a)=>\' bash -c 'echo date'; cat echo
检测漏洞方法及修补方案

本文是以CentOS 6.4 X64为例,
执行检测命令 # env -i  X='() { (a)=>\' bash -c 'echo date'; cat echo
修复之前会显示:
[root@localhost ~]# env -i  X='() { (a)=>\' bash -c 'echo date'; cat echo
bash: X: line 1: syntax error near unexpected token `='
bash: X: line 1: `'
bash: error importing function definition for `X'
Sat Sep 27 00:55:57 CST 2014
当前系统时间 (白色部分)

执行 # yum clean all
执行 # yum makecache
执行 # yum -y update bash
执行漏洞检测命令 # env -i  X='() { (a)=>\' bash -c 'echo date'; cat echo
使用修补方案修复后 输出
[root@localhost ~]# env -i  X='() { (a)=>\' bash -c 'echo date'; cat echo
date
Sat Sep 27 00:55:57 CST 2014
(备注:输出结果中包含date字符串就修复成功了。)


其他Linux系统解决方案如下:
debian:(最终解决方案) 7.5  64bit && 32bit  apt-get update apt-get -y install --only-upgrade bash 

ubuntu:(最终解决方案) apt-get update apt-get -y install --only-upgrade bash 
6.0.x 64bit  wget http://mirrors.aliyun.com/debian/pool/main/b/bash/bash_4.1-3+deb6u2_amd64.deb &&  dpkg -i bash_4.1-3+deb6u2_amd64.deb   6.0.x 32bit  wget http://mirrors.aliyun.com/debian/pool/main/b/bash/bash_4.1-3+deb6u2_i386.deb &&  dpkg -i bash_4.1-3+deb6u2_i386.deb

opensuse:(官方还没有给出最终解决方案,该方案存在被绕过的风险,MM分享汇会第一时间更新,请继续关注) 13.1 64bit wget http://mirrors.aliyun.com/fix_stuff/bash-4.2-68.4.1.x86_64.rpm && rpm -Uvh bash-4.2-68.4.1.x86_64.rpm  13.1 32bit wget http://mirrors.aliyun.com/fix_stuff/bash-4.2-68.4.1.i586.rpm && rpm -Uvh bash-4.2-68.4.1.i586.rpm

aliyun linux:(最终解决方案) 5.x 64bit  wget http://mirrors.aliyun.com/centos/5/updates/x86_64/RPMS/bash-3.2-33.el5_10.4.x86_64.rpm && rpm -Uvh bash-3.2-33.el5_10.4.x86_64.rpm   5.x 32bit  wget http://mirrors.aliyun.com/centos/5/updates/i386/RPMS/bash-3.2-33.el5_10.4.i386.rpm  && rpm -Uvh bash-3.2-33.el5_10.4.i386.rpm 

注意事项
特别提醒:Linux 官方已经给出最新解决方案,已经解决被绕过的bug,建议您尽快重新完成漏洞修补。openSUSE 镜像暂时还没有给出,我们会在第一时间更新解决方案。
特别提示:该修复不会有任何影响,如果您的脚本使用以上方式定义环境变量,修复后您的脚本执行会报错。