Linux Bash严重安全漏洞修复教程

作者:袖梨 2022-11-14

日前Linux官方内置Bash中新发现一个非常严重安全漏洞(漏洞参考https://access.redhat.com/security/cve/CVE-2014-6271 ),黑客可以利用该Bash漏洞完全控制目标系统并发起攻击,为了避免您Linux服务器受影响,建议您尽快完成漏洞修补,修复方法如下,请了解!

特别提醒:Linux 官方已经给出最新解决方案,已经解决被绕过的bug,建议您尽快重新完成漏洞修补。

Linux Bash严重安全漏洞修复教程

Linux Bash输出结果中见到date字样就修复成功了

【已确认被成功利用的软件及系统】
所有安装GNU bash 版本小于或者等于4.3的Linux操作系统。

【漏洞描述】
该漏洞源于你调用的bash shell之前创建的特殊的环境变量,这些变量可以包含代码,同时会被bash执行。

【漏洞检测方法】
漏洞检测命令:

代码如下 复制代码

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’
Sun Sep 28 19:02:00 CST 2014

最后一排显示为日期,说明系统存在风险漏洞。

修补方案

centos:(最终解决方案)

yum clean all
yum makecache
yum -y update bash

ubuntu:(最终解决方案)

apt-get update
apt-get -y install –only-upgrade bash

debian:(最终解决方案)

apt-get update
apt-get -y install –only-upgrade bash

修复后:

[root@localhost]# env -i X=’() { (a)=>\’ bash -c ‘echo date’; cat echo
date
Sun Sep 28 19:02:00 CST 2014

如果仍然同时看到date 和 日期,说明已经生效,但是当前bash 还没有更新过来。


[root@localhost]# exit
logout

退出再登录后,就不会显示 日期了。

[root@localhost]# env -i X=’() { (a)=>\’ bash -c ‘echo date’; cat echo
date
cat: echo: No such file or directory

最终只有不出现 日期,说明bash不能执行了。

相关文章

精彩推荐