北京江民新科技术有限公司
王江民
关键词: 病毒、网络蠕虫、变形病毒、病毒生产机、特络依木马、有害代码、抗病毒软件、数据备份、快速升级、灾难恢复
一 摘 要
文章概略的揭示了计算机病毒出现由简单到复杂的特性与目的,编病毒者还抛出了“病毒自动生产机”软件。文中指出了计算机病毒自身结构主要将向能对抗反病毒手段的变形病毒方向发展,并把这类病毒归纳为一维、二维、三维、四维变形病毒,使人们站在一定的高度上对变形病毒有一个较清楚的认识,以便今后针对其采取有效的措施进行主动诊治。文中提到的病毒名字都是作者亲自编程杀过的, 作者总结了多年的反病毒经验,提出抗病毒最基本的做法是:一备份,二快升级,三灾难恢复。
二 我们将与病毒长久共存
人类进入了信息社会创造了智能机器(电子计算机), 同时也创造了机器(电子计算机)病毒,福祸同降。 人类在信息社会更容易与机器(电子计算机)融为一个整体,可是,破坏这个整体的一个方面将是机器病毒(计算机病毒),人类同时在与生物病毒作斗争时又要与机器病毒作斗争,这是人类在方便自己时也在为难自己。
从一九八三年计算机病毒首次被确认以来,并没有引起人们的重视。直到一九八七年计算机病毒才开使受到世界范围内的普遍重视。我国于一九八九年在计算机界发现病毒。至今,全世界已发现近数万种病毒,并且还在高速度的增加。
由于计算机软件的脆弱性与互联网的开放性,我们将与病毒长久共存。而且,病毒主要朝着能更好的隐蔽自己并对抗反病毒手段的方向发展。同时,病毒已被人们利用其特有的性质与其他功能相结合进行有目的的活动。
病毒的花样不断翻新,编程手段越来越高,防不胜防。特别是Internet的广泛应用,促进了病毒的空前活跃,网络蠕虫病毒传播更快更广,Windows病毒更加复杂,带有黑客性质的病毒和特络依木马等有害代码大量涌现。
下面按病毒先后出现的顺序,简要例举部分病毒的特性就可看出其发展过程。
三 病毒的发展过程
20世纪60年代初,美国贝尔实验室里,三个年轻的程序员编写了一个名为“磁芯大战”的游戏,游戏中通过复制自身来摆脱对方的控制,这就是所谓“病毒”的第一个雏形。
20世纪70年代,美国作家雷恩在其出版的<<P1的青春>>一书中构思了一种能够自我复制的计算机程序,并第一次称之为“计算机病毒”。
1983年11月,在国际计算机安全学术研讨会上,美国计算机专家首次将病毒程序在VAX/750计算机上进行了实验,世界上第一个计算机病毒就这样出生在实验室中。
20世纪80年代后期,巴基斯坦有两个编软件为生的兄弟,他们为了打击那些盗版软件的使用者,设计出了一个名为“巴基斯坦智囊”的病毒,该病毒只传染软盘引导。这就是最早在世界上流行的一个真正的病毒。
1988年至1989年,我国也相继出现了也能感染硬盘和软盘引导区的Stoned(石头)病毒,该病毒体代码中有明显的标志“Your PC is now Stoned!”、“LEGALISE MARIJUANA!”,也称为“大麻”病毒”等。该病毒感染软硬盘0面0道1扇区,并修改部分中断向量表。该病毒不隐藏也不加密自身代码,所以很容易被查出和解除。类似这种特性的还有“小球、Azusa/Hong-Kong/2708、 Michaelangelo,这些都是从国外传染进来的。而国产的有Bloody、 Torch、Disk Killer等病毒,实际上它们大多数是Stoned病毒的翻版。
20世纪90年代初,感染文件的病毒有Jerusalem(黑色13号星期五)、 YankeeDoole、 Liberty、 1575、 Traveller、1465、2062,4096等,主要感染.COM和.EXE文件。这类病毒修改了部分中断向量表,被感染的文件明显的增加了字节数,并且病毒代码主体没有加密,也容易被查出和解除。 这些病毒中, 略有对抗反病毒手段的只有Yankee Doole病毒, 当它发现你用DEBUG工具跟踪它的话,它会自动从文件中逃走。
接着, 又一些能对自身进行简单加密的病毒相继出现,有1366(DaLian)、1824(N64)、1741(Dong)、1100等病毒。它们加密的目的主要是防止跟踪或掩盖有关特征等。
在内存有1741病毒时, 用DIR列目录表,病毒会掩盖被感染文件所增加的字节数,使看起来字节数很正常。
而1345-64185病毒却每传染一个目标就增加一个字节, 增到64185个字节时,文件就被破坏。
以后又出现了引导区、文件型“双料”病毒,这类病毒既感染磁盘引导区、又感染可执行文件,常见的有Flip/Omicron、 XqR(New century)、
Invader/侵入者、 Plastique/塑料炸弹、3584/郑州(狼)、3072(秋天的水)、ALFA/3072-2、Ghost/One_Half/3544(幽灵)、Natas(幽灵王)、TPVO/3783等,如果只解除了文件上的病毒,而没解除硬盘主引导区的病毒,系统引导时又将病毒调入内存,会重新感染文件。如果只解除了主引导区的病毒,而可执行文件上的病毒没解除,一执行带毒的文件时,就又将硬盘主引导区感染。
Flip/Omicron(颠倒)、XqR(New century新世纪)这两种病毒都设计有对抗反病毒技术的手段,Flip(颠倒)病毒对其自身代码进行了随机加密,变化无穷,使绝大部分病毒代码与前一被感染目标中的病毒代码几乎没有三个连续的字节是相同的,该病毒在主引导区只潜藏了少量的代码,病毒另将自身全部代码潜藏于硬盘最后6个扇区中,并将硬盘分区表和DOS引导区中的磁盘实用扇区数减少了6个扇区,所以再次起动系统后, 硬盘的实用空间就减少了6个扇区。这样,原主引导记录和病毒主程序就保存在硬盘实用扇区外,避免了其它程序的覆盖,而且用DEBUG的L命令也不能调出查看,就是用FORMAT进行格式化也不能消除病毒,可见,病毒编制者用意深切!与此相似的还有Denzuko病毒。
XqR(New century新世纪)病毒也有它更狡猾的一面,它监视着INT13、INT21中断有关参数,当你要查看或搜索被其感染了的主引导记录时,病毒就调换出正常的主引导记录给你查看或让你搜索,使你认为一切正常,病毒却蒙混过关。病毒的这种对抗方法,我们在此称为:病毒在内存时,具有“反串”(反转)功能。这类病毒还有Mask(假面具)、2709/ROSE(玫瑰)、One_Half/3544(幽灵)、Natas/4744、Monkey、PC_LOCK、DIE_HARD/HD2、GranmaGrave/Burglar/1150、 3783病毒等,现在的新病毒越来越多的使用这种功能来对抗按装在硬盘上的抗病毒软件,但用无病毒系统软盘引导机器后,病毒就失去了“反串”(反转)功能。
1345、 1820、PCTCOPY-2000病毒却直接隐藏在COMMAND.COM文件内的空闲(0代码)部位,从外表上看,文件一个字节也没增加。
INT60(0002)病毒隐藏的更加神秘,它不修改主引导记录, 只将硬盘分区表修改了两个字节,使那些只检查主引导记录的程序认为完全正常,病毒主体却隐藏在这两个字节指向的区域。硬盘引导时,ROM-BIOS程序糊理糊涂的按这两个字节的引向,将病毒激活。病毒太狡猾了,只需两个字节,就可以牵着机器的鼻子走!
Monkey(猴子)、PC_LOCK(加密锁)病毒将硬盘分区表加密后再隐藏起来, 如果轻易将硬盘主引导记录更换,或用FDISK/MBR格式轻易将硬盘主引导记录更换, 那么,就再进不了硬盘了,数据也取不出来了,所以,不要轻易使用FDISK/MBR格式。
(责任编辑:adminadmin2008)