众所周知,病毒、木马等技术不断在更新,产生和蔓延的速度也更快。当前的病毒主要以加了壳的特洛伊木马和蠕虫为主,病毒的制造者也不再像以前一样,仅仅是炫耀他们那高超的计算机和网络水平,而是将获得经济利益作为目标,盗取用户私密信息、开辟系统后门、入侵大型网络服务器等等,给个人或团体带来直接经济损失。而反病毒软件的表现,显然是不尽人意的,虽然安全厂商也在不断的努力提高自己的杀毒引擎技术,但他们的表现以及其产品的杀毒、防毒的效果是大家有目共睹的,对于目前纷纷被各安全厂商普遍标榜的“主动防御”技术,能为我们的计算机世界开辟一片宁静的“天空”吗?
一、病毒加壳VS杀软脱壳:
为什么现在的木马、蠕虫都普遍加壳呢?所谓加壳,是一种通过一系列数学运算,将可执行程序文件或动态链接库文件的编码进行改变,还有一些加壳软件可以压缩、加密驱动程序,以达到缩小文件体积或加密程序编码的目的,加壳后的病毒增加了自我保护的能力,使杀毒软件查杀起来不再那么轻而易举。对于加了壳的病毒,杀毒软件要想清除它,那么首先需要对其脱壳,脱壳主要有硬脱壳和动态脱壳两种。
硬脱壳:硬脱壳就如同压缩和解压缩一样,找出加壳软件的加壳算法,写出逆向算法。由于很多“壳”均带有加密、变形的特点,每次加壳生成的代码都不一样。硬脱壳对此无能为力,但由于其技术门槛较低,仍然被一些杀毒软件所使用。
动态脱壳:由于加壳的程序运行时必须还原成原始形态,即加壳程序会在运行时自行脱掉“壳”。 动态脱壳是抓取病毒在内存中的镜像,再重构成标准的执行文件。相比硬脱壳方法,这种脱壳方法对自行加密、变形的壳处理效果更好。
脱壳能力的强弱将直接影响杀毒软件查杀的效果,纵览目前国内市场主流的杀毒软件,其中脱壳能力最强的非卡巴斯基莫数,它现在能脱4000种以上的“壳”。脱壳能力弱的,对付“加壳”后病毒需要添加两条不同的特征记录。如果黑客换一种加壳工具加壳,则对于这些杀毒软件来说又是一种新的病毒,必须添加新的特征记录才能够查杀。若其脱壳能力较强,则可以先将病毒文件脱壳,再进行查杀,这样只需要一条记录就可以对这些病毒通杀,不仅减小杀毒软件对系统资源的占用,同时大大提升了其查杀病毒的能力。
虚拟机脱壳:近年来,这种技术已经得到安全界的公认。它是给病毒虚拟一个仿真的运行环境,同时将虚拟环境与用户的计算机进行隔离,因此不会影响用户的计算机和正常的使用。但由于编写虚拟机系统需要解决虚拟cpu、虚拟周边硬件设备、虚拟驱动程序等多个方面的难题,因此,不是每种杀毒软件都拥有此引擎。
二、广谱查杀VS启发式:
广谱查杀技术被国内几大安全厂商普遍采用,如江民、瑞星、金山等,江民KV系列一直延续着“广谱查杀”技术,这种技术对变种病毒以及宏病毒很有效,偶尔大家或许能看到KV报名为“Win32.Type”的可疑文件,这便是其收获。瑞星的行为分析技术似乎主要针对Windows平台,它通过病毒行为判断来分析病毒的可能性,相对比较来说,比KV的效果似乎更加明显,而整体看来作用也不大,很少发现报未知病毒的情况。对于金山毒霸,它最初使用的是Dr.web启发式的引擎,现在因为完全用了自己的引擎技术,使我们很难在其身上看到启发式的影子。
启发式在国外基本上已经是一种比较成熟的技术,它是在极短的时间内虚拟一个环境让病毒执行,然后根据其行为与正常程序执行的区别进行判断,通常一个正常应用程序在最初执行的是检查命令行输入有无参数项、清屏和保存原来屏幕显示等指令,而病毒程序最初通常执行的是直接写盘操作、解码或搜索某路径下的可执行程序等指令。这种查杀的方式在降低误报率的同时,可以尽可能多的发现未知病毒。国外杀毒软件中以NOD32、McAfee、Dr.web等为代表,其实卡巴斯基(Kaspersky)也有启发式杀毒引擎,偶然也能查出未知的病毒,它借助其业界首屈一指的病毒特征码提取和强大的脱壳技术,在国外众多的杀毒软件中脱颖而出,被国内用户普遍采用。而国内在此启发式引擎技术方面的形势就相距甚远了。