莫里斯蠕虫

来源:互联网 发布:win10系统java环境变量 编辑:程序博客网 时间:2024/06/03 00:05

它的编写者是美国康乃尔大学一年级研究生罗特·莫里斯。这个程序只有99行,利用了Unix系统中的缺点,用Finger命令查联机用户名单,然后破译用户口令,用Mail系统复制、传播本身的源程序,再编译生成代码。最初的网络蠕虫设计目的是当网络空闲时,程序就在计算机间“游荡”而不带来任何损害。当有机器负荷过重时,该程序可以从空闲计算机“借取资源”而达到网络的负载平衡。而莫里斯蠕虫不是“借取资源”,而是“耗尽所有资源”。


1988年11月3日,当数千名计算机系统管理员像往日一样轻松自在地赶到工作岗位时,他们惊呆了,系统瘫痪!原因不明!当他们知道类似系统瘫痪的机器有6000多台时,没有人不怀疑这是一次阴谋,互联网络受到了攻击,十分之一的机器完全瘫痪,其他系统也是缓慢如牛。
                          

在人们正对互连网络充满憧憬之时,这样一次事件无异于迎面兜盆冷水,让人充满恐惧。调查很快展开,而调查的结果更出人意外:是美国国家安全局一位专家的儿子干的!Robert  Morris (罗伯特·莫里斯),麻省理工学院一个二十出头的研究生。
                  

他编的这个程序叫Worm(蠕虫),只有99行。严格地说它还不是病毒,因为病毒需要有一个寄生体供其插入,在程序执行时激活危害系统,而“蠕虫”程序则是自我复制,自行传播,这就更具有危害性了。
 

开始的时候,莫里斯并不是第一嫌疑犯。因为他是一个好学生,并没有那方面的前科;更重要的一点是他的父亲曾经对Internet的设计有过意义深远的影响。正如BrendanKehoe在他的著作《禅宗和Internet艺术》中写的那样:“罗伯特·莫里斯很快发现“蠕虫”病毒程序以一种比他的预计快得多的速度进行自我复制和感染机器——原因是程序中有缺陷。最终,遍布全国的许多机器要么崩溃,要么像是‘患了紧张症’。当罗伯特·莫里斯认识到事情的严重性时,他与在哈佛的一个朋友联系并讨论解决的办法。最后,他们从哈佛向整个网络发了一封匿名信,指导程序员们如何杀死‘蠕虫’病毒以及如何防止被感染。”


 莫里斯为什么编制这个程序?据他自己说,只是为了验证一个想法,并没有想到会造成如此大的危害,因为他在程序中设计了计数功能,可以控制“蠕虫”在同一台主机上的繁殖次数,但不幸的是,这位天才编制的计数器竟然有一处小小的疏忽。本来设定只繁殖一次,可结果是“蠕虫”爬遍互联网络,过度繁殖耗尽了众多主机的系统资源,基本“当”掉了整个Internet。这一切就发生在1988年11月2日晚。莫里斯从麻省理工学院主机上释放这条“小虫”后回到宿舍安然入睡的几个小时之内,他让人们彻底认识到了Internet的弱不禁风。
  

损失是巨大的,据说直接经济损失上百亿美元,仅就上万名工程师夜以继日地恢复工作来计算就是一笔不小的支出。但专家们分析后得出结论,莫里斯确实不是故意的。据此他被从轻发落,疏忽的代价是:罚款一万美元,三年徒刑,400小时社区劳动。
                    



原创粉丝点击