日历

2015年五月
« 4月   6月 »
 123
45678910
11121314151617
18192021222324
25262728293031

最近评论

    linux企业应用

    详解Bash代码注入安全漏洞

    很多人或许对上半年发生的安全问题“心脏流血”(Heartbleed Bug)事件记忆颇深,这两天,又出现了另外一个“毁灭级”的漏洞——Bash软件安全漏洞。陈皓发表博文,详细解释安全问题的症状。
    很多人或许对上半年发生的安全问题“心脏流血”(Heartbleed Bug)事件记忆颇深,这两天,又出现了另外一个“毁灭级”的漏洞——Bash软件安全漏洞。这个漏洞由法国GNU/Linux爱好者Stéphane Chazelas所发现。随后,美国电脑紧急应变中心(US-CERT)、红帽以及多家从事安全的公司于周三(北京时间9月24日)发出警告。 关于这个安全漏洞的细节可参看美国政府计算安全的这两个漏洞披露: CVE-2014-6271 和  CVE-2014-7169。

    这个漏洞其实是非常经典的“注入式攻击”,也就是可以向 bash注入一段命令,从bash1.14 到4.3都存在这样的漏洞。我们先来看一下这个安全问题的症状。
    Shellshock (CVE-2014-6271)

    下面是一个简单的测试:

    $ env VAR='() { :;}; echo Bash is vulnerable!’ bash -c “echo Bash Test”

    如果你发现上面这个命令在你的bash下有这样的输出,那你就说明你的bash是有漏洞的:

    Bash is vulnerable!
    Bash Test

    简单地看一下,其实就是向环境变量中注入了一段代码 echo Bash is vulnerable。关于其中的原理我会在后面给出。很快,CVE-2014-6271的官方补丁出来的了—— Bash-4.3 Official Patch 25。
    AfterShock – CVE-2014-7169 (又叫Incomplete fix to Shellshock)

    但随后,马上有人在Twitter上发贴—— 说这是一个不完整的fix,并给出了相关的攻击方法。