- ESET EAV亮相VB100%认证 48次过
- 一鸣惊人 ESET NOD32位居杀毒软
- ESET NOD32荣获《计算机应用文摘
- ESET NOD32第47次通过VB100测试
- ESET NOD32-PPLIVE专用版获得硅
- ESET NOD32荣获《计算机应用文摘
- 特奥会网络安全的守护神—ESET
- 新蠕虫病毒伪装成合法信息...
- ESET被Inc. Magazine 评为美国2
- NOD32携手方正科技,为用户安全
- NOD32国内首则视频广告亮相浙江
- NOD32展翅计划
- 新型电脑病毒加密用户文件勒索3
- NOD32-Windows Vista上速度最快
- NOD32获得Microsoft Windows Vi
- ESET NOD32 Antivirus v2.70.39
- 非现场直播:NOD32中关村夏日体
- 强强联手:NOD32与七彩虹全面合
- AV终结者挑战反病毒行业 危害赶
- VB100%六月登场 知名杀软纷纷落
- 再破记录:NOD32第44次获VB100%
- AVC公布5月数据,NOD32再度夺魁
- AVC公布5月数据 NOD32再度夺魁
- 微软杀毒软件Live OneCare不再倒
- 最新《NOD32》Version 2.7为《W
- NOD32 第41次通过Virus Bulleti
- NOD32荣膺反病毒机构2006总冠军
- NOD32再获--Windows Vista认证
- NOD32荣获《家用电脑》编辑推荐
- 国内媒体横评杀软 NOD32拔得头筹
别受骗!慎防故弄玄虚的测试报告? 解构防毒程序的正确测试运作
阅读次数:682 更新时间:2006-8-9
若你想购买的只是一张显示卡,又或是一条 DDR2 内存,报告误差所影响的可能只是效能上的 10% 差异,可叹的只是金钱上的损失;但若是关乎信息安全的病毒防护,被误导选购了错漏百出的防毒软件,任由病毒肆虐,个人信息与重要数据毁于一旦,后果实在不堪设想!在本篇文章中,我们将会探讨何谓防毒软件的应有功能,及揭露坊间防毒软件测试中的错漏之处,认识正确防毒软件测试的步骤与评核准则。
防毒软件的 3 项诉求与测试目的
让我们先来看看普遍用家对防毒程序的基本诉求吧:
1. 必须成功侦测与拦截所有计算机病毒。
2. 扫瞄系统必须快速准确。
3. 当互联网出现新病毒时,防毒程序必须能迅速应对。
作为防毒软件的基本原则,相信大家也不会反对。事实上,各大防毒软件品牌也深明消费者所需,在其宣传广告里大都标榜自己在这 3 方面有多出色,例如自夸「病毒数据库数量有多庞大」、「扫瞄速度有多惊人」、「准确度高达 100%」等。可是,在几乎每天都有新病毒出现的网络世界里,即使今天可完全侦测出所有潜伏的病毒,却难保明天也同样可以做得到!因此,防毒软件的测试必须定期进行,才能确保防毒软件在任何时期也能达到标准,目标则是能扫描所有现实生活中有机会感染用户的所有计算机病毒,确保消费者的计算机安全。
防毒软件测试的常见谬误 - 「何谓病毒 ?」
若要测试防毒软件是否达标,最直接的办法就是以刚才提及的 3 项基本原则作基准,考核防毒软件是否能顺利过关。然而,市面不少防毒软件测试者,在制订测试平台与实验过程中犯下常见谬误,多是错误揣释有关原则,最常见的莫过于对误解「计算机病毒」与测试取样错误。
正确区别「计算机病毒」与其它「恶意程序」
计算机病毒 (Computer Virus) 一词由来已久,相比起其后出现的计算机蠕虫 (Worms)、间碟软件 (Spyware)、广告软件 (Adware)、特洛伊木马 (Trojan) 等要早得多,但皆可统称为恶意程序 (Malicious Code)。虽然以上各种均对计算机产生不同程度的伤害,包括损坏数据、侵犯私隐、盗取重要信息等,但业界对「计算机病毒」的性质却是强调其「自我复制能力」及「散播性」,其中计算机蠕虫具备较相近的特质,包括能够自行复制众多分身档案,并能透过网络爬行至其它计算机进行感染。因此,间碟软件、广告软件与特洛伊木马均不能归类为计算机病毒。
样本数量并不是一切!
我们经常看到很多防毒软件测试,强调测试取样数目达数千或上万种,试图以庞大的数量来证明测试报告的公信力,但实际上这种做法并不正确。首先,在统计学上样本选择应以健全的统计为基础,样本数量与选取方式亦同样重要。以数量计算,现时已知的计算机病毒超过 7 万种,数量相当惊人!若测试者强调样本数量庞大,却仅有数千款病毒取样,难免会让人质疑取样的准则与代表性,甚至怀疑测试结果受人控制。
在野病毒与实验室病毒
即使取样数目达至数万,这种测试手法却是不切实际!虽然业界已知病毒数量达 7 万种以上,但其中多达 6 万多种已属恐龙级的远古病毒,早已随计算机软硬件技术演进而烟销魂散,例如以感染 DOS 档案为生的病毒等。现时,病毒清单里仅不足 1 成是仍活跃于互联网上,数量若为 5 千种,这种生存状态称为在野 (in the wild)。
同时,全数 7 万种病毒中亦有不少品种,是创造于封闭性的实验室中,用作学术研究或其它产品实验用途,这类品种称为实验室病毒 (Zoo Virus)。由于这些病毒并未曾对外散布与流行,因此构成的危险性为零,在防毒软件测试中亦应予以忽略。
测试应切合现实所需
站在消费者立场,防毒软件提供足够的病毒保护与维持低效能耗费,这样才称得上明智之选。既然,仅在野病毒会对计算机用户构成威胁,若有防毒软件盲目加大病毒数据库,务求将全无威胁性的所有实验室病毒也纳入其中,客户端计算机需要处理的病毒数据将增大数十倍以上,将占用更多内存、硬盘空间与网络传送频宽,大大浪费系统资源;更甚的是,致使计算机效能变差,更可能促使没耐性的用户索性关闭防毒功能,任由计算机门户大开,一发不可收拾。
既然防毒软件测试目的是提供消费者的选购参考,自然亦应切合现实所需,以今时今日造成构成危机的病毒种类作样本,而非单纯为夸大其词而滥竽充数。
最具权威的在野病毒清单
计算机病毒随着计算机技术更新而增减,要建立一份在野病毒的清单并不容易,必须密切注意网络上的最新病毒状况,不停进行更新。互联网上最权威的在野病毒清单则首推 WildList,网址为 www.wildlist.org,它是由热心人士 Joe Wells 于 1993 创办,现时已成为业界用以测试与认证防毒产品的标准。该组织约有 70 名顶尖防毒研究员,每月对清单进行修订与发布工作,绝大部分国际防毒软件测试权威都以其清单为病毒取样蓝本,有兴趣的读者不妨浏览。


只要观看一下每月 WildList 中,就会知道平均每月活跃的病毒不过数千种。
别枉称正常档案为病毒!
消费者容易被庞大的数字迷惑,甚至有网站以十多万「病毒样本」来强调报告的权威性。刚才已提及过数量的谬误,但相信大家不禁要问:「病毒清单实际才得 7 万多,多出来的几万样本从可而来?」这问题则归咎于 2 大原因,其一为错误把非病毒档案也归类为样本。
最常见是测试者的取样过程,透过不同品牌的防毒软件进行扫瞄,把所有曾被任何一款扫瞄器标示为「病毒」的档案收集到样本库。事实上,由于不同防毒软件的扫瞄引擎设计不同,加上安全限制与敏感度各异,有防毒软件把正常档案误当「病毒」也并不出奇!如果以这种方式取样,样本库中将同时夹杂有毒与无毒的档案,那么一来测试结果的优胜者就是误测冠军,反而与实际扫毒能力拉不上一点关系。
也有些情况是测试者或扫瞄器,故意将病毒相关的非病毒档案当作成「病毒」取样。不少病毒是会利用其它档案作辅助工具,例如运用日志档案、修改登录文件、又或是已损坏的旧病毒分身等。严格来说,这些档案不能称为病毒,因为它们并不具备病毒应有的「自我复制」能力与「感染性」,故此它们并不能构成计算机病毒应有的危险特性,在测试时应予以忽略。
错误警报的危险性!
别以为「宁枉莫纵」的防毒手法比较安全,试想像若防毒程序误把 Windows 或常用应用程序的重要系统档案当成「病毒」,用户信任它的判断并将之删除或修改,将可能导致系统不稳、应用程序与操作系统无法启动等严重问题,因此评审防毒软件对病毒的扫瞄成功率外,亦应考虑错误警报等级。

一旦误信错误警报,错把系统档案删除,便有可能导致死机。
以人为方式修改或创造的「新病毒」?
除了把非病毒档案归类为样本外,促使病毒测试样本增大的另一原因,就是测试者以人为方式修改病毒的特性或种类,甚至利用各种手法创造非实际生活中出现的病毒品种,以不当的手法歪曲测试环境。
最常见的情况就是妄自修改与损坏病毒档案的名称或扩展名,例如把 myscreensaver.exe 修改成 myscreensaver.ex$,这里不单把病毒的「名称」特征歪曲了;亦把病毒由 .EXE 执行档变成 .EX$ 非执行档,变成无法执行与无法散播,完全歪曲了「属性」特征。由于这种改变非出于病毒本身的变化,因此若有防毒软件将之忽略是相当合理的。
其次则是测试者自行修改病毒的在野状态,使它形式一种新的变种。无论因何原因,改变病毒意味着出现新病毒,这是不道德与不专业的做法,就等于医学博士为证明某种新疫苗的能力而创制出新品种的天花绝症一样可耻。也有情况是测试者利用某些仿真病毒产生器,透过仿真病毒的一些程序代码,运算出一系列的仿真病毒,但并不存在自我复制能力与感染特性。正如前文所述,防毒软件测试以消费者为对象,应表现出在实际日常环境下的扫毒表现,这类经由测试者修改或创制的样本并非真实病毒,甚至根本是假病毒,以此为样本谈不上测试防毒软件对真实世界病毒的侦测能力。
切忌主观混淆病毒与非病毒档案
刚才我们已提及过,病毒与其它恶意程序之间存有截然不同的本质,而市场上的产品亦倾向以恶意程序类别来划分不同功能的计算机安全防护产品。然而,部分测试者却主观地认为一些病毒以外的恶意程序,例如木马、间碟软件与广告软件,也同样应列入病毒样本中作测试之用,亦以为防毒软件也应同样拥有扫瞄其它恶意程序的能力。事实上,纵然有些防毒软件的引擎添加了相关的扫瞄功能,但在以「病毒」为最终目的的测试中,在样本中混入非病毒档案将对专注于病毒防护的品牌明显不公平,更会混淆了产品对病毒扫瞄的真实结果。情况就像进行H5N1 禽流感疫苗测试,但在样本中却混入了普通流行性感冒的样本一样可笑。
一口气说完了防毒软件测试在制订测试样本中常犯的谬误,那么测试可以进行了吧?慢着!即使有了正确的样本,测试过程中还是有很多容易疏忽之处,造成测试不公。
接下来,让我们再看看正确的防毒软件测试中,测试过程该如何划分与怎样进行。
目标为本的多种「病毒侦测」模式
刚才我们提及过,普遍用家对防毒程序的诉求,其中一项为「必须成功侦测与拦截所有计算机病毒。」,当中「病毒」一词即病毒取样已讨论过。那么有了正确的样本库,该可以进行「侦测与拦截」的测试吧?
但是,测试前我们还需要了解防毒软件针对日常计算机应用状况,而设计出多种目标为本的病毒扫描模式;同时,也因为用途不同,测试不同扫描模式时,对其实际拦截表现、扫描速度、扫描时对效能影响等,各表现在最终评分中所占的比重亦应有所调整。
计算机安全滤网 - 常注存取扫描仪
防毒软件最为人熟悉的扫描模式,绝对非常注存取扫描仪莫属。即使对计算机不甚熟悉的用户,在工具列里见到防毒软件的常注图示,使用时亦会倍感安心。事实上,绝大部分防毒软件在完成安装后,以后启动 Windows 时都会自动加载存取扫描仪到系统内存里,自始无论从互联网下载、磁盘抄写、光盘读取或开启硬盘里的档案等任何途径,一切存取档案动作均会受该扫描仪所监视,目的是确保档案在送抵系统进行处理前已经过完善的防毒扫描,可说是一层无形的安全滤网。

NOD32 常注保护模件占用系统资源极少。
「侦测」与「拦截」 2 种不同测试
我们刚才提及过优秀的防毒软件必须做到「侦测与拦截」所有病毒,但应注意「侦测」与「拦截」属于两个不同的动作,作病毒测试时应将两者独立分开为 2 个项目。「侦测」测试的目的着重防毒引擎对病毒的扫描百分比,而「拦截」测试则应强调清除病毒威胁的完整度。
两个项目不应同时进行。各防毒软件在侦测到病毒后,由于其预设执行的拦截动作有所不同,将可能影响其后的余下侦测动作;例如某软件清除病毒档案时可能一并检查与清除其它衍生变种病毒档案,造成其后侦测时搜寻得到的病毒种类减少;又或是某几种病毒共享同一受感染档案,较早的拦截动作将之清除,将误导防毒软件的扫描效果。故此,测试「侦测」能力时应把发现病毒的预设处理设定为仅报告病毒,并写入到扫描日志里即可。
系统效能与稳定性
尽管防毒软件最重要的工作是侦测病毒,但测试常注存取扫描仪应进一步考虑在背景监察系统时,所耗用系统资源的多寡与实际对系统效能表现的影响。由于常注存取扫描仪在系统启动时已自动加载,任何档案存取都需要经过它的检查,直接对日常所有系统运作带来无时无刻的负担,因此耗用的资源越少,对操作效率的影响自然减至最低,越不被使用者察觉。最明显的测试方法是,直接开启一些档案,又或是加载一些程序,比较与关闭扫描仪时的速度相差。
与此同时,也由于长时间常注于系统内,扫描仪必须确保能完全兼容于操作系统与众多应用程序,而不会产生系统冲突,甚至当机的情况。试想想,扫描仪侦测能力再高,但却偶有引发程序冲突的问题,较差的稳定性不单暴露了感染病毒的机会,也严重地对使用者造成困扰。
主动出击扫毒 - 手动扫描仪
除了常注存取扫描仪外,在某些情况下使用者也会主动要求执行手动扫描,对系统所有档案、或特定扇区、数据夹或档案进行病毒扫描。基本上,测试手动扫描仪的方法与前者类同,包括仅进行侦测动作而不作任何拦截。同时,要注意手动扫描仪着重扫描病毒的准确度之余,也应注重效率,但由于手动扫描仪是由用户主动要求启动,因此对系统效能影响将较具容忍力,当然能减少系统资源耗用会更佳。相比之下,缩短系统扫描时间比较重要,毕竟使用者正在等待扫描结果。故此,在评价手动扫描仪时,应加入对系统影响与扫描速度 2 个评分。
统一的测试设定
为了适应使用者的不同需要,手动扫描仪通常设有多重选项微调扫描功能,其中默认值 (一般设定) 多为速度较快但省略度较高,而完全扫描 (最佳设定) 则耗用较多资源与较长时间、但完整扫描所有档案类型,因此在测试时必须理解各防毒软件正采用何种设定,与该设定的特性,统一有关设定才能达致公平的测试。

手动扫描仪多提供多种设定,以适应用户不同需要。
防范于未然 - 智能扫描仪
「当互联网出现新病毒时,防毒程序必须能迅速应对。」,但每次出现新病毒或新变种时,防毒软件公司需要时间更新病毒数据库,在这段时间便得靠智能扫描仪,透过分辨档案是否含有不知名的入侵危险来判定。由于智能扫描仪担当后补辅助角色,病毒样本也必须特别处理,因此智能扫描仪的测试更为困难,准备工作也必须更仔细,测试前应要注意以下几点。
入侵性与错误警报的平衡度
刚才提及过,智能扫描仪的运作原理,是透过侦测档案是否具备病毒的特性,与是否存在不知名的入侵危险,从而估计档案是否新病毒。在这种情况下,扫描仪设定的反应越活跃,可网罗的「危险档案」亦越多,但误报机率也会增加。
某些防毒软件对智能侦测扫描加入了等级设定,例如 NOD32 设有正常模式及进阶模式 2 种,后者具备较强的侵略性,对危险性的触觉较强,也特别留意某些高危的档案种类。更具侵略性的扫描将无可避免增加误报机率,上一篇文章里我们也提及过误报的有关影响。在评核智能扫描仪时,应考虑实际应用时所产生的错误警报与侵略性之间是否取得理想的平衡点。
测试前先冻结数据库更新
测试智能扫描仪时,样本必须是各防毒软件的病毒数据库中未包含的品种,这样才能确保防毒软件运用智能扫描仪作侦测。然而,我们无法取得未来的病毒作样本,而采用实验室病毒测试亦无法表达扫描仪的实用性。最佳方法应为在一定时间内停止更新各防毒程序的病毒数据库,并收集这段时间内的新病毒作测试样本。注意一点,停止更新病毒数据库并不代表采用较旧版本的程序核心,因为智能扫描仪的侦测能力会随程序核心版本而更新,使用旧版本就不能反映现实环境里的实际侦测能力。因此,采用最新版本程序而不作病毒定义更新是最理想的做法。
与此同时,评核智能扫描仪表现前,应作较长时间的反复测试,原因之一是病毒样本数量较少。即使一个月不作病毒数据库更新,收集到的新病毒品种也可能只有数种至十数种不等,样本数量少也意味着测试准确度较低。

测试病毒时应只作侦测,把病毒记录至日志已足够。
防毒权威机构逐个捉
一连两期讨论了如何正确测试防毒软件,日后面对不同的防毒软件测试报告时亦可凭此考虑其可信性。然而,国际上有哪些具备公信力的防毒权威机构,又有哪些权威性的防毒测试报告可供参考呢?下期我们将深入介绍。
