Shellshock漏洞那些事:网络安全噩梦的开始

时间:14-10-11 栏目:云安全 作者:爱说云网 评论:0 点击: 1,356 次

鉴于Linux/UNIX系统近日再次曝出危险等级超“心脏出血”的Bash漏洞——“Shellshock”,《连线》杂志周一特别刊文,介绍了该漏洞的过往与今生,并指出对于已经破损不堪的互联网而言,Shellshock或将只是一切噩梦的开始。以下为《连线》文章全文翻译内容:

布莱恩·福克斯(Brian Fox)驾车从圣巴巴拉(Santa Barbara)来到了波士顿,其车后备箱内放着两卷巨大的磁带。

这些并不是音乐磁带或者视频磁带。它们转载的是电脑软件代码及数据,是专为过去有家具般大小的电脑服务的,就像我们在《Dr. Strangelove》和《Three Days of the Condor》等经典电影中看到的一样。

那一年是1987年,福克斯驾车横跨美国来到了他的新家。他所携带的磁带装载了一个名为Bash的软件程序,而这个程序就是后来在UNIX系统及相关再发行版中随处可见,用于桥接用户与操作系统的重要工具。

福克斯是一名高中辍学生,其平时大量时间都与麻省理工(MIT)的电脑极客们,如理查德·斯托尔曼(Richard Stallman)等一起度过。尽管当时的福克斯只是个脚架焊接工,但其却有着一颗壮志雄心——要创建出一套完全免费,并可让人随意删节,且不受繁重拷贝条款限制的软件系统。福克斯将这一想法称为“自由软件运动”,其最终的目的是将UNIX操作系统全部重建,并以GNU的方式完全免费地与世人共享。这也便是开源软件生态的雏形。

福克斯和斯托尔曼在那个时候并不知道,他们正在开发的软件随后会成为全世界通信基础设施几十年里几近不可或缺的重要工具。在福克斯将两卷磁带从波士顿带回到加州后,此时已有不少工程师开始注意到并使用Bash,有的甚至还帮助进行开发。在UNIX的带动下,GNU和Linux开始迅速崛起,尤其是后者如今俨然已成为当代互联网的躯干组成,Bash也因此进驻了数以亿计的计算机当中。

直到1992年的某一天,一位工程师将一个程序Bug键入到了Bash中。又过了20多年,终于有安全专家在上周发现了这一沉睡已久的安全漏洞。这一Bug被称专业人士们称为Shellshock,其危害性将可导致黑客肆意大规模地破坏当今的互联网结构。

Shellshock是人类计算机史上已知的、最老的、尚未修复的程序Bug。事实上在今年早些时候,专家们也在另一个已存在多年的开源软件上找到了一个名为“心脏出血”(Heartbleed)的Bug。这两个Bug都表明出当今互联网的一个问题,即除非我们能够改变代码编写的方式和软件审查的方式,否则同样的问题或将一直阻碍和威胁着互联网的发展。互联网建立在大量被重复使用的软件之上,其中一些软件甚至是几十年前就已存在的,而那个时候,我们甚至还没有对安全问题的审查考虑。

譬如Bash被创立之时,就没有人想过要为其遭受网络攻击的可能性进行评估,因为这在当时毫无意义。

“(当时)去担心这个软件会成为地球上被使用最多的一个,并要考虑会被一些恶意的人利用在网上发起攻击,这完全是不现实的。”福克斯说,“当可能的条件具备时,Bash已经被使用有15年之久了。”在今天,谷歌、Facebook,或者任何一个互联网巨头都在使用Bash,因为它是开源的,任何人都可以在任何时候对它进行审查。然而事实是,尽管任何人都可以在任何时候去审查Bash的安全性,但却没有一个人想过这么去做。这种现象需要发生改变。

网络是怎么建成的

从数码的角度看,福克斯的Bash程序大致与iPhone的桌面截屏图大小一致。但在1987年,这个程序是无法利用电子邮件发送至美国彼岸的。当时的互联网雏形才刚刚形成,跨越全球的WWW概念则还处于酝酿中。于是这就有了福克斯驾车带着两卷磁带由圣巴巴拉开往波士顿的一幕。

Bash是一个shell工具,是一个在图形用户界面出现前用于与计算机进行交流的指令行键入工具。这有点类似Windows下的命令提示符工具。尽管它看上去很“古老”,但却是在互联网盛行的时代,在Apache网络服务器遍及的时代,桥接网页应用软件和操作系统之间最简单和最高效的方式——只需要在Bash shell下键入一系列指令,网页服务器就可以从计算机中获得文件信息——这就是当今互联网的基础。一套建立在脚本之上的脚本指令。

今天,Bash仍旧在网页服务器管理工具中扮演重要角色。Mac系统中也有它的存在。事实上,任何运行Linux操作系统或UNIX操作系统的公司都在通过该工具快速而简单地与运行于这些系统之上的应用软件建立连接。

然而,领导Bash开发的程序员却并不为任何一家互联网巨头工作。他甚至不在为一家科技公司工作。这名程序员名叫切特·雷米(Chet Ramey),是克里夫兰Case Western Reserve University的程序开发人员,并只在业余时间对Bash进行维护。

“相当长一段时间了”

80年代末,雷米取代福克斯成为了Bash的领导开发者。在9月12日这天,雷米收到了一封来自安全专家史蒂芬·查兹拉斯(Stephane Chazelas)有关Shellshock程序Bug的电子邮件。这是一个高危的安全漏洞,全世界的人在上周都意识到了这个问题——仅在数个小时,就有黑客发布了攻击代码,可利用

Shellshock漏洞将一台未补丁的机器瞬间转变称可任意操控的僵尸网“肉鸡”。

雷米并没有权限访问Bash开发项目原始代码的更新日志,这些数据是在90年代初期创立的。不过雷米认为自己很可能是那个编写了Shellshock程序Bug的人,而Bug创建的时期大约要追溯到1992年的某个时候。这个时间显然足以让Shellshock成为当今最古老、最重要,且尚未修补的安全漏洞。《连线》为此还特别联系了普渡大学的尤金·斯帕福德(Eugene Spafford)教授以证实猜测。而斯帕福德也明确表示:“我无法回忆起任何其它尚未修补的比这个更古老的漏洞。当然这个世界上肯定还有很多历史更久远的Bug存在,但考虑到漏洞产生的潜在影响及存在时间,Shellshock无疑是最耀眼的。”

不过,上述的情况让那些对“心脏流血”十分熟悉的人有似曾相识的感觉。“心脏流血”也是发现于一个历史悠久的开源软件项目——SSH,该软件同样亦被广泛使用。与SSH项目的开发一样,Bash也从未有过任何安全性审查,软件是由一组志愿爱好者维护开发的,且基本上他们并不会因开发Bash而获得任何财务方面的赞助。很不幸的是,这种模式也正是互联网的发展过程。

“多双眼睛”的谎言

安全咨询公司Errata Security首席执行官罗伯特·格莱汉姆(Robert Graham)指出,Shellshock对开源软件的主要用户撒了一个谎言,即:开源软件允许“许多双眼睛”来共同监督和修复Bug,这能使其效率和安全性要好过闭源的商业版权软件。这种美好的想法亦被称为“林纳斯定律”(Linus's Law)。

“如果真有许多双眼睛在过去25年里一直都在关注Bash,那么这些Bug早在多年前就会被发现了。”格莱汉姆上周在博客上写到。

“林纳斯定律”是由林纳斯·托瓦兹(Linus Torvalds)创建了Linux操作系统后命名。Shellshock漏洞曝出后,林纳斯表示该定律依旧成立。

“有很多代码实际上并没有很多双眼睛在监督。很多开源项目也并没有真正让大量开发者参与到其中,即使其中一些是非常核心的开源应用。”林纳斯表示。

这个问题在任何软件中都是存在的,无论是开源或者闭源。总体来说,我们更难说清闭源软件里究竟存在多少Bug,譬如甲骨文的数据库应用。而在大约十年前,微软也曾面临过严重的安全问题,因为该公司部分代码并未没有正确地经过审核。但在经历过2003年的Windows Blaster蠕虫问题后,微软终将安全审查列到了第一位。于是在接下来的十年里,微软的代码质量提高了。微软每年都会聘请大量的“白帽”黑客和花费千万美元来保证产品的安全性。如今开源软件社区也将会开始同样的旅程。

今年5月,在“心跳流血”漏洞首次公开后不久,Linux基金会筹集了600万美元,以针对一些被广泛使用的开源项目的安全性进行一次大检修,其中包括了SSH、NTP(网络事件协议)等等。然而不幸的是,Bash并未在其列。

“这是不可预料的。”Linux基金会执行董事吉姆·泽姆林(Jim Zemlin)表示,“但当然的,我的人一定会去接触相关的开发人员,以看看是否能提供帮助。”

这很好,但前提是要在Bug发现前继续维护好互联网。希望Linux基金会、谷歌或Facebook等可以继续做好这一点。

即使有了Shellshock这一瑕疵,布莱恩·福克斯仍然为让自己曾经横跨美国的创造出的Bash而骄傲。

“在它首个Bug被发现之前,这个软件已经存在27年了。”福克斯说,“鉴于软件的使用情况和Bug的发现比例,这个结果非常令人难以忘记。”

相关文章

2015年7大云安全预测
views 1418
不断发生的数据泄露事故正在动摇企业和消费者的信心,也增加了云计算领域对安全的讨论。快速的云计算部署要求企业保护敏感数据的同时,保持应用程序的功能。那么,未来几个月哪些趋势会推动市场发展呢?下面让我们看看云安全市场2015年的发展趋势:   1. 私有云的演变   在企业试图利用云计算提供的控制、...
Java与云计算 – 大数据那些事儿
views 1559
什么是Java?什么是云计算?Java与云计算有什么关系呢?本文探讨了这些问题。    Java是一种编程语言,Java是一种开发平台,Java还是一种运行环境。总之,Java已构建了属于自己的生态系统,渗透到各种应用。    云计算(cloud computing)是基于互联网的相关服务的增加、使...
值得关注的十家云计算公司
views 1638
云计算正在IT行业大行其道,力求创新的新兴公司和地位稳固的老牌厂商都在争夺客户的眼球。一般而言,云计算提供商分为三类:软件即服务(Software-As-A-Service,SAAS)提供商;基础架构即服务(Infrastructure-As-A-Service,IAAS)提供商,提供基于Web的渠...
亚马逊Amazon EC2弹性计算云问题解答
views 2761
问:什么是 Amazon Elastic Compute Cloud (Amazon EC2)? Amazon Elastic Compute Cloud (Amazon EC2) 是一种 Web 服务,可在云中提供大小可调的计算容量。该服务旨在降低开发人员进行网络规模计算的难度。...
云技术是如何促进IT创新的?
views 1308
 云技术的出现改变许多的东西,也革新的许多东西。传统的IT部门的工作主要是是维护处理坏掉的邮件系统、保证服务器正常运行、保证邮件的正常发送。确保老板不会因为他们的密码无效而咆哮。云计算使这种工作模式发生了翻天覆地的变化。   随着企业把部门工作转移到公有云中,上述所说日常维护之类的工作就可以转移到了...
云计算进汽车厂,或改变汽车制造模式...
views 1371
从今年第六届云计算大会中为制造业专设的技术论坛,到国家对于制造业的信息化建设,都体现着制造业的地位与价值。制造业包含的内容很广,这其中以汽车制造最为典型。中国作为汽车大国,在2014年汽车的保有量达到了1.4亿辆,虽然数量巨大,但中国汽车制造业的水平与国外相比并不成熟。制造创新能力以及产业链的整合优...
盘点数据库2014:一步之遥到云端
views 3416
年终将至,盘点开始。数据库技术重换青春,市场竞争也达到了前所未有的激烈程度。可以肯定的是,数据库未来将沿着“云”和“大数据”这两个主要方向发展。无论是传统关系型数据库巨头,还是新晋NoSQL、NewSQL创业公司,都希望抓住这一机遇,或重现辉煌,或迎头赶上。如果非要用一个词来形容2014的话,我想没...
API正在连接云中一切
views 1663
随着用户对云使用体验和兼容性要求的不断提高,对不同云平台下应用程序甚至物理平台的交叉连接的需求正与日俱增,作者总结了云计算在四个领域需要和另一个平台集成的例子,另外,还总结了目前该领域的一些主要的玩家。 以下为译文: 在云计算发展的中心,有一个非常特殊的技术(或者说平台)一直在改变着我们如何通过云来...

声明: 本文由( 爱说云网 )原创编译,转载请保留链接: Shellshock漏洞那些事:网络安全噩梦的开始

Shellshock漏洞那些事:网络安全噩梦的开始:等您坐沙发呢!

发表评论


读者排行