计算机病毒的检测和防治办法

出处:按学科分类—政治、法律 中国商业出版社《新世纪工会办公室实务操作大全下卷》第1469页(7469字)

一、计算机病毒的特点

人为的特制程序,具有自我复制能力,很强的感染性,一定的潜伏性,特定的触发性,很大的破坏性。

二、病毒存在的必然性

计算机的信息需要存取、复制、传送,病毒作为信息的一种形式可以随之繁殖、感染、破坏。并且,当病毒取得控制权之后,他们会主动寻找感染目标,使自己广为流传。

三、计算机病毒的产生

病毒不是来源于突发或偶然的原因。

突发的停电和偶然的错误,会在计算机的磁盘和内存中产生一些乱码和随机指令,但这些代码是无序和混乱的。病毒则是一种比较完美的,精巧严谨的代码,按照严格的秩序组织起来,与所在的系统网络环境相适应和配合起来,病毒不会通过偶然形成,并且需要有一定的长度,这个基本的长度从概率上来讲是不可能通过随机代码产生的。病毒是人为的特制程序。现在流行的病毒是由人为故意编写的,多数病毒可以找到作者信息和产地信息。

四、计算机病毒分类

(一)根据病毒存在的媒体,病毒可以划分为网络病毒,文件病毒,引导型病毒

网络病毒通过计算机网络传播感染网络中的可执行文件,文件病毒感染计算机中的文件(如:COM,EXE,DOC等),引导型病毒感染启动扇区(Boot)和硬盘的系统引导扇区(MBR),还有这三种情况的混合型,例如:多型病毒(文件和引导型)感染文件和引导扇区两种目标,这样的病毒通常都具有复杂的算法,它们使用非常规的办法侵入系统,同时使用了加密和变形算法。

(二)根据病毒破坏的能力可划分为以下几种:

无害型:除了传染时减少磁盘的可用空间外,对系统没有其他影响。

无危险型:这类病毒仅仅是减少内存、显示图像、发出声音及同类音响。

危险型:这类病毒在计算机系统操作中造成严重的错误。

非常危险型:这类病毒删除程序、破坏数据、清除系统内存区和操作系统中重要的信息。

(三)根据病毒特有的算法,病毒可以划分为:

伴随型病毒:这一类病毒并不改变文件本身,它们根据算法产生EXE文件的伴随体,具有同样的名字和不同的扩展名(COM),例如:XCOPY.EXE的伴随体是XCOPY.COM。病毒把自身写入COM文件并不改变EXE文件,当DOS加载文件时,伴随体优先被执行到,再由伴随体加载执行原来的EXE文件。

“蠕虫”型病毒:通过计算机网络传播,不改变文件和资料信息,利用网络从一台机器的内存传播到其他机器的内存,计算网络地址,将自身的病毒通过网络发送。有时它们在系统存在,一般除了内存不占用其他资源。

寄生型病毒:除了伴随和“蠕虫”型,其他病毒均可称为寄生型病毒,它们依附在系统的引导扇区或文件中,通过系统的功能进行传播,按算法分为:

练习型病毒:病毒自身包含错误,不能进行很好的传播,例如一些病毒在调试阶段。

诡秘型病毒:它们一般不直接修改DOS中断和扇区数据,而是通过设备技术和文件缓冲区等DOS内部修改,不易看到资源,使用比较高级的技术。利用DOS空闲的数据区进行工作。

变型病毒(又称幽灵病毒):这一类病毒使用一个复杂的算法,使自己每传播一份都具有不同的内容和长度。它们一般由一段混有无关指令的解码算法和被变化过的病毒体组成。

五、计算机病毒的破坏行为

计算机病毒的破坏行为体现了病毒的杀伤能力。病毒破坏行为的激烈程度取决于病毒作者的主观愿望和他所具有的技术能量。根据有的病毒资料可以把病毒的破坏目标和攻击部位归纳如下:

1.攻击系统数据区,攻击部位包括:硬盘主引导扇区、Boot扇区、FAT表、文件目录。一般来说,攻击系统数据区的病毒是恶性病毒,受损的数据不易恢复。

2.攻击文件。病毒对文件的攻击方式很多,可列举如下:删除、改名、替换内容、丢失部分程序代码、内容颠倒、写入时间空白、变碎片、假冒文件、丢失文件簇、丢失数据文件。

3.攻击内存。内存是计算机的重要资源,也是病毒的攻击目标。病毒额外地占用和消耗系统的内存资源,可以导致一些大程序受阻。病毒攻击内存的方式如下:占用大量内存、改变内存总量、禁止分配内存、蚕食内存。

4.干扰系统运行。病毒会干扰系统的正常运行,以此作为自己的破坏行为。此类行为也是花样繁多,可以列举下述诸方式:不执行命令、干扰内部命令的执行、虚假报警、打不开文件、内部栈溢出、占用特殊数据区、换现行盘、时钟倒转、重启动、死机、强制游戏、扰乱串并行口。

5.速度下降。病毒激活时,其内部的时间延迟程序启动。在时钟中纳入了时间的循环计数,迫使计算机空转,计算机速度明显下降。

6.攻击磁盘。攻击磁盘数据、不写盘、写操作变读操作、写盘时丢字节。

7.扰乱屏幕显示。病毒扰乱屏幕显示的方式很多,可列举如下:字符跌落、环绕、倒置、显示前一屏、光标下跌、滚屏、抖动、乱写、吃字符。

8.键盘。病毒干扰键盘操作,已发现有下述方式:响铃、封锁键盘、换字、抹掉缓存区字符、重复、输入紊乱。

9.喇叭。许多病毒运行时,会使计算机的喇叭发出响声。有的病毒作者让病毒演奏旋律优美的世界名曲,在高雅的曲调中去杀戮人们的信息财富。有的病毒作者通过喇叭发出种种声音。已发现的有以下方式:演奏曲子、警笛声、炸弹噪声、鸣叫、咔咔声、嘀嗒声。

10.攻击CMOS。在机器的CMOS区中,保存着系统的重要数据。例如系统时钟、磁盘类型、内存容量等,并具有校验和。有的病毒激活时,能够对CMOS区进行写入动作,破坏系统CMOS中的数据。

六、病毒检测的方法

在与病毒的对抗中,及早发现病毒很重要。早发现,早处置,可以减少损失。检测病毒方法有:特征代码法、校验和法、行为监测法、软件模拟法,

这些方法依据的原理不同,实现时所需开销不同,检测范围不同,各有所长。

(一)特征代码法

特征代码法被早期应用于SCAN、CPAV等着名病毒检测工具中。国外专家认为特征代码法是检测已知病毒的最简单、开销最小的方法。

特征代码法的实现步骤如下:

采集已知病毒样本,病毒如果既感染COM文件,又感染EXE文件,对这种病毒要同时采集COM型病毒样本和EXE型病毒样本。

在病毒样本中,抽取特征代码。依据如下原则:

抽取的代码比较特殊,不大可能与普通正常程序代码吻合。抽取的代码要有适当长度,一方面维持特征代码的惟一性,另一方面又不要有太大的空间与时间的开销。如果一种病毒的特征代码增长一字节,要检测3000种病毒,增加的空间就是3000字节。在保持惟一性的前提下,尽量使特征代码长度短些,以减少空间与时间开销。

在既感染COM文件又感染EXE文件的病毒样本中,要抽取两种样本共有的代码。将特征代码纳入病毒数据库。

打开被检测文件,在文件中搜索,检查文件中是否含有病毒数据库中的病毒特征代码。如果发现病毒特征代码,由于特征代码与病毒一一对应,便可以断定,被查文件中患有何种病毒。

采用病毒特征代码法的检测工具,面对不断出现的新病毒,必须不断更新版本,否则检测工具便会老化,逐渐失去实用价值。病毒特征代码法对从未见过的新病毒,自然无法知道其特征代码,因而无法去检测这些新病毒。

特征代码法的优点是:检测准确快速、可识别病毒的名称、误报警率低、依据检测结果,可做解毒处理。其缺点是:不能检测未知病毒、搜集已知病毒的特征代码,费用开销大、在网络上效率低(在网络服务器上,因长时间检索会使整个网络性能变坏)。

其特点:

1.速度慢。随着病毒种类的增多,检索时间变长。如果检索5000种病毒,必须对5000个病毒特征代码逐一检查。如果病毒种数再增加,检病毒的时间就变得非常长。此类工具检测的高速性,将变得日益困难。

2.误报警率低。

3.不能检查多形性病毒。特征代码法是不可能检测多态性病毒的。国外专家认为多态性病毒是病毒特征代码法的索命者。

4.不能对付隐蔽性病毒。隐蔽性病毒如果先进驻内存,后运行病毒检测工具,隐蔽性病毒能先于检测工具,将被查文件中的病毒代码剥去,检测工具的确是在检查一个虚假的“好文件”,而不能报警,被隐蔽性病毒所蒙骗。

(二)校验和法

将正常文件的内容,计算其校验和,将该校验和写入文件中或写入别的文件中保存。在文件使用过程中,定期地或每次使用文件前,检查文件现在内容算出的校验和与原来保存的校验和是否一致,因而可以发现文件是否被感染,这种方法叫校验和法,它既可发现已知病毒又可发现未知病毒。在SCAN和CPAV工具的后期版本中除了病毒特征代码法之外,还纳入校验和法,以提高其检测能力。

这种方法既能发现已知病毒,也能发现未知病毒,但是,它不能识别病毒类,不能报出病毒名称。由于病毒感染并非文件内容改变的惟一的非他性原因,文件内容的改变有可能是正常程序引起的,所以校验和法常常误报警。而且此种方法也会影响文件的运行速度。

病毒感染的确会引起文件内容变化,但是校验和法对文件内容的变化太敏感,又不能区分正常程序引起的变动,而频繁报警。用监视文件的校验和来检测病毒,不是最好的方法。

这种方法遇到下述情况:已有软件版更新、变更口令、修改运行参数、校验和法都会误报警。

校验和法对隐蔽性病毒无效。隐蔽性病毒进驻内存后,会自动剥去染毒程序中的病毒代码,使校验和法受骗,对一个有毒文件算出正常校验和。

运用校验和法查病毒采用三种方式:

1.在检测病毒工具中纳入校验和法,对被查的对象文件计算其正常状态的校验和,将校验和值写入被查文件中或检测工具中,而后进行比较。

2.在应用程序中,放入校验和法自我检查功能,将文件正常状态的校验和写入文件本身中,每当应用程序启动时,比较现行校验和与原校验和值。实现应用程序的自检测。

3.将校验和检查程序常驻内存,每当应用程序开始运行时,自动比较检查应用程序内部或别的文件中预先保存的校验和。

校验和法的优点是:方法简单能发现未知病毒、被查文件的细微变化也能发现。其缺点是:发布通行记录正常态的校验和、会误报警、不能识别病毒名称、不能对付隐蔽型病毒。

(三)行为监测法

利用病毒的特有行为特征性来监测病毒的方法,称为行为监测法。通过对病毒多年的观察、研究,有一些行为是病毒的共同行为,而且比较特殊。在正常程序中,这些行为比较罕见。当程序运行时,监视其行为,如果发现了病毒行为,立即报警。

这些作为监测病毒的行为特征如下:

1.占有INT13H。

所有的引导型病毒,都攻击Boot扇区或主引导扇区。系统启动时,当Boot扇区或主引导扇区获得执行权时,系统刚刚开工。一般引导型病毒都会占用INT13H功能,因为其他系统功能未设置好,无法利用。引导型病毒占据INT13H功能,在其中放置病毒所需的代码。

2.改DOS系统为数据区的内存总量。

病毒常驻内存后,为了防止DOS系统将其覆盖,必须修改系统内存总量。

3.对COM、EXE文件做写入动作。

病毒要感染,必须写COM、EXE文件。

4.病毒程序与宿主程序的切换。

染毒程序运行中,先运行病毒,而后执行宿主程序。在两者切换时,有许多特征行为。

行为监测法的长处:可发现未知病毒、可相当准确地预报未知的多数病毒。行为监测法的短处:可能误报警、不能识别病毒名称、实现时有一定难度。

(四)软件模拟法

多态性病毒每次感染都变化其病毒密码,对付这种病毒,特征代码法失效。因为多态性病毒代码实施密码化,而且每次所用密钥不同,把染毒的病毒代码相互比较,也无法找出相同的可能作为特征的稳定代码。虽然行为检测法可以检测多态性病毒,但是在检测出病毒后,因为不知病毒的种类,难于做消毒处理。

七、计算机病毒的防治策略

计算机病毒的防治要从防毒、查毒、解毒三方面来进行;系统对于计算机病毒的实际防治能力和效果也要从防毒能力、查毒能力和解毒能力三方面来评判。

“防毒”是指根据系统特性,采取相应的系统安全措施预防病毒侵入计算机。“查毒”是指对于确定的环境,能够准确地报出病毒名称,该环境包括,内存、文件、引导区(含主导区)、网络等。“解毒”是指根据不同类型病毒对感染对象的修改,并按照病毒的感染特性所进行的恢复。该恢复过程不能破坏未被病毒修改的内容。感染对象包括:内存、引导区(含主引导区)、可执行文件、文档文件、网络等。

防毒能力是指预防病毒侵入计算机系统的能力。通过采取防毒措施,可以准确地、实时地监测预警经由光盘、软盘、硬盘不同目录之间、局域网、因特网(包括FTP方式、E-MAIL、HTTP方式)或其他形式的文件下载等多种方式进行的传输;能够在病毒侵入系统时发出警报,记录携带病毒的文件,即时清除其中的病毒;对网络而言,能够向网络管理员发送关于病毒入侵的信息,记录病毒入侵的工作站,必要时还要能够注销工作站,隔离病毒源。

查毒能力是指发现和追踪病毒来源的能力。通过查毒应该能准确地发现计算机系统是否感染有病毒,并准确查找出病毒的来源,并能给出统计报告;查解病毒的能力应由查毒率和误报率来评判。

解毒能力是指从感染对象中清除病毒,恢复被病毒感染前的原始信息的能力;解毒能力应用解毒率来评判。

较优秀的杀毒软件有KV2000、瑞星杀毒软件、金山毒霸等等,需要注意的是杀毒软件要不断升级,不要图便宜用盗版的杀毒软件来杀毒,那样可能得不偿失。平时在工作时,如果有外盘进入计算机,一定要先查毒、杀毒,然后再操作;遇有定期发作的病毒时,一是当天不开机;二可以提前改一下日期。如遇有病毒破坏特别严重的紧急情况,可向国家计算机病毒应急处理中心求助(地址:天津市和平区鞍山道41号,邮编:300020;电话:022-87307180;传真:022-27316567)。

分享到: