殺毒軟件

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

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

原理

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

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

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

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

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

殺毒軟件的監控位置:

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

基本功能

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

核心模塊:病毒掃描引擎

特徵碼掃描

  • 機制:將掃描信息與病毒數據庫(即所謂的「病毒特徵庫」)進行對照,如果信息與其中的任何一個病毒特徵符合,殺毒軟件就會判斷此文件被病毒感染。殺毒軟件在進行查殺的時候,會挑選文件內部的一段或者幾段代碼來作為他識別病毒的方式,這種代碼就叫做病毒的特徵碼;在病毒樣本中,抽取特徵代碼;抽取的代碼比較特殊,不大可能與普通正常程序代碼吻合;抽取的代碼要有適當長度,一方面維持特徵代碼的唯一性,另一方面保證病毒掃描時候不要有太大的空間與時間的開銷。
  • 特徵碼類別: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家的免費與付費防毒軟體做一次總體檢。 

外部連結

線上掃描分析