什么是计算机病毒
chw · 2007-09-11 18:19 · 45088 次点击
1、病毒从何而来
原因有几:
开个玩笑,一个恶作剧。某些爱好计算机并对计算机技术精通的人士为了炫耀自己的高超技术和智慧,凭借对软硬件的深入了解,编制这些特殊的程序。这些程序通过载体传播出去后,在一定条件下被触发。如显示一些动画,播放一段音乐,或提一些智力问答题目等,其目的无非是自我表现一下。这类病毒一般都是良性的,不会有破坏操作。
产生于个别人的报复心理。每个人都处于社会环境中,但总有人对社会不满或受到不公证的待遇。如果这种情况发生在一个编程高手身上,那么他有可能会编制一些危险的程序。在国外有这样的事例:某公司职员在职期间编制了一段代码隐藏在其公司的系统中,一旦检测到他的名字在工资报表中删除,该程序立即发作,破坏整个系统。类似案例在国内亦出现过。
用于版权保护。计算机发展初期,由于在法律上对于软件版权保护还没有象今天这样完善。很多商业软件被非法复制,有些开发商为了保护自己的利益制作了一些特殊程序,附在产品中。如:巴基斯坦病毒,其制作者是为了追踪那些非法拷贝他们产品的用户。用于这种目的的病毒目前已不多见。
用于特殊目的。某组织或个人为达到特殊目的,对政府机构、单位的特殊系统进行宣传或破坏。或用于军事目的。
还有出于对上司的不满,为了好奇,为了报复,为了祝贺和求爱,为了得到控制口令,为了软件拿不到报酬预留的陷阱等。
2、病毒的特征
1.传染性
病毒的基本特征。在生物界,通过传染病毒从一个生物体扩散到另一个生物体。在适当的条件下,它可得到大量繁殖,并使被感染的生物体表现出病症甚至死亡。同样,计算机病毒也会通过各种渠道从已被感染的计算机扩散到未被感染的计算机,在某些情况下造成被感染的计算机工作失常甚至瘫痪。与生物病毒不同的是,计算机病毒是一段人为编制的计算机程序代码,这段程序代码一旦进入计算机并得以执行,它会搜寻其他符合其传染条件的程序或存储介质,确定目标后再将自身代码插入其中,达到自我繁殖的目的。只要一台计算机染毒,如不及时处理,那么病毒会在这台机子上迅速扩散,其中的大量文件(一般是可执行文件)会被感染。而被感染的文件又成了新的传染源,再与其他机器进行数据交换或通过网络接触,病毒会继续进行传染。
正常的计算机程序一般是不会将自身的代码强行连接到其它程序之上的。而病毒却能使自身的代码强行传染到一切符合其传染条件的未受到传染的程序之上。计算机病毒可通过各种可能的渠道,如软盘、计算机网络去传染其它的计算机。当你在一台机器上发现了病毒时,往往曾在这台计算机上用过的软盘已感染上了病毒,而与这台机器相联网的其它计算机也许也被该病毒侵染上了。是否具有传染性是判别一个程序是否为计算机病毒的最重要条件。
未经授权而执行。一般正常的程序是由用户调用,再由系统分配资源,完成用户交给的任务。其目的对用户是可见的、透明的。而病毒具有正常程序的一切特性,它隐藏再正常程序中,当用户调用正常程序时窃取到系统的控制权,先于正常程序执行,病毒的动作、目的对用户时未知的,是未经用户允许的。
2.隐蔽性
病毒一般是具有很高编程技巧、短小精悍的程序。通常附在正常程序中或磁盘较隐蔽的地方,也有个别的以隐含文件形式出现。目的是不让用户发现它的存在。如果不经过代码分析,病毒程序与正常程序是不容易区别开来的。一般在没有防护措施的情况下,计算机病毒程序取得系统控制权后,可以在很短的时间里传染大量程序。而且受到传染后,计算机系统通常仍能正常运行,使用户不会感到任何异常。试想,如果病毒在传染到计算机上之后,机器马上无法正常运行,那么它本身便无法继续进行传染了。正是由于隐蔽性,计算机病毒得以在用户没有察觉的情况下扩散到上百万台计算机中。
大部分的病毒的代码之所以设计得非常短小,也是为了隐藏。病毒一般只有几百或1k字节,而PC机对DOS文件的存取速度可达每秒几百KB以上,所以病毒转瞬之间便可将这短短的几百字节附着到正常程序之中,使人非常不易被察觉。
3.潜伏性
大部分的病毒感染系统之后一般不会马上发作,它可长期隐藏在系统中,只有在满足其特定条件时才启动其表现(破坏)模块。只有这样它才可进行广泛地传播。如"ETER-2"在每年2月27日会提三个问题,答错后会将硬盘加密。著名的"黑色星期五"在逢13号的星期五发作。国内的"上海一号"会在每年三、六、九月的13日发作。当然,最令人难忘的便是26日发作的CIH。这些病毒在平时会隐藏得很好,只有在发作日才会露出本来面目。
4.破坏性
任何病毒只要侵入系统,都会对系统及应用程序产生程度不同的影响。轻者会降低计算机工作效率,占用系统资源,重者可导致系统崩溃。由此特性可将病毒分为良性病毒与恶性病毒。良性病度可能只显示些画面或出点音乐、无聊的语句,或者根本没有任何破坏动作,但会占用系统资源。这类病毒较多,如:GENP、小球、W-BOOT等。恶性病毒则有明确得目的,或破坏数据、删除文件或加密磁盘、格式化磁盘,有的对数据造成不可挽回的破坏。这也反映出病毒编制者的险恶用心。
5.不可预见性
从对病毒的检测方面来看,病毒还有不可预见性。不同种类的病毒,它们的代码千差万别,但有些操作是共有的(如驻内存,改中断)。有些人利用病毒的这种共性,制作了声称可查所有病毒的程序。这种程序的确可查出一些新病毒,但由于目前的软件种类极其丰富,且某些正常程序也使用了类似病毒的操作甚至借鉴了某些病毒的技术。使用这种方法对病毒进行检测势必会造成较多的误报情况。而且病毒的制作技术也在不断的提高,病毒对反病毒软件永远是超前的。
3、病毒的分类
按破坏性可分为:
良性病毒:仅仅显示信息、奏乐、发出声响,自我复制的。除了传染时减少磁盘的可用空间外,对系统没有其它影响。
恶性病毒:封锁、干扰、中断输入输出、使用户无法打印等正常工作,甚至电脑中止运行。这类病毒在计算机系统操作中造成严重的错误。
极恶性病毒:死机、系统崩溃、删除普通程序或系统文件,破坏系统配置导致系统死机、崩溃、无法重启。这些病毒对系统造成的危害,并不是本身的算法中存在危险的调用,而是当它们传染时会引起无法预料的和灾难性的破坏。
灾难性病毒:破坏分区表信息、主引导信息、FAT,删除数据文件,甚至格式化硬盘等。
按传染方式分为:
文件型病毒:一般只传染磁盘上的可执行文件(COM,EXE)。在用户调用染毒的可执行文件时,病毒首先被运行,然后病毒驻留内存伺机传染其他文件或直接传染其他文件。其特点是附着于正常程序文件,成为程序文件的一个外壳或部件。这是较为常见的传染方式。
混合型病毒:兼有以上两种病毒的特点,既染引导区又染文件,因此扩大了这种病毒的传染途径。
按连接方式分为:
源码型病毒:较为少见,亦难以编写。因为它要攻击高级语言编写的源程序,在源程序编译之前插入其中,并随源程序一起编译、连接成可执行文件。此时刚刚生成的可执行文件便已经带毒了。
入侵型病毒:可用自身代替正常程序种的部分模块或堆栈区。因此这类病毒只攻击某些特定程序,针对性强。一般情况下也难以被发现,清除起来也较困难。
操作系统型病毒:可用其自身部分加入或替代操作系统的部分功能。因其直接感染操作系统,这类病毒的危害性也较大。
外壳型病毒:将自身附在正常程序的开头或结尾,相当于给正常程序加了个外壳。大部份的文件型病毒都属于这一类。
根据病毒特有的算法可以划分为:
伴随型病毒:这一类病毒并不改变文件本身,它们根据算法产生EXE文件的伴随体,具有同样的名字和不同的扩展名(COM),例如:XCOPY.EXE的伴随体是XCOPY.COM。病毒把自身写入COM文件并不改变EXE文件,当DOS加载文件时,伴随体优先被执行到,再由伴随体加载执行原来的EXE文件。
"蠕虫"型病毒:通过计算机网络传播,不改变文件和资料信息,利用网络从一台机器的内存传播到其它机器的内存,计算网络地址,将自身的病毒通过网络发送。有时它们在系统存在,一般除了内存不占用其它资源。寄生型病毒:除了伴随和"蠕虫"型,其它病毒均可称为寄生型病毒,它们依附在系统的引导扇区或文件中,通过系统的功能进行传播,
练习型病毒:病毒自身包含错误,不能进行很好的传播,例如一些病毒在调试阶段。
诡秘型病毒:它们一般不直接修改DOS中断和扇区数据,而是通过设备技术和文件缓冲区等DOS内部修改,不易看到资源,使用比较高级的技术。利用DOS空闲的数据区进行工作。
变型病毒(又称幽灵病毒):这一类病毒使用一个复杂的算法,使自己每传播一份都具有不同的内容和长度。它们一般的作法是一段混有无关指令的解码算法和被变化过的病毒体组成。
计算机病毒的种类虽多,但对病毒代码进行分析、比较可看出,它们的主要结构是类似的,有其共同特点。整个病毒代码虽短小但也包含三部分:引导部分,传染部分,表现部分。
a、引导部分的作用是将病毒主体加载到内存,为传染部分做准备(如驻留内存,修改中断,修改高端内存,保存原中断向量等操作)。
b、传染部分的作用是将病毒代码复制到传染目标上去。不同类型的病毒在传染方式,传染条件上各有不同。
c、表现部分是病毒间差异最大的部分,前两个部分也是为这部分服务的。大部分的病毒都是有一定条件才会触发其表现部分的。如:以时钟、计数器作为触发条件的或用键盘输入特定字符来触发的。这一部分也是最为灵活的部分,这部分根据编制者的不同目的而千差万别,或者根本没有这部分。
4、病毒的危害
让我们来看看病毒曾经做过的恶事!
自从1946年第一台冯-诺依曼型计算机ENIAC出世以来,计算机已被应用到人类社会的各个领域。然而,1988年发生在美国的"蠕虫病毒"事件,给计算机技术的发展罩上了一层阴影。蠕虫病毒是由美国CORNELL大学研究生莫里斯编写。虽然并无恶意,但在当时,"蠕虫"在INTERNET上大肆传染,使得数千台连网的计算机停止运行,并造成巨额损失,成为一时的舆论焦点。详情如下:
1988年11月2日下午5时1分59秒,美国康奈尔大学的计算机科学系研究生,23岁的莫里斯(Morris)将其编写的蠕虫程序输入计算机网络。在几小时内导致因特网堵塞。这个网络连接着大学、研究机关的155000台计算机,使网络堵塞,运行迟缓。这件事就像是计算机界的一次大地震,引起了巨大反响,震惊全世界,引起了人们对计算机病毒的恐慌,也使更多的计算机专家重视和致力于计算机病毒研究。
1988年下半年,我国在统计局系统首次发现了"小球"病毒,它对统计系统影响极大。最近的CIH病毒,美丽杀病毒等等都在全世界范围内造成了很大的经济和社会损失。
在国内,最初引起人们注意的病毒是80年代末出现的"黑色星期五","米氏病毒","小球病毒"等。因当时软件种类不多,用户之间的软件交流较为频繁且反病毒软件并不普及,造成病毒的广泛流行。后来出现的word宏病毒及win95下的CIH病毒,使人们对病毒的认识更加深了一步。
可以看到,随着计算机和因特网的日益普及,计算机病毒和崩溃,重要数据遭到破坏和丢失,会造成社会财富的巨大浪费,甚至会造成全人类的灾难。