在计算机带给我们巨大进步的同时,它也有一些恼人的问题。计算机病毒恐怕是这些问题中最具代表性的。计算机病毒最初并不是黑客编写的恶意程序,而是麻省理工学院、AT&T贝 尔实验室、施乐(Xerox)公司的帕洛阿尔托(Palo Alto)研究中心的研究人员的名为“Core Wars”智力游戏。在工作之余,程序员们和研究员们以潜入公司机器的核心存储器为乐。他们发现通过改变存储器中的代码,用来处理数据的程序也能消耗数据。他们在游戏中相互斗智,设计能自我复制并能消灭对手程序的程序。
1983年,UNIX操作系统的创始人肯·汤普逊(Ken Thompson)对计算机器协会(Association for Computing Machines)作了一次关于“Core Wars”的演讲。第二年,《科学美国人》(Scientific American)杂志发表了一篇有关计算机病毒的文章,其中提供了如何编写此类自我复制程序的详细信息。不久,病毒逃离实验室,开始繁殖起来。
起初计算机病毒都是无害的程序,只是每天的某个时候可能会在屏幕上显示一条消息或播放一首曲子。这不会造成破坏,但却很烦人。但正如黑客开始并无恶意但很快转向破坏活动一样,病毒编写者认识到他们拥有的力量,于是开始制造一些不仅是滋扰,而完全是破坏性的病毒。
最有名的与病毒有关的程序可能是被称为因特网蠕虫(Internet Worm)的病毒。它是1988年由康奈尔大学(Cornell University)的研究生罗伯特·T·莫里斯(Robert T.Morris)编写并在世界上 第一个主要的计算机网络——因特网(Internet)散布的。他的蠕虫利用了UNIX系统中用来发送电子邮件的程 序Sendmail中的一个 漏洞,并通过无限自我复制,使整个网络陷入了瘫痪。
计算机病毒是一种通过复制来感染其他程序的计算机程序。由于能够自我复制,因此它能在计算机系统间传播,执行其制造者设定的指令:破坏系统,删除文件,清除硬盘。通常,病毒会被设计成先潜伏一阵子,在这段时期尽可能多地繁殖,从而广泛地传播开来。病毒编写者的目的是制造尽可能多的感染。一旦发现目标,它就自我复制并进行感染。只要这些新宿主同其他程序接触,病毒就会再次复制来感染其他宿主。这种传染能无限继续下去,其传染能力取决于病毒编写者的意图。
计算机病毒的首要目的就是不顾一切地繁殖再生。这种繁殖会不可避免地带来副作用,即复制出的病毒会占据计算机的硬盘空间,耗用宝贵的内存,使其无法用作它途。Symantec公司的彼得·蒂皮特说:“病毒编写者不 认为他们做了什么错事,不认为病毒是有害的,也不认为他们的所作所为是危险的。但事实上,所有病毒都是有害的。”
大多数病毒的攻击对象是软件。在黑客的操纵下,一种病毒往往有多种变体,因此,要描述已知的所有病毒几乎是不可能的。病毒制造者给它指定了特定的目标:应用程序或诸如WINDOWS之类的操作系统。大多数病毒是针对某种特定的计算机系统而编写的,通常不会感染其他系统。但是,罗伯特 ·莫里斯的因特网蠕虫却感染了DEC Vax机和太阳微系统公司(Sun Microsystems) 的计算机。这表明,随着黑客越来越擅长编写病毒,将来病毒可能会造成更广泛的破坏。易感染的区域是引导扇区、操作系统或应用程序。计算机病毒潜伏在可 执行代码中,程序一旦运行,病毒也就被激活。
计算机病毒传染方式和感染人类的生物病毒是不同的。生物病毒能够通过各种各样的途径在不同人之间传播,而计算机病毒则需要通过直接接触传染。计算机病毒主要通过两种方式进行传染:一是在系统中使用不知不觉中已染上病毒的软盘,二是病毒寄栖在一台计算机的程序或文件中,通过通讯线路,例如电子公告板(BBS, Bulletin Board System)或其他网络,传送到另一台计算机中。在网络时代,后一种方式是主要的。不管是何种方式,病毒都可以扩散开来。在赛百空间(CEYBERSPACE)——计算机网络的空间中,已无法完全消灭计算机病毒。
在这里所要讨论的并不是计算机病毒的危害和防治,而是一个似乎显而易见但又令人困惑的问题:计算机病毒是某种形式的生命吗?在这个星球上,我们所知的任何一种生命都是以碳化物形式存在的。然而事实上,并没有任何一条法则规定生命一定是由碳化物构成的。一种物理学理论认为,所有的物质都是不稳定的,所有的原子核都会在1033年后转变为正子、光子和无重量的中性粒子等辐射,在一个没有质子宇宙中生命可能仍然会存在,但可以肯定不是我们今天看到的结构。
实际上,要回答这个问题,就必须首先回答生命什么,而这个问题的准确答案是超出了我们现有的认识范围的。但这并不妨碍我们对从生命抽象出的若干特征进行讨论。我们所认识的生命的最本质的特征是自我繁衍和代谢。计算机病毒也能利用资源复制、传播自己,感染并寄生到其它代码,并对外界的激励做出反应。因此,如果从这个特征的角度来看,计算机病毒的确是某种初级的生命形式。如果从生命的进化来看,计算机病毒的变异最终是由其编制者来完成的。所以如果计算机病毒称得上是生命,那么它也只是一种人工的生命。而一旦当人类能创造出生命,甚至是另类形式的生命,那么也意味着人类自身的进化进入了一个新的纪元。
|