![](https://hfnxjk.com/statics/images/logo.png)
1989年,第一款殺毒軟件Mcafee誕生,至今殺毒軟件已經有25年的歷史,在此期間,殺毒軟件經歷了三代演變。
第一代:特征碼殺毒引擎
1989年,第一款殺毒軟件Mcafee誕生,開啟第一代依賴特征碼的殺毒引擎時代。這一代殺毒軟件無論是查殺還是防御,都是基于特征碼的,查殺用特征碼比對,防御實時監控。
特征碼引擎的基本原理就是“殺毒引擎+特征碼匹配”,殺毒引擎是槍,特征碼是子彈,子彈越多,能殺的病毒就越多。特征庫是由殺毒廠商收集的病毒樣本的特征碼組成的,而特征碼則是病毒分析工程師從病毒程序中找到和正當軟件的不同之處,截取一段類似于“搜索關鍵詞”的程序代碼。
電腦一開機,特征碼就被讀到內存中,當用殺毒引擎掃描硬盤或者監控一個文件的動作時(比如下載、修改注冊表等),它會讀取文件并且與特征庫中的所有特征碼“關鍵詞”進行匹配,如果發現文件程序代碼被“關鍵詞”命中,就把那個文件判定為病毒,然后報警和攔截。
特征庫匹配是查殺已知病毒很有效的一項技術,也是殺毒引擎賴以工作的基礎(掃描、監控都需要調用特征庫),一直被殺毒軟件沿用下來,所有特征碼都需要嚴格的測試和比對,否則極易造成誤傷。早期的殺毒引擎都是特征碼殺毒引擎。
第二代:啟發式殺毒引擎
啟發式引擎掃描指的是“運用某種方式去判定事物的知識和技能”,是讓殺毒軟件具有學習能力的一項技術,通過行為判斷、文件結構分析等手段,在較少依賴特征庫的情況下能夠查殺未知的木馬病毒。
啟發式又分為行為啟發和靜態啟發兩種,能夠通過一些行為規則或靜態特征來識別一些未知的病毒,對未知病毒有一定的檢測能力,但啟發式仍然要依賴特征碼,比如它會按家族來查殺,即使一些病毒特征碼變了,但可以通過一些靜態特征來識別和查殺。啟發式可以部分地進行智能查殺,但都必須和上一代的特征碼引擎配合使用,并且仍然需要人工分析。
互聯網高速普及的今天,基于特征碼的殺毒引擎也受到越來越多質疑:木馬數量急劇增加,人工截取特征碼的效率有限。即使所有樣本都能及時處理,特征庫變大也會帶來資源占用過大的問題,特別是殺毒引擎隨系統啟動時都要把特征庫寫入內存,這是殺毒軟件遭到詬病的一大原因。
第三代:人工智能引擎
人工智能引擎主要依靠人工智能技術,這一代引擎已經擺脫了對病毒特征庫的依賴,它在海量病毒樣本數據中歸納出一套智能算法,自己來發現和學習病毒變化規律。它無需頻繁更新特征庫、無需分析病毒靜態特征、無需分析病毒行為,但是病毒檢出率卻遠遠超過了第一、第二代引擎的總和,而且查殺速度比傳統引擎至少快一倍。人工智能引擎的代表QVM人工智能引擎,在2010年5月研發成功,目前QVM人工智能引擎已經發展到第二代。
QVM引擎是未知病毒識別領域的一個突破,它將人工智能技術應用于病毒識別的過程當中,首先通過對病毒樣本的分析和分類形成樣本向量和向量機,然后建立一個機器學習的決策機模型,利用決策樹和向量機對大量樣本進行學習,從而識別惡意程序或非惡意程序。隨著學習樣本數量的增加,再配合白名單,就能夠在識別未知惡意程序的同時,降低誤報,使未知病毒識別技術真正商用。
任何引擎都非萬能
安全是木桶理論,引擎僅是安全中的一環,最短板決定整體安全性。面對今天的安全威脅,需要有全系統的防護能力,需要一套系統的安全體系,脫離安全體系,吹噓引擎萬能,顯然對于安全的理解太膚淺。殺毒軟件的發展步伐不會停止,隨著病毒的不斷演變,殺毒軟件也將繼續演進到第四代、第五代。