安全研究

威胁情报
GNU Bash 环境变量远程命令执行漏洞(CVE-2014-6271) (Alert2014-08)

发布日期:2014-09-25

描述:

CVE ID:CVE-2014-6271
受影响的软件及系统:
====================
GNU Bash <= 4.3
综述:
======
GNU Bash(Bourne again shell)类似UNIX的shell,广泛使用在Linux系统内,最初的功能仅是一个简单的基于终端的命令解释器。
GNU Bash 4.3及之前版本在处理某些构造的环境变量时存在安全漏洞,可能允许攻击者远程执行任意命令。
强烈建议受影响用户及时安装厂商的补丁进行升级。
分析:
======
GNU Bash 4.3及之前版本在处理某些构造的环境变量时存在安全漏洞,向环境变量值内的函数定义后添加多余的字符串会触发此漏洞,攻击者可利用此漏洞改变或绕过环境限制,以执行shell命令。某些服务和应用允许未经身份验证的远程攻击者提供环境变量以利用此漏洞。此漏洞源于在调用bash shell之前可以用构造的值创建环境变量。这些变量可以包含代码,在shell被调用后会被立即执行。
此漏洞可能会影响到使用ForceCommand功能的OpenSSH sshd、使用mod_cgi或mod_cgid的Apache服务器、DHCP客户端、其他使用bash作为解释器的应用等。
目前认为使用mod_php/mod_python/mod_perl的Apache httpd不受此问题影响。

测试方法:

本地验证bash是否受影响的方法:
$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
vulnerable
this is a test
如果显示上述信息,则受影响。
$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
如果显示上述信息,则不受影响。
厂商状态:
==========
GNU
---
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.gnu.org/software/bash
http://ftp.gnu.org/gnu/bash/
各大Linux发行版也已经提供了相关补丁,请及时升级。
附加信息:
==========
1. https://bugzilla.redhat.com/show_bug.cgi?id=1141597
2. https://securityblog.redhat.com/2014/09/24/bash-specially-crafted-environment-variables-code-injection-attack/
3. https://bugzilla.redhat.com/attachment.cgi?id=938976
4. http://www.nsfocus.net/vulndb/27942


浏览次数:

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。

绿盟科技,巨人背后的专家
关 闭