一般来说,普通病毒都是通过对文件进行修改,将病毒体插入宿主文件尾部,并修改程序入口点来使病毒击活。通常宿主文件大小会发生变化,随着病毒技术的发展,现在不少病毒通过使用特殊的感染技巧能够使宿主大小及宿主文件头上的入口点保持不变,千方百计的躲避反病毒软件的监控。只有采用先进的反病毒技术才能够准确查杀病毒,保护系统,只有及时准确的将病毒消灭掉,才能够保证系统的安全,而防范未知病毒将成为未来病毒查杀的趋势。
传统的反病毒软件使用的是基于特征码的静态扫描技术,但这种方法在当今病毒技术迅猛发展的形势下已经起不到很好的作用了。反病毒引擎就像人类的大脑,是反病毒软件的核心部分,目前的反病毒软件采用的是虚拟机技术和实时监控技术,也是当今反病毒界使用的最为先进的技术中的两个。
近几年,虚拟机技术是国际反病毒领域的一种前沿技术,已经成为最引人注目的部分,最近瑞星公司新推出的瑞星2005就是采用虚拟机技术作为核心技术之一(瑞星公司的检测和清除已知及未知计算机病毒的方法、系统和介质已获得了国内的专利证书)。这种技术智能化极高,查毒的准确性也极高。
它会用程序代码虚拟一个CPU,同样也虚拟CPU的各个寄存器,甚至将硬件包括内存和端口等也虚拟出来,用调试程序调入被调的“样本”,将每一个语句放到虚拟环境中执行,这样我们就可以通过内存和寄存器以及端口的变化来了解程序的执行。
这样的一个虚拟环境就是虚拟机通过虚拟执行方法查杀病毒,可以对付加密、变形、异型、病毒生产机及大部分未知病毒及破坏性病毒;由于目前一些基于病毒特征码查杀病毒的方法不能识别未知或变种病毒,而独到的“虚拟执行”技术的主要特点是:
在查杀病毒时在机器虚拟内存中模拟出一个“指令执行虚拟机器”,在虚拟机环境中虚拟执行(不会被实际执行)可疑带毒文件,在执行过程中,从虚拟机环境内截获文件数据,如果含有可疑病毒代码,则杀毒后将其还原到原文件中,从而实现对各类可执行文件内病毒的查杀。
实时监控技术的用处更为广泛,该技术早在DOS时代就有,它的应用不仅局限于查杀病毒。可应用于磁盘访问、页面错误、中断等方面。在杀毒方面采用监控技术,主要是针对文件访问,它会在文件打开,关闭,清除,写入等操作时检查文件是否是病毒携带者,若发现病毒则让用户选择是清除病毒还是取消此次操作请求。同时,实时监控会使系统性能有所下降,不少杀毒软件的用户都抱怨他们的实时监控让系统变得奇慢无比而且不稳定。
在未来,从防病毒的角度来说,根据特征码对病毒进行判断的技术手段必将被淘汰,准确查杀未知病毒,合理运用虚拟机技术和实时监控技术是未来反病毒软件的发展趋势。