防毒軟件

防毒軟件(英語:antivirus software)使用於偵測、移除電腦病毒電腦蠕蟲、和特洛伊木馬程式[1]。防毒軟件通常含有即時程式監控辨識、惡意程式掃描和清除和自動更新病毒資料庫等功能,有的防毒軟件附加損害恢復等功能,是電腦防禦系統(包含防毒軟件,防火牆特洛伊木馬程式和其他惡意軟件的防護及刪除程式,入侵檢測系統等)的重要組成。[2]

「防毒軟件」的各地常用名稱
中國大陸殺毒軟件
臺灣防毒軟體
港澳防毒軟件

原理

防毒軟件所賦予的任務是隨時監控電腦程式的舉動、及掃瞄系統是否含有病毒等惡意程式。部分防毒軟件可經由作業系統開機後隨常駐程式啟動。防毒軟件對於即時監控的技術不盡相同。有的防毒軟件,會利用部分空間,使正在進行的程式特徵與病毒資料庫比較,以判斷是否為惡意程式。另一些防毒軟件會利用一些空間,模擬系統或用戶所允許動作,使受測程式執行內部程式碼的要求,根據程式的動作即可判斷是否為病毒。

而掃描硬碟的方式,則和上面提到的即時監控的第一種執行程式一樣,只是在這裏,防毒軟件會根據用戶的需求(掃描的定義範圍)做一次檢查。

另外,防毒軟件更涉及更多掃描技術:

  • 掃描壓縮檔技術:即是對壓縮檔案和封裝檔案作分析檢查的技術。
  • 程式竄改防護:即是避免惡意程式藉由刪除防毒偵測程式而大肆破壞電腦。
  • 修復技術:即是對惡意程式所損壞的檔案進行還原
  • 急救盤防毒:利用空白USB手指製作急救啟動磁碟,來檢測電腦病毒。
  • 智能掃描:掃描最常用的磁碟,系統關鍵位置,耗時較短。
  • 全盤掃描:掃描電腦全部磁碟,耗時較長。
  • 勒索軟件防護:保護電腦中的檔案不被黑客惡意加密。
  • 開機掃描:當電腦開機時自動進行掃描,可以掃描壓縮文件和可能不需要的程式。

防毒軟件就是一個資訊分析的系統,它監控所有的數據流動(包括:主記憶體-硬碟網絡-主記憶體網絡-硬碟),當它發現某些資訊被感染後,就會清除其中的病毒。資訊的分析(或掃描)方式取決於其來源,防毒軟件在監控光驅、電子郵件或區域網絡間數據移動時工作方式是不同的。

防毒軟件的監控位置:

  • 主記憶體監控:當發現主記憶體中存在病毒的時候,就會主動報警;監控所有行程;監控讀取到主記憶體中的檔案;監控讀取到主記憶體的網絡數據。
  • 檔案監控:當發現寫到磁碟上的檔案中存在病毒,或者是被病毒感染,就會主動報警。
  • 郵件監控:當發現電子郵件的附件存在病毒時進行攔截。
  • 網頁防護:阻止網絡攻擊和不安全下載。
  • 行為防護:提醒用戶可疑的應用程式行為。

基本功能

  • 防範病毒:指根據系統特性,採取相應的系統安全措施預防病毒侵入電腦。
  • 尋找病毒:指對於確定的環境,能夠準確地報出病毒名稱,該環境包括,主記憶體、檔案、引導區(含主導區)、網絡等。
  • 清除病毒:指根據不同類型病毒對感染對象的修改,並按照病毒的感染特性所進行的恢復。該恢復過程不能破壞未被病毒修改的內容。感染對象包括:主記憶體、引導區(含主引導區)、可執行檔案、文件檔案、網絡等。

核心模組:病毒掃描引擎

特徵碼掃描

  • 機制:將掃描資訊與病毒資料庫(即所謂的「病毒特徵庫」)進行對照,如果資訊與其中的任何一個病毒特徵符合,防毒軟件就會判斷此檔案被病毒感染。防毒軟件在進行查殺的時候,會挑選檔案內部的一段或者幾段代碼來作為他辨識病毒的方式,這種代碼就叫做病毒的特徵碼;在病毒樣本中,抽取特徵代碼;抽取的代碼比較特殊,不大可能與普通正常程式碼吻合;抽取的代碼要有適當長度,一方面維持特徵代碼的唯一性,另一方面保證病毒掃描時候不要有太大的空間與時間的開銷。
  • 特徵碼類別:1.檔案特徵碼:對付病毒在檔案中的存在方式:單一檔案特徵碼、複合檔案特徵碼(通過多處特徵進行判斷);2.主記憶體特徵碼:對付病毒在主記憶體中的存在方式:單一主記憶體特徵碼、複合主記憶體特徵碼
  • 優點:速度快,配備高效能的掃描引擎;準確率相對比較高,誤殺操作相對較少;很少需要用戶參與。
  • 缺點:採用病毒特徵代碼法的檢測工具,面對不斷出現的新病毒,必須不斷更新病毒庫的版本,否則檢測工具便會老化,逐漸失去實用價值;病毒特徵代碼法對從未見過的新病毒,無法知道其特徵代碼,因而無法去檢測新病毒;病毒特徵碼如果沒有經過充分的檢驗,可能會出現誤報,數據誤刪,系統破壞,給用戶帶來麻煩。

檔案校驗和法

對檔案進行掃描後,可以將正常檔案的內容,計算其校驗和,將該校驗和寫入檔案中或寫入別的檔案中儲存;在檔案使用過程中,定期地或每次使用檔案前,檢查檔案現在內容算出的校驗和與原來儲存的校驗和是否一致,因而可以發現檔案是否感染病毒。

行程行為監測法(沙盒模式)

  • 機制:通過對病毒多年的觀察、研究,有一些行為是病毒的共同行為,而且比較特殊,在正常程式中,這些行為比較罕見。當程式執行時,監視其行程的各種行為,如果發現了病毒行為,立即報警。
  • 優缺點:1.優點:可發現未知病毒、可相當準確地預報未知的多數病毒; 2.缺點:可能誤報警、不能辨識病毒名稱、有一定實現難度、需要更多的用戶參與判斷;

主動防禦技術

主動防禦並不需要病毒特徵碼支援,只要防毒軟件能分析並掃描到目標程式的行為,並根據預先設定的規則,判定是否應該進行清除操作 主動防禦本來想領先於病毒,讓防毒軟件自己變成安全工程師來分析病毒,從而達到以不變應萬變的境界。但是,電腦的智能總是在一系列的規則下誕生,而普通用戶的技術水平達不到專業分析病毒的水平,兩者之間的博弈將主動防禦推上一個尷尬境地。

機器學習辨識技術

機器學習辨識技術既可以做靜態樣本的二進制分析,又可以運用在沙箱動態行為分析當中,是為內容/行為+演算法模式。伴隨着深度學習的急速發展,各家廠商也開始嘗試運用深度學習技術來辨識病毒特徵,如瀚思科技的基於深度學習的二進制惡意樣本檢測頁面存檔備份,存於互聯網檔案館

EICAR防毒測試檔案

EICAR防毒測試檔案是歐洲反電腦病毒協會EICAR)和電腦安全公司共同推出的用於測試病毒掃描引擎的測試檔案。它不會危害電腦的程式,而其特徵碼已被各家電腦安全公司所收錄。

防毒軟件評比

參見

參考文獻

  1. ^ Microsoft. 更新防毒軟體降低中毒風險. Microsoft. 2004-07-30 [2010-12-22]. (原始內容存檔於2019-08-12) (中文(香港)). 
  2. ^ Henry, Alan. The Difference Between Antivirus and Anti-Malware (and Which to Use). August 21, 2013. (原始內容存檔於November 22, 2013). 
  3. ^ 3.0 3.1 諸葛PP. 防毒軟體年終大考,看VB100、AV Comparative怎麼判. T客邦. 2010-12-18 [2010-12-22]. (原始內容存檔於2011-08-10) (中文(香港)). 歲末年終之際,二家知名的專業防毒評測機構VB100與AV Comparative終於公佈最新的評測名單,為大大小小超過20家的免費與付費防毒軟件做一次總體檢。 

外部連結

線上掃描分析