殺毒引擎

殺毒引擎

用簡單的話說,殺毒引擎就是一套判斷特定程序行為是否為病毒程序(包括可疑的)的技術機制。

殺毒引擎是殺毒軟體的主要部分。是去檢測和發現病毒的程序。而病毒庫是已經發現的病毒的標本。用病毒庫中的標本去對照機器中的所有程序或文件,看是不是符合這些標本,是則是病毒,否就不一定是病毒(因為還有很多沒有被發現的或者剛剛產生的病毒)。

殺毒引擎工作步驟


基於引擎機制的規則判斷:
這個環節代表了殺毒引擎的質量水平,一個好的殺毒引擎應該能在這個環節發現很多或者稱之為相當規模的病毒行為,從而避免進入下一個判斷環節。這個環節被叫做殺毒軟體引擎工作的核心層。發現病毒文件
(註:在掃描時依靠分析程序行為來發現病毒即為啟髮式查毒,現在主要是由啟發引擎而非殺毒引擎來進行)
殺毒引擎與要將非自身程序行為過程轉化為殺毒軟體自身可識別的行為標識符(包括靜態代碼等),然後與病毒庫中所存貯的行為信息進行對應,並作出相應處理。當然必須承認,當前的殺毒軟體對大量病毒的識別都是在這個階段完成的。因此一個足夠龐大的病毒庫往往能夠彌補殺毒軟體引擎的不足之處。但是必須意識到,如果在核心層階段就可以結束並清除病毒程序,那麼殺毒軟體的工作速度將會大幅提升。“很可惜的是,當前我們沒有足夠聰明的殺毒引擎來完成這個過程”,這就是為什麼有病毒庫的原因。
傳統的反病毒軟體引擎使用的是基於特徵碼的靜態掃描技術,即在文件中尋找特定十六進位串,如果找到,就可判定文件感染了某種病毒。但這種方法在當今病毒技術迅猛發展的形勢下已經起不到很好的作用了。為了更好的發現病毒,相繼開發了所謂的啟髮式,主動防禦等相關技術。
個人認為,現在殺毒引擎的作用不是很大,倒是啟發引擎比較有用。

判斷引擎好壞標準


一般來說,判斷殺毒引擎好壞應從多方面綜合考慮,主要包括:掃描速度、資源佔用、清毒能力、對於多態病毒的檢測,脫殼能力、解密能力、對抗花指令能力、對抗改入口點的變種病毒的能力等對抗變種病毒、免殺的能力,還有穩定性、兼容性。

殺毒引擎舉例


1、Dr.web(大蜘蛛):來自俄羅斯的世界著名殺毒軟體,引擎技術很出色,並且脫殼很厲害,反病毒能力極強,正因為查殺,防禦能力非常優秀,所以被俄羅斯國防部唯一指定使用的反病毒產品,並同時為國家多個機密部門提供了安全保護工作,目前世界還有很多知名殺軟用的是大蜘蛛的引擎,20世紀90年代,曾經是俄羅斯佔據95%市場銷售名額的殺軟,但是因為1997年的金融危機導致大蜘蛛在俄羅斯佔據95%市場銷售名額大幅度降低!
2、Kaspersky(卡巴斯基):也是來自俄羅斯的世界著名殺毒軟體,其反病毒引擎和病毒庫,一直以其嚴謹的結構和快速的反應速度為業界所稱道;殺毒強悍、果斷、徹底是其一大特點。正是因為如此,它連年獲得諸多獎項、殊榮,目前世界上用卡巴斯基引擎的品牌繁多。白璧微瑕,佔用系統資源略多,7.0已大有改進。
3、Norton(諾頓):隔離機制很完善,2007年,它的一起“誤殺”事故使其國際聲譽大打折扣,但誤殺是難免的。
4、McAfee(邁克菲):來自美國的著名殺毒軟體,收購所羅門公司的所羅門的引擎。全球最暢銷的殺毒軟體之一(世界排名第2)。
5、Panda(熊貓衛士):在歐洲佔有很大市場份額,查殺速度絕對一流。
另:此處僅以此5個舉例,此排名不分先後。
註:世界上並不是只有這些,請勿被網上一些文章誤導!!!
另外,優秀殺毒引擎並不止這5個,並且絕對沒有五大殺毒引擎之說,還有很多優秀的殺毒引擎,例如來自羅馬尼亞的BitDefender(比特梵德),來自斯洛伐克的ESET Nod32,來自德國的AntiVir(小紅傘),來自捷克的AVG Anti-Virus,來自芬蘭的F-Secure Anti-Virus,國內優秀的殺毒引擎例如金山,瑞星微點江民,奇虎360等。