一種檢測和防禦計算機惡意程式的系統和方法

一種檢測和防禦計算機惡意程式的系統和方法

《一種檢測和防禦計算機惡意程式的系統和方法》是珠海金山軟體股份有限公司於2005年8月3日申請的發明專利,該專利申請號為200510036275,公布號為CN1737722,專利公布日為2006年2月22日,發明人是陳睿、孟檳榔、韓祝鵬、陳飛舟、孫國軍。

《一種檢測和防禦計算機惡意程式的系統和方法》包括:計算機作業系統監控裝置,用於收集目標程式執行的動作信息;目標程式行為記錄裝置,用於臨時保存目標程式所進行的操作記錄,並記錄修改前後的檔案、註冊表內容;已知行為特徵存儲裝置,用於保存已知的、整理到的特定操作信息,並存儲有各種操作相對應的威脅級別權值;目標程式行為識別分析裝置,用於比較目標程式行為與已知行為特徵,根據目標程式行為對應的威脅級別權值進行加權計算,達到一定閾值則確定該目標程式為惡意程式;結果調度處理裝置,用於對被確定為惡意程式的目標程式進行終止操作並通知用戶進行處理或者自行調度處理;惡意行為撤銷裝置,用於對被推斷為惡意程式的目標程式所執行的操作進行撤銷。

2010年11月15日,《一種檢測和防禦計算機惡意程式的系統和方法》獲得第十二屆中國專利獎優秀獎。

(概述圖為《一種檢測和防禦計算機惡意程式的系統和方法》的摘要附圖)

基本介紹

  • 中文名:一種檢測和防禦計算機惡意程式的系統和方法
  • 公布號:CN1737722
  • 公布日:2006年2月22日
  • 申請號:200510036275
  • 申請日:2005年8月3日
  • 申請人:珠海金山軟體股份有限公司
  • 地址:廣東省珠海市吉大景山路蓮山巷8號金山電腦大廈
  • 發明人:陳睿、孟檳榔、韓祝鵬、陳飛舟、孫國軍
  • 代理機構:廣州新諾專利商標事務所有限公司
  • 代理人:華輝
  • Int.Cl.:G06F1/00(2006.01)I
  • 類別:發明專利
專利背景,發明內容,專利目的,技術方案,改善效果,附圖說明,權利要求,實施方式,榮譽表彰,

專利背景

長期以來,以計算機病毒、邏輯炸彈特洛伊木馬程式、間諜程式為主的執行結果具有破壞性(毀壞系統、篡改檔案、影響系統穩定與執行效率、竊取信息等)的電腦程式(以下統稱惡意程式)一直是計算機使用中的重大問題,它們對信息安全具有重大的威脅。這些惡意程式種類繁多,傳播方式多樣,讓人防不勝防,如很多惡意程式利用作業系統的漏洞通過網路傳播或通過感染計算機中的執行檔傳播;有的惡意程式(如特洛伊木馬程式)經常偽裝成正常程式,引誘用戶執行,從而達到某種目的。它們一旦發作就會對計算機系統造成破壞,輕則篡改檔案、影響系統穩定與執行效率、竊取信息,重則導致系統癱瘓,甚至破壞系統硬體部分。
2005年8月之前普遍使用的防毒軟體技術大多只能檢測和殺除已知類型的惡意程式程式,且普遍採用特徵碼匹配技術。這種方法無法有效判斷未知惡意程式,只有在惡意程式被病毒分析人員分析提取特徵碼並加入病毒庫中後才可以被檢測。
2005年8月之前也有人開發了能夠檢測未知病毒的防毒技術,例如廣譜查毒、啟發式查毒等,通過對大量病毒的行為特徵進行描述分析,將經典的病毒行為特徵串作為檢測標準,主要通過經驗判斷。此方法誤報率和漏報率較高。此類方法依然屬於靜態特徵字元串匹配類型。
還有的通過在“虛擬計算機”中模擬執行待檢測程式的方法,可以在一個軟體模擬的計算機環境中執行目標程式,並放置誘餌檔案,引誘病毒執行,通過檢測虛擬環境中誘餌檔案是否改變來檢測未知病毒的方法。此方法利用虛擬機技術,可以判定一部分未知病毒。但是,由於虛擬機環境與真實計算機環境的差異,不能完整的模擬系統。並且由於檢測時需要啟動一個虛擬機,占用系統資源較大,只能實現查毒,無法在程式執行時實時監測防禦。
虛擬機運行待檢測程式判斷惡意程式的方法,主要有兩方面問題。一是占用系統資源巨大,無法做到在程式運行時實時檢測,只能通過人為去執行檢測。二是,虛擬機環境與真機之間的差異。已經發2005年8月之前病毒可以專門針對此種虛擬機進行特定操作,如發現自身在虛擬環境中運行則不執行破壞操作,以躲避檢測,更有甚者會針對特定虛擬機的漏洞進行攻擊。

發明內容

專利目的

針對上述2005年8月之前檢測惡意程式技術中的問題,《一種檢測和防禦計算機惡意程式的系統和方法》的目的在於提供一種能在真實環境中運行、占用系統資源少、誤報率低、能實時進行有效檢測和防禦已知及未知病毒的系統。該發明的另一目的在於提供一種能在真實環境中運行、占用系統資源少、誤報率低、能實時進行有效檢測和防禦已知及未知病毒的方法。

技術方案

《一種檢測和防禦計算機惡意程式的系統和方法》是通過如下的技術方案實現的:
一種檢測和防禦計算機惡意程式的系統,包括:計算機作業系統監控裝置,用於收集目標程式執行的動作信息;目標程式行為記錄裝置,用於臨時保存目標程式所進行的操作記錄,並記錄修改前後的檔案、註冊表內容;已知行為特徵存儲裝置,用於保存已知的、整理到的特定操作信息,並存儲有各種操作相對應的威脅級別權值;目標程式行為識別分析裝置,用於比較目標程式行為與已知行為特徵,根據目標程式行為對應的威脅級別權值進行加權計算,達到一定閾值則確定該目標程式為惡意程式;結果調度處理裝置,用於對目標程式行為識別分析裝置確定為惡意程式的目標程式進行終止操作並通知用戶進行處理或者自行調度處理;惡意行為撤銷裝置,用於對被推斷為惡意程式的目標程式所執行的保存於目標程式行為記錄裝置中的操作進行撤銷。所述系統還包括用戶互動控制裝置,用於對經過結果調度處理裝置傳送來的被終止的目標程式進行處理,並反饋給結果調度處理裝置。
所述系統還包括惡意程式報告裝置,用於對目標程式行為識別分析裝置確定為惡意程式的程式檔案或無法確定的檔案,在結果調度處理裝置的處理下通過網路提交給有關部門或專業反病毒公司,交由專業分析人員分析。
一種檢測和防禦計算機惡意程式的方法,包括正常的啟動和結束步驟外,該方法還包括以下步驟:目標程式行為收集步驟,收集目標程式執行的動作信息;目標程式行為記錄步驟,臨時保存目標程式所進行的操作記錄,並記錄修改前後的檔案、註冊表內容;目標程式行為識別分析步驟,比較目標程式行為與已知行為特徵,根據目標程式行為對應的威脅級別權值進行加權計算,達到一定閾值則確定該目標程式為惡意程式;結果調度處理步驟:對目標程式行為識別分析裝置確定為惡意程式的目標程式進行終止操作並通知用戶進行處理或者自行調度處理;惡意行為撤銷步驟,對被推斷為惡意程式的目標程式所執行的操作進行撤銷。
所述方法還包括用戶互動控制步驟,對經過結果調度處理裝置傳送來的被終止的目標程式進行處理,並反饋給結果調度處理裝置。
所述系統還包括惡意程式報告步驟,對被確定為惡意程式的程式檔案或無法確定的檔案,經過系統調度或者用戶互動控制通過網路提交給有關部門,或專業反病毒公司,交由專業分析人員分析。

改善效果

《一種檢測和防禦計算機惡意程式的系統和方法》根據惡意程式要達到其傳播、隱藏、破壞的目的,要進行一些特定的操作的特性。將收集到的目標程式執行的操作,與已知行為(經過計算機安全人員對已有惡意程式的操作信息分析,積累出的經典的危險操作行為)相對照,並對系統敏感檔案、敏感磁碟位置進行監控,可以自動推定目標程式的危險級別。當推定一個程式的操作具有破壞性時,便暫停目標程式,並反饋給計算機操作人員進行相應處理或者系統自行進行調度處理。該發明是根據目標程式在真實計算機中運行所產生的結果進行判斷,與已有的檔案靜態掃描,虛擬機執行等方法不同,具有占用系統資源少、誤報率低、能實時進行有效檢測和防禦已知及未知病毒。既可以判斷惡意程式,又可以有效防護系統安全,還可以對危險操作進行恢復操作。因此,此項發明對於扼制計算機病毒傳播具有一定意義。

附圖說明

圖1為包含《一種檢測和防禦計算機惡意程式的系統和方法》的計算機結構示意圖;
圖2為該發明檢測和防禦計算機惡意程式的方法的工作流程圖。

權利要求

1、《一種檢測和防禦計算機惡意程式的系統和方法》其特徵在於,該系統包括:計算機作業系統監控裝置,用於收集目標程式執行的動作信息;目標程式行為記錄裝置,用於臨時保存目標程式所進行的操作記錄,並記錄修改前後的檔案、註冊表內容;已知行為特徵存儲裝置,用於保存已知的、整理到的特定操作信息,並存儲有各種操作相對應的威脅級別權值;目標程式行為識別分析裝置,用於比較目標程式行為與已知行為特徵,根據目標程式行為對應的威脅級別權值進行加權計算,達到一定閾值則確定該目標程式為惡意程式;結果調度處理裝置,用於對目標程式行為識別分析裝置確定為惡意程式的目標程式進行終止操作並通知用戶進行處理或者自行調度處理;惡意行為撤銷裝置,用於對被推斷為惡意程式的目標程式所執行的保存於目標程式行為記錄裝置中的操作進行撤銷。
2、根據權利要求1所述的系統,其特徵在於,該系統還包括:用戶互動控制裝置,用於對經過結果調度處理裝置傳送來的被終止的目標程式進行處理,並反饋給結果調度處理裝置。
3、根據權利要求1所述的系統,其特徵在於,所述系統還包括:惡意程式報告裝置,用於對目標程式行為識別分析裝置確定為惡意程式的程式檔案或無法確定的檔案,在結果調度處理裝置的處理下通過網路提交給有關部門或專業反病毒公司,交由專業分析人員分析。
4、根據權利要求1或2或3所述的系統,其特徵在於,計算機作業系統監控裝置,包括有檔案監控模組、進程監控模組、網路監控模組、註冊表監控模組;所述檔案監控模組,通過掛接作業系統檔案操作,用於監控目標程式的每一個讀寫檔案請求;所述進程監控模組,用於監控目標程式執行的系統調用;所述網路監控模組,用於監控目標程式網路連線與傳送行為;所述註冊表監控模組,用於監控目標程式對註冊表所進行改動操作。
5、根據權利要求4所述的系統,其特徵在於,在所述系統中,通過檔案監控收集目標程式對作業系統敏感檔案的讀寫操作。
6、一種檢測和防禦計算機惡意程式的方法,包括正常的啟動和結束步驟外,其特徵在於,該方法還包括以下步驟:目標程式行為收集步驟,收集目標程式執行的動作信息;目標程式行為記錄步驟,臨時保存目標程式所進行的操作記錄,並記錄修改前後的檔案、註冊表內容;目標程式行為識別分析步驟,比較目標程式行為與已知行為特徵,根據目標程式行為對應的威脅級別權值進行加權計算,達到一定閾值則確定該目標程式為惡意程式;否則,認為該目標程式為正常程式,結束檢測或者循環檢測;結果調度處理步驟:對目標程式行為識別分析裝置確定為惡意程式的目標程式進行終止操作並通知用戶進行處理或者自行調度處理;惡意行為撤銷步驟,對被推斷為惡意程式的目標程式所執行的操作進行撤銷。
7、根據權利要求6所述的方法,其特徵在於,所述方法還包括:用戶互動控制步驟,對經過結果調度處理裝置傳送來的被終止的目標程式進行處理,並反饋給結果調度處理裝置。
8、根據權利要求7所述的方法,其特徵在於,所述方法還包括:惡意程式報告步驟,對被確定為惡意程式的程式檔案或無法確定的檔案,經過系統調度或者用戶互動控制通過網路提交給有關部門或專業反病毒公司,交由專業分析人員分析。
9、根據權利要求6或7或8所述的方法,其特徵在於,所述目標程式行為收集步驟通過檔案監控、進程監控、網路監控塊、註冊表監控實現;所述檔案監控,通過掛接作業系統檔案操作,可以監控目標程式的每一個讀寫檔案請求;所述進程監控,監控目標程式執行的系統調用;所述網路監控,監控目標程式網路連線與傳送行為;所述註冊表監控,監控目標程式對註冊表所進行改動操作。
10、根據權利要求9所述的方法,其特徵在於,在所述系統中,通過檔案監控收集目標程式對作業系統敏感檔案的讀寫操作。

實施方式

如圖1所示,在一個普通的計算機系統中,裝有一個可由該計算機執行的檢測和防禦計算機惡意程式的系統1、目標程式2、計算機作業系統3、以及網路連線模組4、檔案系統5、註冊表資料庫6;在該計算機中還帶有通常的CPU、記憶體儲設備和外存儲設備(圖中未示出)。所述目標程式2可以存在於計算機內外存儲設備的檔案以及從網路下載和傳輸的檔案或數據包中。所述目標程式2能夠在所述計算機作業系統3中運行,並能夠調用相關功能函式達到操作所述網路連線模組、檔案系統、註冊表資料庫等軟硬體。所述檢測和防禦計算機惡意程式的系統1能夠通過對所述目標程式調用相關功能函式的過程進行有效監控。
所述檢測和防禦計算機惡意程式的系統1包括:
計算機作業系統監控裝置11,用於收集目標程式執行動作信息,是所述檢測和防禦計算機惡意程式的系統1中最基本的裝置,又稱為目標程式行為收集裝置。所述計算機作業系統監控裝置11一般包括檔案監控模組111、進程監控模組112、網路監控模組113、註冊表監控模組114。
所述檔案監控模組111,通過掛接作業系統檔案操作,可以監控目標程式2的每一個讀寫檔案請求。因為對於傳統檔案傳染型病毒,包括DOS、PE病毒,為了達到傳播複製的目的,必須對被感染EXE或COM檔案進行改寫;傳統引導型病毒,會改寫軟碟及硬碟引導扇區特定位置;對於木馬、間諜軟體等惡意程式,為了實現破壞或竊取信息目的,也會對特定檔案進行讀寫操作。為了增加對惡意程式判定的準確率,可以在系統中放置特定的誘餌檔案;或特別通過檔案監控收集目標程式對作業系統敏感檔案的讀寫操作。通過檔案監控模組可以將以上目標程式的操作截獲,並將此動作信息提交給目標程式行為記錄裝置12。
進程監控模組112,監控目標程式2執行的系統調用。
網路監控模組113,由於大多新型病毒通過網路進行傳播,木馬、間諜程式竊取信息也大多通過網路傳送。通過監控目標程式2網路連線與傳送行為,供上層分析程式參考。
註冊表監控模組114,作業系統註冊表是作業系統各種重要信息、系統配置的資料庫。其中一些重要內容,如系統啟動運行項目、檔案類型關聯等等,一旦被改動,對系統安全會造成不確定影響。註冊表監控模組114會將目標程式2對註冊表所進行改動操作收集匯報給目標行為記錄裝置。
目標程式行為記錄裝置12,用於臨時保存目標程式2所進行的敏感操作記錄,並記錄修改後的檔案、註冊表內容。供行為識別分析裝置判斷目標程式2的威脅級別,並在確認惡意程式後供惡意行為撤銷裝置用於恢復修復系統原有狀態。
已知行為特徵存儲裝置14,用於保存根據對已知惡意程式的分析,總結整理出的經典行為參考數據,包括有各種操作威脅級別的權值;用於輔助判定,提高惡意程式識別的效率與準確程度;
目標程式行為識別分析裝置13,根據計算機作業系統監控裝置11收集的目標程式行為,以及存儲於已知行為特徵存儲裝置142005年8月之前的行為特徵,進行綜合判斷;並根據目標程式行為對應的威脅級別權值進行加權計算,達到一定閾值則確認為該目標程式為惡意程式。它利用惡意程式行為的基本特徵:感染性、敏感系統檔案操作等特性來綜合檢測惡意程式。對於無法確定的惡意程式,可以通過結合傳統病毒特徵碼技術進行掃描。
惡意程式行為撤銷裝置15,用於在已經判定目標程式為惡意程式後,根據目標行為記錄裝置12中所保存的目標程式所執行的操作行為記錄,反向進行回滾操作,以撤銷其對系統的影響,恢復到保存的之前狀態。因為有些操作無法撤銷(如傳送網路數據),因此此方法理論上不能做到完全的防禦,但卻可以通過最佳化將惡意程式對系統及網路的破壞減到最小。
結果調度處理裝置16,用於對目標程式行為識別分析裝置13確定為惡意程式的目標程式2進行掛起(終止)操作並通知用戶進行處理或者自行調度處理。即當目標程式行為識別分析裝置13判斷目標程式2具有一定威脅程度,便掛起(終止)目標程式2,並通知用戶進行處理或者自行調度處理。自行處理可以調用惡意程式行為撤銷裝置恢復系統狀態或者通過惡意程式報告裝置上報相關機構。
所述檢測和防禦計算機惡意程式的系統1還包括:
用戶互動控制裝置17,用於對經過結果調度處理裝置16傳送來的被掛起的目標程式進行處理(一般以彈出式選單供用戶選擇),並反饋相關信息給結果調度處理裝置16。此時,用戶可以選擇忽略繼續執行、調用惡意程式行為撤銷裝置恢復系統狀態和/或通過惡意程式報告裝置上報相關機構;
惡意程式報告裝置18,用於將被確定為惡意程式的目標程式檔案,或無法確定的目標程式檔案,通過網路提交給有關部門,或專業反病毒公司,交由專業分析人員分析。這將有利於突發新病毒的早發現,早處理,可以遏制病毒傳播。
如圖2所示為該發明檢測和防禦計算機惡意程式方法的工作流程圖。該流程的各個步驟如下:
S0、啟動:啟動檢測和防禦計算機惡意程式的系統1。在啟動檢測和防禦計算機惡意程式的系統1之前作業系統3業已啟動,否則沒辦法啟動上述系統1;為了達到理想效果,最好在啟動檢測和防禦計算機惡意程式的系統1之後再啟動目標程式2。
S1、目標程式行為收集步驟:在該步驟中,所述目標程式2發出調用系統的請求,所述計算機作業系統監控裝置11通過對目標程式2在所述作業系統3中運行時發出的調用請求監控收集目標程式2欲執行的動作信息;這些監控包括檔案監控、進程監控、網路監控、註冊表監控等。
S2、目標程式行為記錄步驟:臨時保存來自計算機作業系統監控裝置11收集來的目標程式2所進行的操作記錄信息,並記錄修改後的檔案、註冊表內容。與此同時,作業系統執行目標程式的動作。
S3、目標程式行為識別分析步驟:根據保存於目標程式行為記錄裝置12中的來自計算機作業系統監控裝置11收集的目標程式行為,以及存儲於已知行為特徵存儲裝置142005年8月之前的行為特徵,進行綜合判斷;並根據目標程式行為對應的威脅級別權值進行加權計算,達到一定閾值則確認為該目標程式為惡意程式;而且目標程式行為對應的威脅級別加權值越高,該惡意程式的危險程度越高。否則,認為該目標程式為正常程式,執行步驟S6。
S4、結果調度處理:在本步驟中,通過步驟S3被確定為惡意程式的目標程式將會被終止執行;並通知用戶進行處理或者自行調度處理。自行處理可以調用惡意程式行為撤銷裝置恢復系統狀態和/或者通過惡意程式報告裝置上報相關機構。
S5、惡意程式行為撤銷步驟,對於被確認為惡意程式的目標程式所執行的操作,根據目標行為記錄裝置12中所保存的目標程式所執行的操作行為記錄,反向進行回滾操作,以撤銷其對系統的影響,恢復到保存的之前狀態;並執行步驟S7。
S6、判斷是否結束檢測系統,如果不結束,則返回步驟S1進行循環檢測;如果結束,則執行步驟S7。
S7、結束檢測系統的運行。
所述檢測和防禦計算機惡意程式的方法1還包括如下步驟:
S8、用戶互動控制步驟:用戶對經過結果調度處理裝置16傳送來的被終止的目標程式進行處理(一般以彈出式選單供用戶選擇)。用戶可以選擇忽略繼續執行、調用惡意程式行為撤銷裝置恢復系統狀態和/或通過惡意程式報告裝置上報相關機構;然後可以結束。
S9、惡意程式報告步驟,對被確定為惡意程式的程式檔案或無法確定的檔案,經過系統調度或者用戶互動控制通過網路提交給有關部門或專業反病毒公司,交由專業分析人員分析。

榮譽表彰

2010年11月15日,《一種檢測和防禦計算機惡意程式的系統和方法》獲得第十二屆中國專利獎優秀獎。

相關詞條

熱門詞條

聯絡我們