n1.杀毒软件的工作流程
n对于一款杀毒软件来说,一次成功的病毒查杀过程,通常都要经历病毒识别、病毒报警、病毒清除、文件或系统复原这几个过程。各个过程中又运用了很多复杂的技术,但其中最关键的应该是杀毒引擎技术,从广义上来讲,是指通过文件、网页监视等实时监控行为,运用文件识别技术来完成病毒扫描、识别、报警以及清除,甚至防御的一整套的机制,因此引擎技术也决定了杀毒软件的优劣,而引擎所包含的众多技术中,病毒识别技术又是重中之重。
n2.必不可少的认壳过程
n病毒、被杀程序加壳已经是非常普遍的现象了,目前主要有两种脱壳技术:算法认壳和动态认壳,目前主流的杀毒软件都引入了虚拟机技术,虽然这会占用一定的系统资源,但使带壳的病毒文件,运行于虚拟机之上,不仅可以更好的识别各种壳,还可以有效防止病毒真正的感染文件。
n算法认壳:此法是根据加壳程序的解密算法对病毒进行认壳,虽然有速度快、消耗资源少的优点,但也有无法认变形壳的缺点。不过,很多杀毒软件还是能够向用户发出警报,以弥补无法认壳的缺憾。
n动态认壳:众所周知,只有让加过壳的程序运行起来,才能将其还原成本来的面目,此时为了避免程序运行后真正感染系统文件,因此引入了虚拟机技术,为带壳的病毒程序虚拟一个计算机环境,使它运行于虚拟环境。此法虽优势明显,但也会消耗很多的系统资源,因此拥有一套自己的、成熟的虚拟机技术,将大大提高检测的速度。
n3.识别病毒的几种方法
n如何识别病毒,对于任何杀毒软件来说,都是非常重要,同时也是非常核心的工作。识别病毒的能力,往往决定了这款杀毒软件的病毒查杀能力,若连病毒都无法识别,当然也就不能对病毒作出妥当的处理。检测病毒方法通常有:特征代码法、校验和法、行为监测法、软件模拟法几种,各安全厂商会衡量不同方法之间的查杀效果、运行开销等因素,再结合自身的技术特点,选择相应的病毒识别方法。这里只介绍各种方法的优缺点,对于具体的实现步骤,已经超出了菜鸟的范畴。
n特征代码法:这种方法根据正常程序与病毒程序代码的差别来识别病毒文件。有人认为,对于已知病毒来说,这种方法是最简单、最直接的方法,这种方法的优、缺点都很突出。
 
n优点:检测的准确率较高,误报率低。
n缺点:查杀速度慢,由于已知病毒越来越多,因此病毒特征码也随之增加,因此查杀速度也会越来越慢。不能检测未知病毒和多态性病毒以及隐蔽性病毒。另外这种检测方法也不适合网络版杀毒软件采用,因为它会消耗我们宝贵的网络资源。
n校验和法:此法计算文件的校验和(只要知道是一种算法就可以了)并保存,可定期或调用文件时进行对比,从而判断文件是否被病毒感染。虽然此法可以发现未知病毒,但由于其较高的误报率,已经逐渐不被采用。
n优点:可发现未知病毒。
n缺点:无法报出病毒名称,误报率高,当软件更新,口令修改或修改文件内容时,校验和法都可能会误报,因为这种方法无法区分文件内容的变化是不是属于正常的程序使用引起的。
n行为监测法:此法根据病毒的行为特征来识别病毒,这需要对病毒行为进行详细的分类和研究,分析那些病毒共同的行为,以及正常程序的罕见行为,根据程序运行时的行为进行病毒判断和预警。
n优点:由于其归纳和总结各种病毒的共同特征,因此可以发现未知病毒,对于多数未知病毒预报非常有效。
n缺点:对于未知行为病毒,不能有效检测,同时也存在误报现象,对查到的未知病毒,不能识别病毒名称,因此普通用户不能对发现的未知病毒进行有效的清除。
n软件模拟法:这种方法通过模拟病毒运行的方式来检测病毒特征,由于特征码法无法检测多态性病毒,虽然行为监测法可以发现病毒,但是无法确定病毒名称,也无法对其进行相应的杀除,因此产生了软件模拟法。
n优点:可识别未知病毒,病毒定位准确,误报率低。
n缺点:检测速度受到一定影响,消耗系统资源较高。
n上述几种检测方法各有所长,往往都不能单纯使用一种方法完成大规模病毒的检测报警工作,通常都是几种技术相结合,根据实际情况和应用场合配合运用相应的检测手段。