|
这里首先说一下,之所以把微点单独拿出来比较,是因为它既不同于传统杀软,又不同于通常意义的HIPS,从我个人的理解,微点不具备杀毒引擎,所以是绝对不能归类为杀软的,它更倾向与HIPS,不过更为智能化。今天作这个比较,是想让大家清晰认识三者的区别和各自的优劣, ]/ {& Y: q1 w
一、总论$ R1 K/ ?2 U- ]2 r
1、杀毒软件# u- m2 W! N! W8 @: V8 M" c/ r
纯个人理解,杀软需具备三大要素:
& N$ P) Q E( e7 G$ M: W. }( x病毒特征库、杀毒引擎、监控
/ P# K: Y, l& T9 \6 q) c/ Q通过扫描,将系统中文件的特征码与其病毒特征库的特征码进行比对,如果特征码相符,则被判定为病毒,并通过杀毒引擎清除或删除。监控也是同样道理。
9 z- t. [8 [* B+ X& z8 z$ f总之,杀软是基于病毒特征库的。
9 M2 Y R7 I7 s6 b; }2、HIPS
9 u+ Q/ K" d0 m2 j5 C' b% V! {HIPS也需要具备三大要素:(为了便于说明,后面对HIPS的规则处理假定为询问)
, J/ w! c" b F规则、监控、拦截
, H5 n: H* I* @5 V! Y8 k若某个程序在运行过程中,触发了HIPS设定的某个规则,则HIPS会予以询问,并提示用户操作,而不论这个程序是否有害。即使正常的程序,也有可能被询问。: n/ Z" o4 ~8 C. o- d( A: a/ q/ X
3、微点
' d9 _$ t4 O" _( E1 p4 q6 ?微点的特征非常明显: Y( V9 i' ~$ C( v$ w5 V, n
行为库、监控、拦截,外加一个包过滤墙$ z& V% h! v4 M( l |
所谓行为库,是由程序的连串行为构成,病毒通常具有类似的连串行为,比如释放驱动、改写注册表、释放系统文件、自启动等等,微点便是以这样的方式来判断病毒和木马的,所以某些单一的行为或者未知的行为,不论有害还是无害,只要不触发微点的行为库,便会被放行。
: t' N( [0 t$ U2 v* S. y E* S+ v
a+ T/ S# I( [3 s二、举例说明
" U$ B' X% N2 Z* W H, W9 r仅仅说理论,可能大家听不懂也很枯燥,这里就举个例子说明$ l5 p$ f! L( ~# m. g6 V# M
假设一个潜逃的杀人犯,我们的三大警察是如何抓住他的, M$ c8 K& [9 x( A
1、杀软
, _# h* O" T6 `! _! i通过识别犯人的相貌、身高、体重等特征,以判断他不是要找的犯人。如果犯人乔装打扮,且易容手法高超,完全改变了原来的外在特征,则杀软很有可能抓不住他(这就是所谓的加壳、免杀)。如果犯人继续作案,那么杀软会重新搜集犯人的特征,重新辨认(也就是更新病毒库)。垃圾杀软会将其当做一个新犯人,优秀杀软却可以识别犯人的基因特征,除非犯人改变基因(这就是所谓的脱壳,真正脱壳能力强的没几个,蜘蛛可是算是最优秀的,脱壳依赖的是引擎)。
. p. g! L1 z' c2、HIPS
3 N: j! @3 t, a$ Z* a如果犯人就此改过自新,不再犯案,那么HIPS将会就此放过它。如果某一天,犯人继续有了作案的动机,假设他是拿枪去杀人,首先,犯人伸手去衣兜里(不管是不是去掏枪),HIPS会提示,是否阻止它?如果你放行,犯人会进行下一个动作,把枪拿出来,HIPS继续报警,是否阻止。如果放行,犯人接下来会瞄准目标,HIPS继续询问。再放行,犯人开枪杀死目标,系统崩溃,HIPS就此下课。
6 n0 F( a9 s$ S% M/ A6 }' `/ b(还有一类特殊的HIPS,就是沙盘,比较有名的就是defensewall,就是它会虚拟一个环境,让犯人在虚拟的环境中杀人,事实上,犯人并没有真正杀死目标,一切都是南柯一梦。犯人的所有行为在虚拟环境中完成,不对真是系统构成威胁)
, j! e/ T+ E. Q7 Q" \* d3、微点 Q9 e* K8 p" W' d
如果犯人就此改过自新,不再犯案,那么微点也会就此放过它,这和HIPS相同。但接下来的就不同了。犯人进行第一个动作,伸手去衣兜里,微点不予理会,因为这一动作本身无害,也许犯人不是掏枪,只是掏钱而已。如果接下来,犯人掏出的不是凶器,微点无视,如果犯人掏出的是枪,微点会在此时报警,这两个动作加在一起才形成了威胁,只有在这种情况下,微点才会询问。如果犯人掏出的是一种微点从未见过,且不知道否会构成威胁的东西,微点仍然放行,然后目标人物被干掉; k1 F4 ^0 t, K/ v F8 s
6 O0 S5 f+ Y! a7 K6 e1 ?1 L% _
三、优劣比较. ^( e8 y' g. w, [" X
1、杀软1 N4 x& u9 @! q/ p
他的优缺点很明显,事前防御和事后补救俱全。事前防御是依靠病毒特征码,一切他所不知道的病毒或者因为加壳改变了代码的病毒,均不会被识别。但一旦收集到新的特征码,杀软仍可依靠强大的扫描能力进行查杀。1 ], r4 } Z2 N9 j
2、HIPS! q8 J3 j% g0 v- Q: q
事前防御滴水不漏,但事事要求用户决定是否放行,如果用户基础知识不足,错误放行,那么病毒将会侵入系统,HIPS没有查杀能力,也许可以继续拦截病毒的行为,但不能杀灭病毒本身,更不能修复被感染的文件2 J; H c! I5 F! k2 {! J1 v- b
3、微点
4 D$ G. J# M# c8 M: n8 d事前防御根据病毒行为库判定,并不会对所有单一行为报警,只有当连串行为构成危险并触发其行为库事,微点才会报警。但如果某程序的连串行为不在微点的行为库之内,即微点无法识别这种行为是否有害事,系统被会病毒侵入,微点同样不具备查杀的能力,最多只能拦截病毒的部分行为,而无法杀灭。) s; f1 N& e$ a8 x
( E- n, H& D c6 J; H+ N
四、继续举例4 O% a, V1 d# U; a3 k
假设手动更改 .TXT的文件关联,使其关联到写字板程序 {3 z6 u0 E( j, I
微点不会报警,因为这一单一行为不会对系统造成威胁; E+ p+ p1 T* G2 a
而EQ、中网S3等典型的HIPS,如果对这一文件关联设定了规则,则他们会提示这一修改,询问你是否放行。如果设定的规则是禁止的,则他们会直接禁止,使你无法改动文件关联。相对而言,EQ、中网的防御更为严密,但对使用者的要求更高,你需要自行判断某一程序的行为是否有害。
( \2 j$ M0 W% y微点同样有规则,它的规则是以行为库(由程序的连串行为构成,病毒通常具有类似的连串行为,比如释放驱动、改写注册表、释放系统文件、自启动等等,微点便是以这样的方式来判断病毒和木马的)的形式体现,某个行为,无论是单一还是连串,无论有害还是无害,如果不在微点行为库的范围内,则不会被拦截。$ e9 g& ^. O, U9 H* I. A/ D& c
! B: H8 \" w4 S/ |. s五、总结* S0 a0 W( B9 m" v
微点对某些广告和流氓的拦截不是很好,对IE插件的加载也很少报警,因为这些广告程序和插件,并不具备明显的病毒连串行为,这些程序通常只是改写一下注册表劫持浏览器,甚至不会自启动。
! ^ T6 _4 _" z9 M/ G微点仍是建立在对已知行为的判断的基础上,对未知的病毒行为仍然毫无办法。只不过病毒行为通常是类似的,通过很少的行为库就能起到很好的防御作用。从这个意义上说,微点仍是被动而不是主动。
% N7 `9 C* L' b2 n而中网和EQ,如果你对系统注册表关键位置进行了一些规则设定(EQ和中网内置的注册表防护规则非常全面),这些广告和流氓想劫持浏览器就成了不可能的事7 T1 P/ u- V6 A. B* O7 w, i. }
杀软则不是通过程序的行为来判断,而是通过程序的特征码# \8 _2 |" m7 {
最后一句话:
) z. J: D6 q" `0 r- B3 O1 S4 u杀软通过程序本身的代码特征来判定是否有害
# @$ M( n% D$ X9 p5 z/ E- wHIPS通过程序的单一行为来判定是否有害
+ Y! Q$ ]) z2 s) w) ?3 H微点通过程序的连串行为来判定是否有害- z2 t( I/ I& D8 p. N ]
另外一个特殊的沙盘,基本不作判定,任由程序在虚拟环境中运行,使其无法破坏系统 |
|