當前,計算機病毒主要以加殼的特洛伊木馬、蠕蟲為主,病毒的作者不再像以前一樣僅僅是為了炫耀自己的計算機水平有多高,而是為經濟利益所驅使,盜取用戶私密信息、開辟系統後門等等,帶來直接經濟損失。
隨著軟件漏洞的頻頻出現,尤其是Microsoft的Windows和Office漏洞,甚至是0day漏洞攻擊,加上用戶安全意識不夠,再加上病毒誕生速度,造成了如今病毒泛濫的現象。反病毒軟件查不到病毒、殺不掉病毒,用戶怨聲一片,只怪病毒出現得實在太快,編寫技術實在太高。為了殺掉一個病毒,需要漫長的等待反病毒廠商將其加入到病毒特征庫中,升級了,發現又無法清除,只能返回到連Microsoft都不知道是否該放棄的DOS中解決。
防病毒自然被所有人看成了一個最關鍵的環節。怎麼實現呢?
啟發式這個概念在幾年前已經有人提出並已經實現,到了現在啟發式已經發展到了一個相當厲害的程度,在將誤報降低到最少的前提下盡可能的發現未知病毒。每個反病毒軟件廠商實現的方式不同,但是基本上都是一種理念,就是在一個虛擬環境中執行病毒根據病毒行為判斷,,當然這種虛擬方式持續的時間極短。啟發式在國外基本上算是一個比較成熟的技術了,尤其以NOD32、McAfee、Dr.web等尤為厲害,他們的啟發式引擎能夠相當准確的查出一個新病毒並且及時阻止,誤報的概率比起其他來小太多。實際上Kaspersky也有自己的啟發式引擎,某些時候也能報出未知病毒,概率嘛自然比起前面說的要小很多,不過在某些特定語言編寫的病毒方面,Kaspersky能夠很准確的報未知病毒
(Kaspersky Lab的病毒特征碼提取技術那是業界首屈一指的,經常會發現之前某個病毒的特征碼仍然適用於之後出現的病毒的情況)。國內的情況就不樂觀,啟發式雖然在國內不能說成空白,但是也不知道該拿什麼詞來形容現階段的狀況。以國內三大江民、瑞星、金山為例,江民KV系列一直都有延續著“廣譜查殺”技術,這種技術對變種病毒很有效,尤其對宏病毒之類的,偶爾大家或許能看到KV報某可疑文件為Win32.Type,這就是KV“廣譜查殺”技術的收獲(廣譜技術和之前說的啟發式是有一定區別的);瑞星的行為分析技術似乎對於Windows平台下更有效,通過病毒行為判斷來分析病毒的可能性,從實際情況來說,它的效果比KV的明顯,但這只是一個相對比較,整體看來作用也不大,很少發現報未知病毒的情況;至於金山毒霸,幾年前因使用的是Dr.web的引擎有啟發式的存在,現在因為完全用了自己的引擎技術,至少我沒有發現金山毒霸有啟發式的影子。
主動防御這個詞好像是近段時間才出現的吧,國內的反病毒軟件好像是KV第一個用了注冊表監控技術,所以有一部分人就認為主動防御就是注冊表監控這東西,那麼這太片面了。
現在病毒有哪些行為呢?擅自創建程序,創建自己的啟動項,將自己插入到別的進程中,利用Rootkit編程隱藏自己……
說到主動防御,我不得不說到的是System Safety Monitor(簡稱SSM)這款軟件,這個軟件屬於Host-based Intrusion Prevention System(HIPS),它不是反病毒軟件,也不是防火牆軟件,卻能夠從小到每個進程大到整個磁盤底層保護系統免受不良程序的危險,軟件的功能自然包括最常見的注冊表保護、文件保護、磁盤系統保護、防止進程注入等,SSM的功能太強大,不多說。Kaspersky從V6開始引入了Proactive Defense,它的主動防御默認並不開啟注冊表監控,因為這種交互很麻煩,對普通用戶來說會帶來相當多的麻煩,用戶看不懂這些注冊表監控到底在提示些什麼,因此Kaspersky Lab出於對用戶的考慮默認並沒啟動這個功能,至於它的行為監控模塊就值得稱道,通過內置規則,
當某程序試圖執行時,行為監控就會比對規則判斷是否為惡意程序,這種准確度是相當驚人的,最新的版本基本上能100%發現Rootkit,對於木馬、後門、蠕蟲等基本都能攔截,雖然報的名字很統一Trojan Generic,那些進程注入、隱藏數據發送、帶參數啟動IE等自然都不能逃出它的監控(他的Proacive Defense彌補了了在啟發式方面的相對薄弱),有機會大家去用一用吧。國內方面,瑞星目前僅有一個注冊表監控,那麼可以將其排除在主動防御之外,因為這個太膚淺,不過最近加入了一個防止直接通過浏覽器執行程序的功能,這個功能相當值得稱道,通過IE中讀的人實在太多;毒霸沒有這個功能;江民的KV系列,從前幾個版本就有了注冊表監控,後來發展到“木馬一掃光”,木馬
一掃光在最初包含了注冊表監控、進程注入、鍵盤記錄幾個功能,初步實現了一些簡單的主動防御模塊,可能因為交互沒做好,在給用戶帶來安全的同時也帶了了麻煩,用戶不知道KV到底在提示些什麼,現在到了KV2007,木馬一掃光被降級到了純粹的注冊表監控范圍,其他的功能交給了“系統監控”,網絡訪問控制(主要是HTTP、EMAIL)、進程注入保護、擅自運行程序、直接內存訪問、文件訪問控制、文件完整性保護等樣樣俱到,雖說不是特別全面,不過已經涵蓋了絕大部分,這些對於有經驗的用戶來說是個福,對於初級用戶來說就有些麻煩,得看以後怎樣改進了,最好直接判斷程序可能是什麼或是什麼。
當然,主動防御有個缺點,就是必須當程序似乎執行時才有效,靜態查毒不生效。
啟發式與主動防御,國內軟件KV在這方面的發展和應用略占優勢,我們只能期待會更好,沒有國人不支持自家的東西。