这种方法主要是对每一种病毒含有的特定字符串进行扫描,如果在被检测对象内部发现了某一种特定字节串,就表明发现了该字节串所代表的病毒。国外称这种按搜索法工作的病毒扫描软件为“Scanner”。这种病毒扫描软件由两部分组成:一部分是病毒代码库,含有经过特别选定的各种电脑病毒的代码串;另一部分是利用该代码库进行扫描的扫描程序,病毒扫描程序能识别的电脑病毒的数目完全取决于病毒代码库内所含病毒种类的多少。病毒代码串的选择是非常重要的,短小的病毒代码只有一百多个字节,长的也只有10KB字节。一定要在仔细分析程序之后选出最具代表特性的,足以将该病毒区别于其它病毒和该病毒的其它变种的代码串。一般情况下,代码串是由连续若干个字节组成的,但是有些扫描软件采用的是可变长串,即在串中包含有一个到几个“模糊”字节。扫描软件遇到这种串时,只要除“模糊”字节之外的字串都能完好匹配,就也能够判别出病毒。另外,特征串还必须能将病毒与正常的非病毒程序区,不然就会出现“ 假报、误报”。
比较法
这是用原始备份与被检测的引导扇区或被检测的文件进行比较的方法,可以用打印的代码清单(比如Debug的D命令输出格式)进行比较,也可用程序来进行比较(如DOS的DISKCOMP、COMP或PCTOOLS等其它软件)。比较法不需要专用的查病毒程序,只要用常规DOS软件和 PCTOOLS等工具软件就可以进行,而且还可以发现那些尚不能被现有的杀毒软件发现的计算机病毒。因为病毒传播得很快,新病毒层出不穷,而目前还没有能查出一切病毒的通用程序,或通过代码分析,可以判定某个程序中是否含有病毒的查毒程序,所以只有靠比较法和分析法,或这两种方法相结合来发现新病毒。
对硬盘的主引导区或对DOS的引导扇区作检查,用比较法能发现其中的程序源代码是否发生了变化。由于要进行比较,因此保留好原始备份是非常重要的。制作备份时必须在无电脑病毒的环境里进行,制作好的备份必须妥善保管,写好标签,贴好写保护。比较法的好处是简单、方便,不用专用软件;缺点是无法确认病毒的种类名称。另外,造成被检测程序与原始备份之间差别的原因尚需进一步验证,以查明是电脑病毒造成的,还是DOS数据被偶然原因,如突然停电、程序失控、恶意程序等破坏的。这些要用到以后讲的分析法,查看变化部分代码的性质,以此来确认是否存在病毒。
特征字识别法
这是基于特征串扫描法发展起来的一种方式,运行速度较快、误报频率较低。特征字识别法只须从病毒体内抽取很少的几个关键特征字,组成特征字库。由于需要处理的字节很少,又不必进行串匹配,因此大大加快了识别速度,当被处理的程序很大时,用这种办法比较合适。由于特征字识别法更注意电脑病毒的 “程序活性”,因此减少了错报的可能性。使用基于特征串扫描法的查病毒软件方法与使用基于特征字识别法的查病毒软件方法是一样的,只要运行查毒程序,就能将已知的病毒检查出来。这两种方法的使用,都须要不断地对病毒库进行扩充,一旦捕捉到病毒,经过提取特征并加入到病毒库,就能使查病毒程序多检查出一种新病毒来。
分析法
这种方法一方面可以确认被观察的磁盘引导区和程序中是否含有病毒,另一方面可以辨认病毒的类型和种类,判定是否为一种新病毒,另外还可以搞清楚病毒体的大致结构,提取用于特征识别的字节串或特征字,增添到病毒代码库中供病毒扫描和识别程序使用。同时,详细地分析病毒代码,还有助于制定相应的反病毒方案。与前三种检测病毒的方法不同,使用分析法检测病毒,除了要具有相关的知识外,还需要使用Debug、Proview等分析工具程序和专用的试验用计算机。因为即使是很精通病毒的技术人员,使用性能完善的分析软件,也不能完全保证在短时间内将病毒代码分析清楚;而病毒则有可能在被分析阶段继续传染甚至发作,把软盘、硬盘内的数据完全毁坏掉,所以分析工作必须在专门的试验用PC机上进行,不怕其中的数据被破坏。不具备必要的条件,不要轻易开始分析工作。很多电脑病毒采用了自加密、抗跟踪等技术,使得分析病毒的工作经常是冗长枯燥的。特别是某些文件型病毒的源代码可达10KB以上,与系统的牵扯层次很深,使详细的剖析工作十分复杂。病毒检测的分析法是反病毒工作中不可或缺的重要技术,任何一个性能优良的反病毒系统的研制和开发都离不开专门人员对各种病毒详尽、认真的分析。
新闻热点
疑难解答