距离“破壳”(Shellshock)漏洞的首次爆发已经快两周时间了。相信你很可能听说过这个漏洞,它的危害等级被专业安全人士评为 10。相比之下,上一个著名漏洞“心脏出血”只有5。
不过奇怪的是,“破壳”目前的反响并不高。“心脏出血”爆发时,腾讯、阿里、华为、小米等大厂以及许多安全厂商都被爆出漏洞,讨论人群也非常广泛,有许多的非专业用户都参与其中。但“破壳”爆发后,国内目前公开仅出现 CSDN 等数例漏洞,讨论范围局限在专业安全人士圈内。
为何会反差如此之大?当然不是因为“破壳”的危害被夸大,这与它的特征有关。
知道创宇研究部总监余弦表示,“破壳”的攻击比较特殊,没法像“心脏出血”那样超级量化。“心脏出血”的探测方式很通用,可以针对全球大规模批量探测,所以可以超级量化。而“破壳”漏洞探测复杂,每个设备或组件的探测规则都不一样,所以难以大规模通用量化,只能针对具体设备或组件来逐一量化。
另外一个原因,“心脏出血”那么火,还与当时受影响的目标有关,比如国内很多服务是 https 的,都是目标,比如淘宝、支付宝、陌陌、知乎等都用了 https,轻易就被探测出漏洞了。这次“破壳”漏洞会隐蔽些,虽然影响面肯定大很多很多,但是暴露出来可直接攻击的接口却不一定有或容易被找到。
虽然量化不易,但“破壳”的利用方式更多样化。
白帽子@RAyH4c 认为:“破壳漏洞和心血漏洞比谁的危害更大,我觉得是破壳漏洞,因为这个漏洞包含了远程代码执行和本地提权,可以直接拿到权限。目前这个漏洞还是在慢慢发酵,影响的第三方开源项目和各种以 web cgi 做管理界面的硬件设备太多,bash 变量的感染注入相信会爆出更多的奇技淫巧…”@tombkeeper 进一步补充:“这个是远程漏洞也是本地漏洞,是服务器漏洞也是客户端漏洞,且不存在内存类漏洞利用不稳定的问题,几乎 100% 成功率。”
更糟糕的是,这个存在了 25 年的漏洞(“破壳”最早在 1989 年就存在了),修复也极为麻烦。
Red Hat 发布了多个修复补丁,但到目前官方对此尚存疑虑,其安全专家 Florian Weimer 指出,bash 解析器存在大量漏洞,因为它在设计最初并未(也不需要)考虑安全问题。他推荐了两个彻底修复的方法,但会对旧版本不兼容。
Shellshock.net 也提示:目前的 bash 补丁并不保证 100% 修复。强烈建议更新 bash 相关的系统补丁,并保持对此关注。
如果把“心脏流血”比作通过门隙偷听密码的小偷,“破壳”则像是人的肺部出现先天性毛病。门隙可以马上堵上,但先天性的肺部毛病很难根治,无论是彻底性补丁还是更换新的肺部(换一种 shell 程序),都是大手术。面对互联网上海量采用 bash 的系统,修复“破壳”注定是一项艰难而漫长的工作。
题图来自 PCWorld