论坛: 病毒专区 标题: 计算机病毒比较法诊断的原理  复制本贴地址    
作者: dinghj [dinghj]    论坛用户   登录
比较法是用原始的或正常的与被检测的进行比较。比较法包括长度比较法、内容比较法、内存比较法、中断比较法等。比较时可以靠打印的代码清单(比如DEBUG的D命令输出格式)进行比较,或用程序来进行比较(如DOS的DISKCOMP、COMP或PC-TOOLS等其他软件)。这种比较法不需要专用的查病毒程序,只要用常规DOS软件和PCTOOLS等工具软件就可以进行。而且用这种比较法还可以发现那些尚不能被现有的查病毒程序发现的计算机病毒。因为病毒传播得很快,新病毒层出不穷,由于目前还没有做出通用的能查出一切病毒,或通过代码分析,可以判定某个程序中是否含有病毒的查毒程序,发现新病毒就只有靠比较法和分析法,有时必须结合这两者来一同工作。

    1.长度比较法及内容比较法
     病毒感染系统或文件,必然引起系统或文件的变化,既包括长度的变化,又包括内容的变化。因此,将病毒的系统或文件与被检测的系统或文件的长度和内容进行比较,即可以发现病毒。长度比较法和内容比较法就是从长度和内容两方面进行比较而得名。以长度或内容是否变化做为检测病毒的依据,在许多场合是有效的。但是,众所周知,现在还没有一种方法可以检测所有的病毒。长度比较法和内容比较法有其局限性,只检查可疑系统或文件的长度和内容是不充分的。因为:
  (1)长度和内容的变化可能是合法的。有些普通的命令可以引起长度和内容变化。
  (2)某些病毒感染文件时,宿主文件长度可保持不变。
    上述情况下,长度比较法和内容比较法不能区别程序的正常变化和病毒攻击引起的变化,不能识别保持宿主程序长度不变的病毒,无法判定为何种病毒。实践告诉我们,只靠检测长度或内容是不充分的,将长度比较法、内容比较法做为检测病毒的手段之一,与其他方法配合使用,效果更好。

    2.内存比较法
    这是一种对内存驻留病毒进行检测的方法。由于病毒驻留于内存,必须在内存中申请一定的空间,并对该空间进行占用、保护。因此,通过对内存的检测,观察其空间变化,与正常系统内存的占用和空间进行比较,可以判定是否有病毒驻留空间,但无法判定为何种病毒。此法对于那些隐蔽型病毒无效。

    3.中断比较法
    病毒为实现其隐蔽和传染破坏之目的,常采用“截留盗用”技术,更改、接管中断向量,让系统中断向量转向执行病毒控制部分。因此,将正常系统的中断向量与有病毒系统的中断向量进行比较,可以发现是否有病毒修改和盗用中断向量。由于高版本的DOS系统在DOS引导之后重新管理一部分BIOS中断服务程序,即将原中断向量保存起来,这时,引导型病毒所修改的中断向量也同时被保存起来,因而从中断向量中可能观察不到引导型病毒对中断向量的修改。与PCTOOLS一同提供的MI是一个非常有用的检测工具,它不仅能够显示系统内存大小、内存分配状况,而且能够显示出哪个驻留程序占用哪些内存空间、按管哪些中断向量。用MI软件可检测出文件型病毒常驻内存及更改部分中断向量的信息。

    使用比较法能发现异常,如文件的长度有变化,或虽然文件长度未发生变化,但文件内的程序代码发生了变化。对硬盘主引导区或对DOS的引导扇区做检查,比较法能发现其中的程序代码是否发生了变化。由于要进行比较,保留好原始备份是非常重要的,制作备份时必须在无计算机病毒的环境时进行,制作好的备份必须妥善保管,写好标签,贴写好保护签。比较法的好处是简单、方便,不需专用软件。缺点是无法确认病毒的种类名称。另外,造成被检测程序与原始备份之间差别的原因尚需进一步验证,以查明是由于计算机病毒造成的,或是由于DOS数据偶然原因,如突然停电、程序失控、恶意程序等破坏的。另外,当找不到原始备份时,用比较法就不能马上得到结论。从这里可以看到制作和保留原始主引导扇区和其他数据备份的重要性。


地主 发表时间: 10/08 11:17

论坛: 病毒专区

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号