專利名稱:經由信譽系統的惡意軟件檢測的制作方法
技術領域:
本發明一般涉及在計算機化系統中的惡意程序代碼的檢測,更具體地涉及經由信譽系統的惡意軟件檢測。有限的版權放棄 本專利文件公開的一部分包括聲明了版權保護的材料。由于該專利文件或專利公開出現在了美國專利商標局的文件或記錄中,因此版權擁有者不會對任何人對該專利文件或專利公開的傳真復制提出異議,但保留所有其他任意的權力。
背景技術:
計算機是有價值的工具在很大程度上是由于其和其他計算機系統之間通信以及通過計算機網絡獲取信息的能力。網絡典型地包括互聯的計算機組,它們通過有線、光纖、無線電或其他數據傳輸手段連接,來為計算機提供從計算機到計算機傳輸信息的能力。因特網可能是最知名的計算機網絡,使得數百萬的人能夠訪問數百萬的其他計算機,例如通過查看網頁,發送電子郵件,或通過執行其他計算機到計算機的通信。但是,由于因特網的規模如此之大以及因特網用戶的興趣如此多種多樣,因此惡意的用戶或罪犯試圖以對其他用戶造成危險的方式與其他用戶的計算機通信不是罕見的。例如,黑客可能試圖登錄到公司的計算機來偷竊、刪除或改變信息。計算機病毒或特洛伊木馬程序被分布到其他計算機,或者被大量計算機用戶沒有察覺地下載或執行。并且,在一個諸如公司的組織中的計算機用戶可能有時試圖執行未被授權的網絡通信,例如,執行文件共享程序或從公司網絡內部傳輸公司機密到因特網。由于這些以及其他原因,許多計算機系統采用多種安全防護意圖保護計算機系統免受威脅。防火墻的設計是為了限制在網絡上可能發生的通信種類,反病毒程序的設計是為了防止惡意代碼被計算機系統加載或執行,惡意軟件檢測程序的設計是為了檢測回郵器、鍵擊記錄器以及被設計用于執行諸如從計算機竊取信息或將計算機用作非預期的用途的不希望的操作的其他軟件。多種其他的惡意軟件,例如,廣告軟件、間諜軟件以及特洛伊木馬程序通常通過例如這些防護系統被檢測并控制。許多這種防護系統使用已知的惡意軟件威脅的簽名來檢測并控制這些威脅。例如,反病毒軟件典型地使用包括代碼片段或其他識別信息的大的簽名庫來掃描諸如硬盤驅動器之類的存儲器,并掃描正在執行的程序,從而在其可能造成損害前從計算機系統移出攻擊性的代碼。
檢測新的威脅,或者能夠重新排列它們的可執行代碼來降低基于簽名的檢測的有效性的威脅,仍然是反惡意軟件應用的一個挑戰。考慮到新類型的惡意軟件不斷地發展,并經常被配置來避免檢測,惡意軟件的有效及準確的檢測仍然是惡意軟件檢測軟件持續面臨的挑戰。
發明內容
本發明的一些示例實施例包括計算機網絡設備,其可操作以接收數字文件并從該文件提取多個高級別特征。使用分類器評估該多個高級別特征來確定該文件是良性的還是惡意的。如果該文件被確定是良性的,則該文件被轉發到請求計算機,如果該文件被確定是惡意的,則該文件被阻止。本發明的元件可被采用在諸如防火墻之類的網關設備中或終端主機上,來防止訪問惡意的文件。在進一步的示例中,后端惡意軟件分析平臺被采用來檢測并追蹤惡意文件。
圖I顯示了與本發明的示例實施例一致的計算機網絡。 圖2是圖示了與本發明的示例實施例一致的使用高級別文件特征和確定文件是否是惡意軟件的決策樹分類引擎的流程圖。
具體實施例方式在下面的對本發明的示例實施例的詳細描述中,通過附圖和說明引用特定的示例。這些示例被足夠詳細地描述使得本領域技術人員能夠實施本發明,并用來示出本發明怎樣被應用到多種目的或實施例中。本發明的其他實施例存在并在本發明的范圍中,并且邏輯的、機械的、電子的以及其他變動可被做出而不背離本發明的主題或范圍。然而此處描述的本發明的多種實施例的特征或限制(對合并這些特征或限制的示例實施例是必要的)不限制本發明的整體,并且本發明的任意引用、它的元件、操作以及應用并不限制本發明的整體而是僅用作定義這些示例實施例。因此,下面的詳細描述并不限制本發明的范圍,其僅由附加的權利要求來定義。本發明的一些示例實施例包括諸如可執行程序之類的電子二進制文件的分類,其使用文件的高級別特征以及決策樹,產生關于文件是惡意軟件的可能性的有效和準確的確定。因為單獨使用簽名的惡意軟件檢測由于惡意軟件生產者設計程序來避開檢測而變的不夠有效,所以其他方法被期望來改善執行不希望的功能的程序的檢測速率。為了幫助促進惡意軟件檢測的速率,在本發明的一些實施例中應用的技術超越了包括惡意軟件或被惡意軟件感染的軟件的簽名或其他低級別特征。在不同的實施例中,文件可被以至少三種不同的方式被處理或表示,包括使用文件本身、使用文件的散列、或使用文件的高級別特征。研究顯示,高級別特征可被成功地使用來檢測惡意的行為,在更詳細的一般化的惡意軟件檢測系統的示例中,通過使用提取器程序來從二進制提取高級別特征。這些特征包括文件大小信息、熵、時間戳、動態鏈接庫、以及其他這種高級別特征。雖然這些特征的每一個自身對二進制的惡意不是決定性的,但所有特征的組合可以產生準確的結果來標識特定的樣本是干凈的還是臟的。在不同的實施例中,使用幾項技術在惡意軟件檢測的不同關系下工作來提供對惡意軟件的更為高效的以及有效的識別,包括對終端主機部署的緊湊快速的分類器,對網關部署的緊湊快速的分類器,對后端樣本處理的復雜分類器,和適用于查詢的實時分類的復雜快速的分類器。使用提取器,二進制文件被分解為文件的不同的特征或屬性,包括能被容易地提取的靜態屬性以及諸如網絡活動或庫或其他使用的資源之類的行為數據。同樣地,特征可以是密集的(總是存在,例如文件大小)或稀疏的(很少出現,例如,條目點處的開頭兩個字節是xyzz)。在多個實施例中,文件的高級別特征包括諸如文件大小、文件內的隨機性、文件中的開始或結束代碼串、以及文件幾何。文件幾何不僅包括大小,還包括其他特征,例如文件中的段的數量、段的組織、可執行代碼段中的內含物和特征,等等。例如,一個具有五個段的文件,其最后一段是具有高熵或高隨機性的可執行代碼,這樣的文件可被有理由猜測為隱 藏在具有其他內容的文件中的惡意代碼。為了區分干凈的二進制和惡意軟件,干凈的和臟的樣本的數據集被創建。使用這些,機器學習算法被采用來在特征空間導出邊界來分離干凈的和臟的樣本。各種實施方式包括使用諸如決策樹之類的緊湊模型來評估數據并將稀疏特征轉換為密集特征來形成端點、網關或后端分類系統。在特定部署中,一個小的分類模型是合適的,例如在終端用戶計算機系統或便攜設備中的實施方式。標準技術會導致大的模型并因此不實用。在一個這樣的示例中,一個小的模型文件被產生,帶有適度的誤判率。被檢測為惡意軟件的文件被在網絡服務器中查找來確定它們是否實際上是惡意軟件,以使得服務器做出最終的惡意軟件決定。當需要緊湊的模型時,我們使用決策樹分類器,我們將其表示為一系列嵌套的條件(if)語句。我們修剪所有不導致惡意分類結果的路徑,在這種情況下,默認是干凈的/未知的。此外,我們將在輸入數據中的所有的稀疏特征轉換為密集特征,通過僅僅輕微地影響分類性能而大幅度地減小模型的大小。稀疏特征到密集特征的轉換使得在決策樹中使用更少數量的決策。替代使用幾千個單獨的特征,我們使用特征id來查找多個密集特征。我們使用散列實施方式連同壓縮的位掩碼來以非常高效的方式存儲散列數據,導致快速的查找以及小的存儲器印跡。例如,開始比特、結束比特、以及文件的其他這種特征可被轉換為一個或多個散列值,并與已知的壞文件的散列值做比較。在另一個示例中,例如在終端主機或網關設備中采用適度大小的模型,其具有較低的誤判率。被識別為潛在惡意的文件相對于已知的好文件的白名單被進行查詢,來進一步減少誤判率,該白名單存儲在服務器中或在本地中緩存并更新。在一些實施例中,更大的模型可以進一步減少誤判率,例如通過使用本地的相對大的查找表,而不為了附加信息或確認來查詢服務器。這種模型在足夠的計算資源在終端主機上可用的情況下,或當聯網的查找服務不可用或分散時是有用的。這些模型可被用于端點、網關、后端或云分類。使用緊湊的模型和稀疏特征轉換,模型被計算用于端點分類,例如在決策樹中的具有數以萬計的模型元素的模型。一般來說,誤判率允許使用這一模型作為云或網絡查找的查詢選擇器,但是更高的確信級別是可能的。該技術同樣可以結合數據服務器提供的白名單使用,以用于積極地減少誤判。最后,分類器可被偏置來避免擊中普遍的文件,進一步包括在一些實施例中為了關于文件擴散的信息而使用數據服務器。盡管使用看到大多數好文件的端點檢測的小機器除了具有小且高效的分類模型之外還期望具有低誤判率,然而在看到更高比例的惡意文件的網關或其他設備中,更高的誤判率可以被容忍并是期望的以避免遺漏惡意文件。使用緊湊的模型和稀疏特征轉換,一個示例的網關模型被計算為具有大約為O. 1%的誤判率,其作為網關分類器是合適的,但是可能高于端點分類所期望的。更復雜的特征可被提取并且諸如稀疏特征之類的更高維度在后端分類中可以被容忍,其中諸如數據服務器之類的系統被用來評估未知的文件或者在其他分類點中符合特定標準的文件。大約數十或數百兆字節數據的更大的模型可被快速有效地應用到數據文件,使用在專用的后端系統中可用的附加的處理能力。在云分類中,提供給后端數據服務器用于查找的數據可被用來對執行中的數據進 行分類,因為特征被提取并發送到專用的服務器來分類。輸入的特征與端點分類相似,但是模型文件更大。此外,我們可以結合附加的全局信息,例如基于IP地址的樣本分布、擴散級另IJ、查找串等等。最后,利用電子郵件或網絡信譽查找鞏固這一數據,允許我們在電子郵件以及網絡中知道新的爆發并實時做出響應,類似于對于電子郵件和網絡信譽如何處理網絡欺詐電子郵件和URL。圖I顯示了與本發明的示例實施例一致的聯網的計算環境,包括在多個實施例中的高級別特征數據分類。此處,各種終端用戶計算機系統101通過網關102與在103的諸如因特網之類的網絡連接。計算機能夠連接到外例如105點部計算機系統,外部計算機可提供良性的或是有害的內容。數據服務器104在一些進一步的實施例中被提供,提供后端或云分類以及信譽服務器功能。在操作中,連接到因特網的諸如個人計算機或“智能”手機之類的計算機化設備101的用戶從遠程計算機系統105請求文件。請求的數據在到達最終用戶前穿過因特網103和例如防火墻的網關102。對文件的特征,例如文件幾何、隨機性、大小、開始代碼串以及其他這種特征,執行高級別分析。在本發明的不同實施例中,文件良性或惡意的分類在不同的階段被執行,例如,在最終用戶分類的最終用戶的計算機系統101處執行,以使得文件在其被執行或打開之前被掃描。如果它被確定是惡意的,則在網關102處的網關分類可以防止文件到達最終用戶,并且網關或其他系統可以依賴數據服務器104來執行云分類,例如當文件是邊界線時,或沒有提供網關或最終用戶分類時。云分類使用諸如多個服務器104之類的分布式計算機系統來提供分類,來更為有效地評估新的或是未知的威脅。在進一步的實施例中,對新的或未知的文件的后端分類被我們用來確定被分析的文件是惡意的,并提供諸如簽名和散列數據之類的信息給網關102和云服務器104來幫助未來的威脅檢測。對圖I的環境的更多詳細的部署示例包括使用之前討論的多個部署模型中的一個將惡意軟件檢測引擎部署到終端主機101上,部署在網關102上,使用信譽服務器104來分類由終端主機發送的特征,以及后端系統檢測與隨后的文件信息的特征化(例如簽名產生)一起在大的本體(corpus)中檢測惡意文件。在這些示例中,信譽服務器和后端系統檢測的不同在于,存在信譽服務器以提供消費者查找響應,而后端檢測系統被使用來獲得對系統已知的文件體中的選中的文件的洞察。圖2是與本發明的示例實施例一致的、使用文件的高級別特征來確定其是良性或惡意的示例方法的流程圖。在201,例如來自圖I的計算機101的用戶從遠程計算機系統請求文件,例如通過從因特網網站下載可執行文件。在202,遠程計算機接收文件請求并發送文件,文件在可以操作用于評估文件以確定文件是惡意的還是良性的網關或端點分類引擎中被接收。在203,高級別文件特征被從文件中提取,并且在204,分類引擎使用這些高級別
特征以及決策樹規則,例如通過使用文件幾何、隨機性、大小、開始代碼串數據、各種文件數據的散列值或者其他這種特征來在205確定文件是否與已知的惡意文件具有相似的特性。如果被討論的文件匹配指示它是惡意文件的決策樹規則,則在206,文件被阻止。由于在一些實施例中,導致找到良性文件的規則被從決策樹中截去,因此到達決策樹分支的末端而沒有被發現是惡意的文件被推測為良性的,并且在207,該文件被傳遞給請求用戶。這個使用提取的高級別特征應用到決策樹的新的分類技術與傳統的基于簽名的檢查方法相比具有很多優點。首先,該方法主動地工作,因為其對樣本的高級別特性進行操作,和低級別描述形成對照,使得能夠在詳細的數據可用之前檢測更多新的或者未知的威脅,提高了提供給用戶的保護級別。第二,大量潛在的惡意軟件文件能夠以非常緊湊的方式表示,減少了定義數據文件的總的大小。第三,從惡意軟件文件提取的特征可被用于收集惡意軟件的全局情報,提高了后端數據分類系統的效率并且提高了分布到端點或網關的模型的效率。在一些實施例中,這一數據進一步與包括IP信譽數據的統一的服務器查找中的電子郵件或者網絡數據相關聯,這將進一步改善智能性能。第四,提出的技術是通用的并將會有益于所有級別的惡意軟件檢測(終端主機、網關、后端以及在線查詢)。盡管此處圖示并描述了特定的實施例,但本領域普通技術人員可以理解任意的計劃來達到相同目的的布置可以替代所示的特定的實施例。本申請意在覆蓋本發明此處描述的示例實施例的任意改變或變形。本發明意在僅由權利要求及其等價物的全部范圍所限定。
權利要求
1.一種在計算機化系統上過濾數字電子內容的方法,包括 訪問數字文件; 從該文件中提取多個高級別特征;以及 使用分類器評估該多個高級別特征以確定該文件是良性的還是惡意的。
2.根據權利要求I所述的過濾數字電子內容的方法,其中評估包括在客戶端系統上使用分類器來確定該文件是良性的還是惡意的,以及如果在客戶端系統上確定該文件是惡意的,則該文件的散列被發送到信譽服務器以最終確定該文件是良性的還是惡意的。
3.根據權利要求2所述的過濾數字電子內容的方法,其中所述信譽服務器最終確定該文件是良性的還是惡意的包括下列中的至少一項如果該散列匹配已知的惡意文件,則確定該文件是惡意的,以及如果該散列不匹配已知的良性文件,則確定該文件是惡意的。
4.根據權利要求I所述的過濾數字電子內容的方法,其中該分類器包括一個或多個決策樹。
5.根據權利要求I所述的過濾數字電子內容的方法,其中該多個高級別特征包括文件大小、文件隨機性、開始代碼串以及文件幾何中的至少一個。
6.根據權利要求I所述的過濾數字電子內容的方法,進一步包括使用從該文件的運行時屬性中提取的行為數據評估該二進制文件,以確定該文件是良性的還是惡意的。
7.根據權利要求I所述的過濾數字電子內容的方法,其中評估包括確定由該文件使用的庫或資源中的至少一個。
8.根據權利要求I所述的過濾數字電子內容的方法,其中提取和評估中的至少一個在客戶端計算機、網關設備、后端服務器和實時云中分類系統中的一個或多個中實現。
9.根據權利要求I所述的過濾數字電子內容的方法,進一步包括如果該文件被確定是良性的,則將該文件轉發到請求計算機,以及如果該文件被確定是惡意的,則阻止文件的傳遞。
10.根據權利要求I所述的過濾數字電子內容的方法,其中評估包括在本地系統上執行第一評估以識別至少一個可疑文件,將該可疑文件的高級別特征轉發給信譽服務器以進行最終確定,從該信譽服務器接收對該可疑文件的最終確定,并僅僅阻止由該信譽服務器確定為惡意的那些文件。
11.根據權利要求10所述的過濾數字電子內容的方法,其中該客戶端進一步將該文件的散列發送到該信譽服務器。
12.根據權利要求11所述的過濾數字電子內容的方法,其中該信譽服務器追蹤該文件散列的一個或多個特征。
13.根據權利要求12所述的過濾數字電子內容的方法,其中追蹤該文件散列的一個或多個特征包括以下中的一個或多個每個散列的查詢量、自從該散列第一次出現以來的時間、查詢該散列的客戶端的數目、以及查詢該散列的客戶端的分布。
14.一種計算機網絡設備,包括 網絡連接,可操作以訪問數字文件;以及 提取模塊,可操作以從該文件中提取多個高級別特征;以及 評估模塊,可操作以使用分類器來評估該多個高級別特征以確定該文件是良性的還是惡意的。
15.根據權利要求14所述的計算機網絡設備,其中該分類器包括決策樹。
16.根據權利要求14所述的計算機網絡設備,其中該多個高級別特征包括文件大小、文件隨機性、開始代碼串以及文件幾何的中的至少一個。
17.根據權利要求14所述的計算機網絡設備,其中該評估模塊進一步可操作以使用從該文件的運行時屬性中提取的行為數據來評估該二進制文件,以確定該文件是良性的還是惡意的。
18.根據權利要求14所述的計算機網絡設備,其中評估包括確定由該文件使用的庫或資源中的至少一個。
19.根據權利要求14所述的計算機網絡設備,其中該設備包括客戶端計算機、網關設備、后端服務器、以及實時云分類系統中的一個或多個。
20.根據權利要求14所述的計算機網絡設備,其中該評估模塊進一步可操作以如果該文件被確定是良性的,則將該文件轉發到一個請求計算機,以及如果該文件被確定是惡意的,則阻止文件的傳遞。
21.根據權利要求14所述的計算機網絡設備,其中評估包括在該網絡設備上執行第一評估以識別至少一個可疑文件,將該可疑文件轉發給信譽服務器以進行最終確定,從該信譽服務器接收對該可疑文件的最終確定,并僅僅阻止由該信譽服務器確定為惡意的那些文件。
22.—種在其上存儲有指令的機器可讀介質,該指令在被執行時可操作以使得計算機化系統執行 訪問數字文件; 從該文件中提取多個高級別特征;以及 使用分類器評估該多個高級別特征以確定該文件是良性的還是惡意的。
23.根據權利要求22所述的機器可讀介質,其中該分類器包括決策樹。
24.根據權利要求22所述的機器可讀介質,其中該多個高級別特征包括文件大小、文件隨機性、開始代碼串以及文件幾何中的至少一個。
25.根據權利要求22所述的機器可讀介質,當該指令被執行時進一步可操作以使用從該文件的運行時屬性中提取的行為數據評估該二進制文件,以確定該文件是良性的還是惡意的。
26.根據權利要求22所述的機器可讀介質,其中評估包括確定由該文件使用的庫或資源中的至少一個。
27.根據權利要求22所述的機器可讀介質,其中提取和評估中的至少一個在客戶端計算機、網關設備、后端服務器、以及實時云分類系統中的一個或多個中實現。
28.根據權利要求22所述的機器可讀介質,當該指令被執行時進一步可操作以如果該文件被確定是良性的,則將該文件轉發到一個請求計算機,以及如果該文件被確定是惡意的,則阻止文件的傳遞。
29.根據權利要求22所述的機器可讀介質,其中評估該多個高級別特征包括在本地系統上執行第一評估以識別至少一個可疑文件,將該可疑文件轉發給信譽服務器以進行最終確定,從該信譽服務器接收對該可疑文件的最終確定,并僅僅阻止由該信譽服務器確定為惡意的那些文件。
全文摘要
本發明提供了一種經由信譽系統的惡意軟件檢測的計算機網絡設備和方法。計算機網絡設備接收數字文件并從該文件中提取多個高級別特征。使用分類器評估該多個高級別特征以確定該文件是良性的還是惡意的。如果該文件被確定是良性的,則該文件被轉發到請求計算機,以及如果該文件被確定是惡意的,則該文件被阻止。
文檔編號G06F13/14GK102822839SQ201080064821
公開日2012年12月12日 申請日期2010年12月22日 優先權日2009年12月31日
發明者S·克拉塞爾, 唐雨春, 何遠塵, 鐘振宇 申請人:邁克菲股份有限公司