早期基于电子管的电子计算机,比如说埃利亚特,不可能有电脑病毒存在。但是Univac 1108,一个很古老的公司,一种很古老的机器,以及IBM360/370机器上,已经有一些可以看成是病毒的程序存在,比如“流浪的野兽”(Pervading Animal) 和 “圣诞树”(Christmas tree),因此,可以认为最早的病毒出现在七十年代初甚至六十年代末,虽然那时候没有任何人称这些程序为病毒。
一般意义上的病毒(可以运行在IBM PC机及其兼容机上)一般认为是在1986年左右出现的。从那以后的十五年时间里,出现了大概6万余种病毒,病毒的数量不断增大,和病毒制作的技术也逐步提高,从某种意义上,病毒是所有软件中最先利用操作系统底层功能,以及最先采用了复杂的加密和反跟踪技术的软件之一,病毒技术发展的历史,就是软件技术发展的历史。
下面我们将尽可能详细的描述病毒发展历史上的重要事件,以及这些事件的背景。
萌芽时期,磁芯大战
五十年代末六十年代初,在著名的美国电话电报公司(AT&T)下设的贝尔实验室里,三个年轻的程序员:道格拉斯、维索斯基和罗伯特•莫里斯,在工作之余编制了一个叫“磁芯大战” (core war)的游戏。“磁芯大战”基本的玩法就是想办法通过复制自身来摆脱对方的控制并取得最终的胜利,这可谓病毒的第一个雏形。虽然由于这种自我复制是在一个特定的受控环境下进行的,所以不能认为是真正意义上的病毒,但是这些软件的基本行为和后来的电脑病毒已经非常类似了。
六十年代晚期到七十年代早期:
这个时候是大型电脑的时代,就是那种占据了几个房间的大家伙。在大型电脑时代,由于开发人员的错误或者是出于恶作剧的目的,一些程序员制作了被称为“兔子”的程序,他们在系统中分裂出替身,占用系统资源,影响正常的工作,但是这些“兔子”很少在系统之间相互拷贝。
这个时期,在一种型号的大型电脑—Univax 1108系统上,首次出现了和现代病毒本质上是一样的东西,一个叫做“流浪的野兽”(Pervading Animal)的程序可以将自己附着到其它程序的最后!
七十年代上半叶:
“爬行者”病毒,出现在一种叫做泰尼克斯(Tenex)的操作系统上,这个病毒可以通过网络进行传播(又一个伟大的进步,当然不是现在意义上的因特网,那个时代的网络就是一对一的,通过调制解调器—就是你上网用的“猫”,将一台电脑和另外一台相连接)。一种叫做“清除者”(Reeper)的程序也被开发出来专门对付“爬行者”,这可能就是病毒和反病毒的第一次战争。
八十年代早期
电脑已经在国外变得非常普遍了,出现了最早的独立程序员,他们在为公司工作的同时,出于兴趣的原因,写了很多游戏或者其他的小程序,这些程序可以通过电子公告板(BBS)自由的流传,窃取帐号和密码成了所有爱好者所梦寐以求的事情,也是体现他们在这个社区独特价值的最好机会,所以在这一时期诞生了无数的特洛伊木马(Trojan horses),他们尽力将自己伪装得和真正的登录程序和提示程序一模一样,这样就可以骗取不明真相用户的密码了。
BBS电子公告板:BBS(Bulletin Board Service)是Internet上的一种电于信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。大部分BBS由教育机构,研究机构或商业机构管理。象日常生活中的黑板报一样,电子公告牌按不同的主题、分主题分成很多个布告栏,布告栏设立的依据是大多数BBS使用者的要求和喜好,使用者可以阅读他人关于某个主题的最新看法(几秒钟前别人刚发布过的观点),也可以将自己的想法毫无保留地贴到公告栏中。同样地,别人对你的观点的回应也是很快的(有时候几秒钟后就可以看到别人对你的观点的看法)。如果需要私下的交流,也可以将想说的话直接发到某个人的电子信箱中。如果想与正在使用的某个人聊天,可以启动聊天程序加人闲谈者的行列,虽然谈话的双方素不相识,却可以亲近地交谈。在BBS里,人们之间的交流打破了空间、时间的限制。在与别人进行交往时,无须考虑自身的年龄、学历、知识、社会地位、财富、外貌、健康状况,而这些条件往往是人们在其他交流形式中无可回避的。同样地,也无从知道交谈的对方的真实社会身份。这样,参与BBS的人可以处于一个平等的位置与其他人进行任何问题的探讨。这对于现有的所有其他交流方式来说是不可能的。