对于引导型病毒、文件型病毒,检测的原理是一样的,但是由于二者的存储方式不同,其检测方法还是有区别的。
1.比较法
比较法是使用原始备份与被检测的引导扇区或是被检测的文件进行比较。这种方法简单易行,比较时不需要专业的查杀计算机病毒的程序,使用常规的DOS软件及其他工具软件就可以完成。比较法可以发现没有被明确判断的计算机病毒。使用比较法可以发现文件异常,如文件的长度有变化,或是虽然文件的长度没有发生变化,但是文件内的程序代码发生了变化。由于要进行比较,因此保留原始备份是非常重要的,制作备份时必须在无计算机病毒的环境里进行,制作好的备份必须妥善保管。
比较法的优点是简单、方便,不需要使用专用软件。缺点是无法确认计算机病毒的种类及名称。另外,造成被检测程序与原始备份之间差别的原因尚需进一步验证,在DOS环境中,突然停电、程序失控、恶意程序都可能造成文件变化,这些变化并不是由于计算机病毒造成的。另外,当原始备份丢失时,比较法就不起作用了。
2.加总对比法
根据每个程序的档案名称、大小、时间、日期及内容,加总得到一个检查码,再将检查码放于程序的后面,或是将所有检查码放在同一个数据库中,再利用加总对比系统,追踪并记录每个程序的检查码是否遭篡改,以判断是否感染了计算机病毒。这种技术可以侦测到各式的计算机病毒,但最大的缺点是误判断高,且无法确认是哪种计算机病毒感染的,对于隐形计算机病毒,作用不明显。
3.搜索法
搜索法是用每一种计算机病毒体含有的特定字符串对被检测的对象进行扫描。如果在被检测对象内部发现了某一种特定字节串,则表明该字节串包含计算机病毒。计算机病毒扫描软件由两部分组成:一部分是计算机病毒代码库,含有经过特别选定的各种计算机病毒的代码串;另一部分是利用该代码库进行扫描的扫描程序。目前常见的杀毒软件对已知计算机病毒的检测大多采用这种方法。计算机病毒扫描程序能识别的计算机病毒的数目完全取决于计算机病毒代码库内所含计算机病毒的种类多少。因此,病毒代码库中的计算机病毒代码种类越多,扫描程序能认出的计算机病毒就越多。计算机病毒代码的恰当选取也是非常重要的,如果随意从计算机病毒体内选一段作为代表该计算机病毒的特征代码,那么在不同的环境中,该代码可能并不真正具有代表性,也就不能将该特征代码串所对应的计算机病毒检查出来。
扫描法的缺点也是明显的。第一是扫描费时;第二是合适的特征串选择难度较高;第三是特征库要不断升级;第四是怀有恶意的计算机病毒制造者得到代码库后,会很容易改变计算机病毒体内的代码,生成一个新的变种,使扫描程序失去检测它的能力;第五是容易产生误报,只要在正常程序内扫描到有某种计算机病毒的特征串,即使该代码段已不可能被执行,扫描程序仍会报警;第六是难以识别多变种病毒。但是,基于特征代码串的计算机病毒扫描法仍是目前使用最为普遍的查杀计算机病毒方法。(www.xing528.com)
4.分析法
这种方法一般是查杀计算机病毒的技术人员使用,使用分析法的工作顺序如下。
1)确认被观察的磁盘引导扇区和程序中是否含有计算机病毒。
2)确认计算机病毒的类型和种类,判定其是否是一种新的计算机病毒。
3)明确计算机病毒体的大致结构,提取特征识别用的字节串或特征串,用于增添到计算机病毒代码库以供扫描病毒和识别程序用。
4)详细分析计算机病毒代码,制定相应的防杀计算机病毒措施。
使用分析法要求具有比较全面的有关计算机、操作系统和网络等的结构和功能调用以及关于计算机病毒方面的各种知识。使用分析法检测计算机病毒,除了要具有相关的知识外,还需要反汇编工具、二进制文件编辑器等分析用的工具程序和专用的试验计算机。因为即使是很熟练的查杀计算机病毒的技术人员,使用性能完善的分析软件,也不能保证在短时间内将计算机病毒代码完全分析清楚。而计算机病毒有可能在分析阶段继续传染甚至发作,把硬盘内的数据完全毁坏掉。这就要求分析工作必须在专门设立的试验计算机上进行,不怕其中的数据被破坏。在不具备条件的情况下,不要轻易开始分析工作,很多计算机病毒都采用了自加密、反跟踪等技术,同时与系统的牵扯层次很深,使得分析计算机病毒的工作变得异常艰辛。计算机病毒检测的分析法是防杀计算机病毒工作中不可缺少的重要技术,任何一个性能优良的查杀计算机病毒系统的研制和开发都离不开专门人员对各种计算机病毒的详尽而认真的分析。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。