Bash漏洞再次演进:缓冲区溢出导致远程任意命令执行

近几天,“Shellshock”Bash漏洞的出现可谓是给安全界投放了一颗重型炸弹,越来越多的厂商和黑白帽子都纷纷加入到分析阵营当中,同时也接二连三爆出了更多针对Bash的漏洞,明显出现了一种“破窗效应”,当我们以为CVE-2014-6271已经够劲暴的时候,殊不知,这仅仅是一个开始,而且,是一个最为简单的开始。

先来简单回顾一下这两天针对Bash的各种漏洞历程:

CVE-2014-6271

这是最原始的Bash漏洞,由redhat发现并予以披露,关于这个漏洞,我们不多说了。

CVE-2014-7169

redhat给出补丁的当日,由Tavis Ormandy([email protected])成功绕过

CVE-2014-7186

redir_stack函数内存读取溢出漏洞

参考资料:

http://seclists.org/oss-sec/2014/q3/712

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-7186

接下来是我们今天不得不提的另一个最新漏洞:

CVE-2014-7187

嵌套循环的数组越界溢出(off-by-one error)

7187是一个最新的Bash漏洞,根据官方的说明文档,其存在于parse.y中的read_token_word函数,可以通过构造可执行程序的BSS字段产生漏洞,将允许任意远程打码执行。Twitter上面已经有人分别在Ubuntu14.04LTS和OSX 10.9.5上验证了该漏洞:

Ubuntu14.04LTS

OSX 10.9.5

由于目前信息不足,我们仍然无法确定更多的危害性,但是FreeBuf会对“破壳”事件进行持续性的跟踪报道。我们同时也希望各大相关厂商密切关注此事动态。

漏洞检测工具:

如果您不能够确定您的服务器是否受以上几个漏洞影响,可以采用以下方式进行检测:

https://github.com/hannob/bashcheck

FreeBuf观点:

关于这个漏洞,首先让小编想到的是之前的Struct2漏洞,那个时候情况与此类似,因为一个过滤不严的漏洞爆出,致使更多的安全界人士参与到漏洞的研究中来,形成了我们常说的“破窗效应”即“墙倒众人推”的局面。虽然这是一个痛苦的过程,但是我们应该相信,只有这样我们的网络才会更加的安全,阵痛过后才会有新生。

另外,可能在Bash漏洞(Shellshock)刚刚出来的时候,各大安全厂商都经历了几个不眠不休的夜晚,可是官方的一个Patch(补丁)又让我们的汗水付诸东流,然后一个新的绕过方法又让旧的Patch失去效果…

白帽子们正在用实际行动告诉厂商:

参考资料:

https://twitter.com

https://access.redhat.com/security/cve/CVE-2014-7187

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-7187