历史上著名的病毒
计算机病毒的起源(摘自《牛顿》杂志)
计算机病毒的历史:磁芯之战
电脑病毒不是最近才出现的新产品。事实上,早在1949年,也就是第一台商用计算机出现的几年前,计算机的先驱约翰·冯·诺依曼就在他的论文【复杂自动机的理论和组织】中勾勒出了病毒程序的蓝图。当时,大多数计算机专家都无法想象这种自我传播的程序是可能的,但少数科学家默默研究了范·纽曼提出的概念,直到十年后,在贝尔的实验室AT&: T,这些概念在一个非常奇怪的叫做核心战争的电子游戏中形成。
磁心大战是贝尔实验室的三个年轻程序员在工作之余构思出来的。他们是道格拉斯·麦克洛伊、维克多·维索特斯基和罗伯特·t·莫里斯,都是20多岁。
注:罗伯特·t·莫里斯(Robert T. Morris)是小罗伯特·t·莫里斯(Robert T. Morris Jr)的父亲,后者后来写了一个让互联网天翻地覆的蠕虫病毒。当时,大莫里斯正好负责阿帕网的网络安全。
计算机病毒的始祖:
磁心大战的游戏是这样的:双方各写一套程序,输入同一台电脑。这两个程序在电脑里吗?在记忆系统中,他们互相追逐,有时会放下一些关卡,有时会停下来修复(重写)被对方破坏的几行指令;当它被困住时,还能自我复制一次,脱离危险,因为它们都游走在电脑的内存磁芯中,所以它得到了磁芯大战的名字。
这个游戏的特点是,双方的程序进入电脑后,玩家只能观看屏幕上显示的战况,不能做任何改动,直到一方的程序被另一方的程序完全[吃掉]。
磁心战是一个统称,其实可以细分为几种。麦耀来写的程序叫【达尔文】,里面有【物竞天择,适者生存】的意思。它的游戏规则与上面描述的最接近。双方都用汇编语言编写了一套程序,叫做有机体,这两个有机体在计算机中无休止地争斗,直到一方拿下另一方。
此外,还有一个程序叫Creeper,每次读出的时候都会自我复制。此外,它会通过连接从一台计算机[爬行]到另一台计算机。很快电脑里的原始数据就会被这些爬虫榨干。爬虫的微观生存目的是繁殖。为了对付【爬虫】,有人写了【收割者】(Reaper)。摧毁他们。当所有的爬虫都被收割后,收割者将执行程序中的最后一条指令:毁灭自己,从电脑中消失。侏儒没有达尔文等程序聪明,但他极其危险。他在内存系统中前进,每次到第五个](地址,那里存储的东西就会变成零,这样就会关闭原程序。
最奇怪的是一个叫】(Imp)的战争程序,它只有一行指令,就是
MOV 01
MOV代表[移动],意思是移动。它将它所在的地址中的[0]写入(移动)到下一个地址。当IMP采取行动时,计算机中的每一行指令都变成[MOV 01]。换句话说,屏幕上还剩下很多[MOV01]。【双子座】也是个有趣的家伙。它只有一个功能:复制自己,发送到后面的100个地址,然后丢弃[原文]。双子座衍生出一系列程序。[Juggeraut]复制自身并将其发送到接下来的10个地址。另一方面,大脚怪将原件和副本之间的地址设置为一个大质数。很难抓住大脚怪。此外,还有施乐公司白鹿阿图研究中心的约翰·F·肖克(John F.Shoch)编写的“蠕虫”,其目的是控制入侵的电脑。
计算机病毒的出现
在那个年代,计算机是不相连的,而是相互独立的,所以不会有小莫李氏引起的病毒瘟疫。如果计算机被感染并失去控制,工作人员只需将其关闭。但是当电脑连接逐渐成为社会结构的一部分,一个病毒程序或者自我复制的病毒程序就有可能被带来?贫困是一种祸害。因此,长期以来,知道如何玩“核心战争”游戏的计算机工作者在严守一制定了一条不成文的规定,即这些战争程序的内容不得向普通公众公开。
1983年,这个规则被打破了。肯·汤普森是那年一次杰出的计算机演讲的获胜者。在颁奖典礼上,他做了一个演讲,不仅公开证实了计算机病毒的存在,还告诉所有的听众如何编写自己的病毒程序。他所有的同事都吓坏了,但秘密已经传开了。1984年,情况变得更加复杂。今年,《科学美国人》的专栏作家A. K. Dewdney在5月刊上写了第一篇关于“磁心大战”的文章,任何读者只要寄两块钱在家里的电脑里开辟一个战场,就可以收到他写的程序。
[病毒]一词的正式出现
在1985年3月的[科学美国人]中,Dutney再次讨论了[磁心战争]-和病毒。文章开头他说:【去年5月份关于【磁心大战】的文章印出来的时候,我没有想到我说的是这么严肃的话题】并且第一次提到了【病毒】这个名字。他提到,意大利的Roberto Cerruti和Marco Morocutti发明了一种破坏软件的方法。他们想让Apple II电脑感染病毒,而不是蠕虫。
有鲁迪给杜特尼写了一封信,信中写道:【马可想写一个类似[病毒]的程序,可以从一台苹果电脑感染到另一台。但我们不能这样做,直到我认为病毒应该先感染磁盘,电脑只是媒介。这样,病毒就可以从一个磁盘感染到另一个磁盘。]
病毒的历史示例:
1975年,美国科普作家约翰·布鲁纳(John Brunner)写了一本名为《冲击波骑士》(Shock Wave Rider)的书,首次描述了计算机作为信息社会正义与邪恶斗争的工具的故事,成为当年最畅销的书籍之一。
1977年夏天,托马斯。J.Ryan的科幻小说《P-1的青春期》成为美国畅销书。在这本书里,作者描述了一种可以在电脑里互相传染的病毒,病毒最终控制了7000个。
1983 165438+10月3日,弗雷德·科恩博士开发出一种破坏性程序,可以在运行过程中自我复制,莱恩·阿德曼将其命名为计算机病毒。在每周一次的计算机安全研讨会上,正式提出八小时后,专家在VAX11/750计算机系统上运行,第一次病毒实验成功,一周后允许演示五次实验,从而验证了实验中计算机病毒的存在。
1986年初,在巴基斯坦拉合尔,Basit和Amjad两兄弟经营着一家IBM-PC及其兼容机的小店。他们写了巴基斯坦病毒,大脑。一年之内就传遍了全世界。
1988年3月2日,Mac爆发病毒。那一天,被感染的Mac停止工作,只显示“向所有Mac电脑用户宣告和平”的信息。来庆祝Mac的生日。
1988 165438+10月2日,美国6000多台电脑感染病毒,导致互联网无法正常运行。这是一起非常典型的计算机病毒入侵计算机网络事件,迫使美国政府立即做出反应,国防部成立了计算机应急行动小组。此次事件中的攻击包括5个计算机中心和12个区域节点,连接政府、大学、研究所和5万台有政府合同的计算机。在这次病毒事件中,计算机系统的直接经济损失达9600万美元。这个病毒的程序员是罗伯特·T·莫里斯(Robert T.Morris),当时23岁,是康奈尔大学攻读学位的研究生。
罗伯特·莫里斯设计的病毒程序利用了系统的弱点。由于罗伯特·莫里斯成为阿帕网最大的电子入侵者,他被允许参加康奈尔大学的毕业设计,并被授予哈佛大学艾肯中心超级用户的特权。他还被判处3年缓刑,罚款654.38+0万美元。他还被命令在新区服务400小时。
注意:在本文中,我们经常提到的蠕虫和病毒被归类为不同类型的病毒。
1988结尾,在中国国家统计部门发现球状病毒。
-
在病毒发展史上,病毒的出现是有规律的。一般新的病毒技术出现后,病毒发展迅速,然后反病毒技术的发展会抑制其传播。当操作系统升级时,病毒也会调整到新的方式,从而产生新的病毒技术。它可以分为:
DOS引导阶段
1987计算机病毒主要是引导病毒,代表病毒有“小球”和“石头”病毒。
那时候的电脑硬件少,功能简单,一般需要软盘启动。可引导病毒利用软盘的启动原理工作。它们修改系统启动扇区,在计算机启动时先获得控制权,减少系统内存,修改磁盘读写中断,影响系统工作效率,在系统访问磁盘时扩散。1989年,开机病毒发展到感染硬盘,典型代表就是“石头2”。
DOS可执行阶段
1989,可执行文件病毒出现。他们利用DOS系统中加载和执行文件的机制,以“耶路撒冷”和“星期日”病毒为代表。病毒代码在系统执行文件时获得控制权,修改DOS中断,在系统调用时被感染,并将其自身附加到可执行文件中,从而增加了文件长度。1990,发展成复合病毒,可以感染com和EXE文件。
伴随,批量阶段
1992出现了伴生病毒,它们利用DOS中加载文件的优先级来工作。比较有代表性的就是“金蝉”病毒,它在感染EXE文件的时候会生成一个与EXE同名,扩展名为COM的同伴。当它感染一个COM文件时,它会将原来的COM文件更改为同名的EXE文件,然后生成一个具有原来名称和COM文件扩展名的同伴。这样,当DOS加载文件时,病毒就获得了控制权。这种病毒的特点是不改变原始文件内容、日期和属性,在清除病毒时只删除其同伴。在非DOS操作系统中,一些伴生病毒是利用操作系统的描述语言来工作的,比较典型的就是“海盗旗”病毒。执行时,它会询问用户名和密码,然后返回一条错误消息并删除自己。批量病毒是一种在DOS下工作的病毒,类似于盗旗病毒。
幽灵,多态阶段
1994,随着汇编语言的发展,同样的功能可以用不同的方式来完成,这些方式的组合使得一段看似随机的代码产生了同样的运算结果。Ghost病毒正是利用了这一特点,每次感染都会产生不同的代码。比如“半”病毒,就是生成一段有上亿种可能解码算法的数据,病毒体在解码前就隐藏在数据中,需要解码这一段数据才能查出这类病毒,增加了病毒检测的难度。多态病毒是一种综合性病毒,可以感染引导区和程序区。大部分都有解码算法,一个病毒往往需要两个以上的子程序才能清除。
发电机,不同的机器级
1995在汇编语言中,有些数据操作放在不同的通用寄存器中,也能得到同样的结果。随机插入一些空操作和无关指令,操作结果不受影响。这样,生成器可以生成解码算法。当一个病毒产生后,就产生了这个被称为病毒生成器和变种机的复杂机器。典型代表是VCL,它可以在瞬间产生数千种不同的病毒。传统的特征识别方法在搜索和求解时无法使用,需要对指令进行宏观分析,解码后对病毒进行搜索和求解。变体机是一种指令生成机制,增加了解码的复杂度。
网络,蠕虫阶段第一部分第二部分
从65438到0995,随着互联网的普及,病毒开始通过互联网传播,这只是对前几代病毒的改进。在非DOS操作系统中,“蠕虫”是一个典型的代表。它不占用除内存以外的任何资源,不修改磁盘文件,利用网络函数搜索网络地址,将自身扩散到下一个地址,有时存在于网络服务器和启动文件中。
窗口阶段
1996随着Windows和Windows95的日益普及,利用Windows工作的病毒开始发展。他们修改(NE,PE)文件,典型代表就是DS。3873,这类病毒比较复杂,他们使用保护模式和API调用接口,清除方法也比较复杂。
大病毒阶段
1996,随着Windows Word功能的增强,还可以利用Word的宏语言编写病毒。这种病毒使用类似Basic的语言,很容易编写,会感染word文档。Excel和AmiPro中工作机制相同的病毒也属于这一类。因为Word文档格式不开放,所以很难查出这类病毒。
互联网阶段
1997随着互联网的发展,各种病毒开始通过互联网传播,携带病毒的数据包和邮件越来越多。如果不小心打开这些邮件,机器可能会中毒。
Java,邮件炸弹阶段
从65438年到0997年,随着Java在万维网上的普及,利用Java语言传播和获取信息的病毒开始出现,典型代表就是JavaSnake病毒。还有一些病毒利用邮件服务器进行传播和破坏,比如邮件炸弹病毒,严重影响互联网的效率。