計算機病毒類型確定方法及其系統(tǒng)的制作方法
【專利摘要】本申請公開了一種計算機病毒類型確定方法及其系統(tǒng),其中該方法包括:對于已確定類型的計算機病毒文件樣本,分別生成反映每一類型計算機病毒特征的病毒特征字符串;將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對,若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。通過本申請實現了自動對計算機病毒樣本進行類型確定及命名,所命名的病毒名稱反映該病毒的特征屬性,并且命名規(guī)則統(tǒng)一,提高了命名的準確性。
【專利說明】計算機病毒類型確定方法及其系統(tǒng)
【技術領域】
[0001 ] 本申請涉及計算機病毒自動命名【技術領域】,尤其涉及一種計算機病毒類型確定方法及其系統(tǒng)。
【背景技術】
[0002]計算機病毒的分析過程一般來說分下面幾步:首先,通過各種途徑(如用戶上報)收集到可疑的計算機病毒樣本。接著,判斷這些計算機病毒樣本是否是真正的計算機病毒,可以是人工分析的方法,通過動態(tài)靜態(tài)分析等方法來完成,也可以用自動的程序來完成,完成本步驟后就能夠確定哪些樣本是真實的計算機病毒。然后,確定這些病毒具體屬于哪一種計算機病毒,并給計算機病毒命名。最后,將命名好的計算機病毒,添加到病庫中。完成上述工作后,殺毒引擎就可以通過加載新的病毒庫,進行新的病毒的查殺操作。
[0003]計算機病毒的命名,對于相關技術的研究,分享,計算機病毒的分類,及特定計算機病毒的發(fā)展局勢的預測,都具有重要的作用。
[0004]計算機病毒的人工分析階段,病毒的命名主要依靠病毒分析人員的經驗,由于分析人員個人的命名標準差別,以及分析人員個人經驗的差別,在病毒的命名過程中存在著大量不一致,甚至是錯誤的情況。
[0005]發(fā)展到計算機病毒自動處理階段,計算機病毒的命名更多的采用分配一個隨機數編碼,作為唯一性的標志。但是通過一個隨機的編碼,無法反應計算機病毒的類型,更無法反映各計算機病毒間的變種關系。
[0006]綜上所述,針對現有技術中的缺少對已經確定是計算機病毒的惡意程序進行準確命名的技術方案,有必要提出改進的技術手段解決上述問題。
【發(fā)明內容】
[0007]本申請的主要目的在于提供一種計算機病毒類型確定方法及其系統(tǒng),以解決現有技術存在的缺少有效確定計算機病毒類型的技術方案的問題,其中:
[0008]根據本申請實施例的計算機病毒類型確定方法包括:
[0009]對于已確定類型的計算機病毒文件樣本,分別生成反映每一類型計算機病毒特征的病毒特征字符串;
[0010]將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對,若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。
[0011]根據本申請實施例的計算機病毒類型確定系統(tǒng)包括:
[0012]樣本學習模塊,用于對于已確定類型的計算機病毒文件樣本,分別生成反映每一類型計算機病毒特征的病毒特征字符串;
[0013]樣本命名識別模塊,用于將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對,若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。
[0014]根據本申請的技術方案,通過樣本學習過程生成反映每一類型計算機病毒特征的病毒特征字符串,將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒對應的病毒特征字符串進行比對,若完全匹配或匹配率大于閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。本申請實現了自動對計算機病毒樣本進行類型確定及命名,所命名的病毒名稱反映該病毒的特征屬性,并且命名規(guī)則統(tǒng)一,提高了命名的準確性。
【專利附圖】
【附圖說明】
[0015]此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構成對本申請的不當限定。在附圖中:
[0016]圖1是根據本申請實施例的計算機病毒類型確定方法的流程圖;
[0017]圖2是根據本申請實施例的步驟S102的流程圖;
[0018]圖3是根據本申請一個實施例的計算機病毒類型確定系統(tǒng)的結構框圖;
[0019]圖4是根據本申請另一實施例的計算機病毒類型確定系統(tǒng)的結構框圖;
[0020]圖5是根據本申請再一實施例的計算機病毒類型確定系統(tǒng)的結構框圖。
【具體實施方式】
[0021]本申請的主要思想在于,通過樣本學習過程生成反映每一類型計算機病毒特征的病毒特征字符串,將待確定類型計算機病毒樣本中包含的字符串數據分別與每一類型計算機病毒對應的病毒特征字符串進行比對,若完全匹配或匹配率大于閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型,并對待確定類型計算機病毒進行命名。
[0022]為使本申請的目的、技術方案和優(yōu)點更加清楚,以下結合附圖及具體實施例,對本申請作進一步地詳細說明。
[0023]根據本申請的實施例,提供了一種計算機病毒類型確定方法。圖1是根據本申請實施例的計算機病毒類型確定方法的流程圖,如圖1所示,該方法包括(步驟S102-S104):
[0024]步驟S102,對于已確定類型的計算機病毒文件樣本,分別生成反映每一類型計算機病毒特征的病毒特征字符串。
[0025]下面參考圖2并結合實例詳細描述步驟S102的具體處理過程。參考圖2,步驟S102具體包括(步驟S202-S208):
[0026]步驟S202,建立已確定類型的計算機病毒樣本文件集合和正??蓤?zhí)行計算機程序文件樣本集合。收集大量已知、且命名正確的計算機病毒文件樣本,建立病毒文件樣本集合
Aia1, a2.....aj ;同時收集大量確認為非計算機病毒的正??蓤?zhí)行計算機程序文件樣本,
建立非病毒文件樣本集合B Ib1' b2....bj。
[0027]例如:A集合包括以下病毒文件樣本,A={virus_l, virus_2, virus_3},其中virus_l中包含了病毒文件的二進制信息和對應的病毒名稱(Trojan, zhengtu.az)信息,A集合中的其他元素同樣保存類似信息。[0028]B 集合包含以下正常文件樣本,B= {no_virus_l, no_virus_2, no_virus_3},其中no_virus_l中,保存的是這個正常文件的二進制文件內容。
[0029]步驟S204,根據預定規(guī)則從已確定類型的計算機病毒文件樣本集合中提取字符串數據建立第一數據集合、并從正??蓤?zhí)行計算機程序文件樣本集合中提取字符串數據建立第二數據集合。
[0030]分別從步驟S202中建立的兩個文件樣本集合A和B的二進制文件中提取字符串數據。在本申請中,對字符串定義為對于字母文字,超過兩個字符的字母組合即認定為字符串;對于漢字等多字節(jié)文字,認為只要是多2個連續(xù)字節(jié)可以拼成一個以上字符的認為是字符串數據。將提取出來的字符串數據,以不同的二進制文件為單位分別保存。將由A病毒文件樣本集合生成的字符串文件集合命名為第一數據集合C{c1、c2.....cn};將由B非病毒文件樣本集合生成的字符串文件集合命名為第二數據集合Didp d2......dm}。
[0031]例如:從virus_l 病毒文件樣本中提取出[“CreateFile”, “password-f ile”,“zhengtu.exe”]等一系列字符串數據,并將這些字符串數據以及這個病毒樣本的類型(名稱),作為C集合(即第一數據集合)的一個元素被保存起來。
[0032]從正常程序樣本no_virus_l 中提取出[“CreateFile”,“ReadFiIe”,“programFile”]等一些列字符串數據,并將這些字符串數據作為D集合(即第二數據集合)中的一個元素保存起來。
[0033]從正常程序樣本no_virus_2 中提取出[“CreateProsess”, “SendMessage”,“CloseProcessWreateFile”]等一些列字符串數據,并將這些字符串數據作為D集合中的另一個元素保存起來。
[0034]另外,還需要將集合D中各文件中保存的字符串數據進行去重處理,并將去重后的字符串整合到一個單一的文件e中。這樣,第二數據集合就成為一個單一的文件。
[0035]例如:對no_virus_l和no_virus_2兩個正常文件所提取出的字符串去重后的結果是[“CreateFile”,“ ReadFi Ie ”,“program File”,“CreateProsess”,“SendMessage,,,“GloseProcess”]。
[0036]步驟S206,將第一數據集合與第二數據集合進行比較,將在第一數據集合中出現、且在第二數據集合中沒有出現的字符串建立第三數據集合。
[0037]將第一數據集合C中的各文件分別與文件e進行比較,將在文件Ci中出現、且在文件e中沒有出現的字符串保存到文件&中,并由η個&文件構成為一個新的文件集合,即第三數據集合F {f\、f2....fn}。
[0038]例如:集合C中的virus_l病毒文件樣本提取的字符串數據為[“CreateFile”,“password-f ile”,“zhengtu.exe” ],與正常文件 e 中的字符串數據[“CreateFile”,“ReadFile”,“program File”,“CreateProsess”,“SendMessage”,“CloseProcess” ]進行匹配,生成集合F中的一個元素,該元素的內容是下列字符串數據[“password-file”,“zhengtu.exe”]。然后,分別將集合C中的virus_2和virus_3病毒文件樣本提取的字符串數據與e中的字符串數據進行匹配,生成集合F中的其他元素。
[0039]根據已知信息病毒樣本文件集合A中的病毒樣本文件,由S{s1、s2.....sj種不同
種類(類型)的病毒組成,共u種計算機病毒,其中u〈n。每一種病毒中有多個病毒樣本,同一種病毒的多個病毒樣本屬于同一種病毒的不同變種。[0040]步驟S208,根據第三數據集合分別計算每一類型計算機病毒的字符串在該類型計算機病毒樣本總數中的出現概率,并將出現概率最高的多個字符串設置為該類型計算機病毒對應的病毒特征字符串。
[0041]每一種計算機病毒S。,對應多個計算機病毒樣本%、以及多個字符串文件f\。將多個對應的A文件劃為一個集合Hlhph2....hk}。對H集合中各文件中字符串數據出現的次數進行統(tǒng)計,并算出各字符串數據在該類型計算機病毒樣本總數中出現的概率。由字符
串數據和出現概率的數據對組成一個新的集合M。(P、Q) { (Ppq1X(P^q2).......(px、
qx) },其中P表示出現的字符串 ,Q表示與之相對應的出現概率。
[0042]例如:從Trojan, zhengtu.az (virus_l)中提取出來的字符串是[“password-file”, “zhengtu.exe” ],從屬于 Trojan, zhengtu 這類病毒樣本,其他文件中提取出來的字符串還有從virus_10病毒樣本中提取的字符串[“password-file”,“zhengtu.exe”, “zhengtu.dll ”, “username”],從 virus_15 病毒樣本中提取出來的字符串[“zhengtu.exe”, “username”],上述字符串都是在集合F中保存的各樣本的字符串數據。上文中virus_l、virus_10、virus_15這三個病毒文件樣本對應的字符串數據,就是組成集合 H 的字符串數據{[ “password-file”, “zhengtu.exe”],[ “password-file”, “zhengtu.exe”,“zhengtu.dll ”,“username” ], [ “zhengtu.exe”,“username” ]}。并由此計算字符串數據的出現概率:
[0043]“password-file”在兩個樣本中都出現了,出現概率是67%
[0044]“zhengtu.exe”在三個樣本中都出現了,出現概率是100%
[0045]“zhengtu.dll”在一個樣本中出現了,出現概率是33%
[0046]“username”在兩個樣本中出現了,出現概率是67%
[0047]于是針對Trojan, zhengtu這類病毒,構成了集合
zhengtu= {( “password-file”,67%) , ( “zhengtu.exe”,100%),( “ zhengtu.dl I ”,33%),(“username”,677%) }。
[0048]同理,針對集合S中的每一種計算機病毒都可以生成一個集合M。,共有u個集合,
將u個集合合成一個大的集合M,其中M= (M1、M2........MJ = {(P、Q) 1、( P、Q) 2......(P、Q)
J = {{(pi> Qi)i(p2、q2)1.....(ρχ、qx) J、?(Ρι> qi)2(p2> q2)2.....(px、qx) 21——{{(pi> Qi)
u(P2>q2)u.....(px、qx)J}。
[0049]針對特定的一種計算機病毒r,從集合Mr中,提取出現概率最高的t個字符串,并保證著t個字符串在其他計算機病毒的Mv (V e U,且V古r)集合中出現的概率小于w,如果某個字符串在Mv中的出現概率大于w,該字符串從之前選取的t個字符串中剔除,并用Mr中后續(xù)出現概率次高的字符串替換。
[0050]如果凡中全部字符串數據中,滿足在Mv中的出現概率小于w的字符串數據不足t個,則按照實際符合要求的字符串數據選取。如果實際符合要求的字符串數據數量小于或等于I個,則上報系統(tǒng),該種病毒的識別交由人工輔助處理。
[0051]例如:選取t的值為2,即每一種計算機病毒選取兩個病毒特征字符串,對MTrojan.zhengtu 集合二次處理后的內容為:{( “zhengtu.exe”,100%), ( “password-file”,67%)},并且還要檢查一下“zhengtu.exe”、“password_file”在其他種類病毒的Mv集合中出現的概率是否超過了閾值W,可以設置閾值w為20%。如果Mtajjan,集合中有一個元素為(“password-file” , 40%),那么 “password-file” 字符串就不適合作為 Trojan, zhengtu病毒的病毒特征字符串,于是選取后續(xù)字符串“username”作為Trojan, zhengtu病毒的一個有效病毒特征字符串,更新后的MTrojan.zhengtu集合為{( “ zhengtu.exe ”,100%),(“username” , 67%)}
[0052]上述過程中涉及三個常量的設置,分別是t、W、I。這三個值的設置需要根據具體實現的情況來決定,此處不再贅述。
[0053]通過上述處理為每一種計算機病毒,生成了一組與之相匹配的病毒特征字符串,構成集合N。病毒特征字符串是能夠反映計算機病毒特征的字符串序列。
[0054]N= { (i, J) (i, J) 2.....(i,J)u} =
[0055]{ (i, Ij1^j2.....jt} ) 1、(i,U1、j2.....jtl ) 2.....(i,U1、j2.....[0056]其中,i表示各計算機病毒的名稱,J表示與之對應的一組字符串,由t個字符串組成。在本申請中,主要通過計算機病毒的名稱反映計算機病毒的類型。
[0057]為了實時跟進計算機病毒的發(fā)展,步驟S202-S208的處理需要不斷重復執(zhí)行,不斷引入新的正常可執(zhí)行文件作為學習樣本,以適應新軟件的不斷出現。以及不斷引入新的已確定類型的計算機病毒文件作為學習樣本,新病毒的來源可以是通過步驟S104中確定病毒類型的新病毒文件樣本,以及通過借鑒其他查毒引擎獲得的計算機病毒文件樣本與病毒名稱對應關系的信息。
[0058]繼續(xù)參考圖1,步驟S104,將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對,若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。
[0059]將已經確定是計算機病毒,還沒有確定其類型的病毒樣本中包含的字符串數據提取出來,定義為R,用R中的字符串數據與N集合中的各個字符串組J進行匹配,如果R中的字符串可以與(IJ)1中全部字符串匹配,即(LJ)1中的字符串都可以在R中找到,則根據i確定該病毒樣本的類型,在本申請中主要是通過文件命名確定病毒文件類型,將該計算機的病毒名稱定義為i,并且根據當前i病毒中變種的數量,對其變種版本號進行分配。
[0060]在實際應用中,可以設置一匹配閾值,當匹配率超過該匹配閾值時也可認為是完全匹配,并執(zhí)行與完全匹配相同的處理。
[0061]對于無法完全匹配的情況,需要輸出R中的所有字符串數據,以及這些字符串數據與e集合相匹配的情況,以便為人工判斷當前病毒是哪一種已知的計算機病毒、或是一種全新的計算機病毒提供依據。
[0062]通過本申請的上述實施例,能夠對計算機病毒文件樣本進行自動命名(即確定病毒文件樣本的類型),同一種病毒使用相同的病毒名稱,不同變種用變種編號進行區(qū)分。所命名的病毒名稱反映該病毒的特征屬性,并且命名規(guī)則統(tǒng)一,提高了命名的準確性。
[0063]根據本申請的一個實施例,在自動命名過程中有可能造成錯誤的情況發(fā)生。造成系統(tǒng)的命名錯誤可能有兩個原因,一是學習樣本中,部分樣本人工對病毒的命名有誤,這個現象很普遍;另一個原因是,系統(tǒng)中選取的特征字符串無法反映該類病毒的特征??刹捎孟旅娣椒ㄟM行半自動的修復。
[0064](I)將通過系統(tǒng)中確定類型的計算機病毒,用第三方殺毒引擎進行查殺,可以獲得部分計算機病毒對應的名稱。找到命名不同的計算機病毒,從中選取部分病毒樣本借助之前系統(tǒng)獲得的字符串以及其他相關信息,通過人工來確定那種命名方式更正確。更正相關錯誤后再將相關信息加入病毒庫中。
[0065](2)將更正后的病毒樣本、病毒名稱信息重新放到本系統(tǒng)的學習樣本中,重復學習過程,以便更新之前學習過程中存在的識別誤差。經過幾輪樣本學習后,計算機病毒名稱的識別準確率會大幅提高。同時針對不斷出現的新種類的計算機病毒,也可以通過類似方法,將計算機病毒的命名知識,添加到計算機病毒類型確定系統(tǒng)中。
[0066]根據本申請的實施例,還提供了一種計算機病毒類型確定系統(tǒng)。參考圖3,是根據本申請實施例的計算機病毒類型確定系統(tǒng)的結構框圖,如圖3所示,該系統(tǒng)至少包括:樣本學習模塊10和樣本命名識別模塊20,下面詳細描述上述各模塊的結構和連接關系。
[0067]樣本學習模塊10用于對于已確定類型的計算機病毒文件樣本,分別生成反映每一類型計算機病毒特征的病毒特征字符串;
[0068]樣本命名識別模塊20用于將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對,若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。
[0069]參考圖4,樣本學習模塊10進一步包括:樣本建立模塊110、第一字符串提取模塊120和病毒特征字符串設置模塊130,其中:
[0070]樣本建立模塊110用于建立已確定類型的計算機病毒文件樣本集合和正??蓤?zhí)行計算機程序文件樣本集合。第一字符串提取模塊120與樣本建立模塊110相耦接,用于根據預定規(guī)則從已確定類型的計算機病毒文件樣本集合中提取字符串數據建立第一數據集合、并從正??蓤?zhí)行計算機程序文件樣本集合中提取字符串數據建立第二數據集合。病毒特征字符串設置模塊130與第一字符串提取模塊120相耦接,用于將第一數據集合與第二數據集合進行比較,將在第一數據集合中出現、且在第二數據集合中沒有出現的字符串建立第三數據集合;根據第三數據集合分別計算每一類型計算機病毒的字符串數據在該類型計算機病毒樣本總數中的出現概率,并將出現概率最高的多個字符串設置為該類型計算機病毒對應的病毒特征字符串。
[0071]進一步地,病毒特征字符串設置模塊130設置的每一類型計算機病毒對應的病毒特征字符串中的字符串數據在其他類型計算機病毒對應的病毒特征字符串中的出現概率小于第二預設閾值,否則,該字符串數據從之前選取的多個字符串中刪除,并用后續(xù)出現概率次高的字符串數據替換。
[0072]另外,若病毒特征字符串設置模塊130設置的某一類型計算機病毒對應的病毒特征字符串中的字符串數據小于或等于I個,則上報系統(tǒng)交由人工處理。
[0073]繼續(xù)參考圖4,樣本命名識別模塊20包括:第二字符串提取模塊210、比對模塊220、樣本命名模塊230和版本號分配模塊240,其中:
[0074]第二字符串提取模塊210用于根據預定規(guī)則提取待確定類型計算機病毒中包含的字符串數據。比對模塊220與第二字符串提取模塊210相耦接,用于將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒對應的病毒特征字符串進行比對;樣本命名模塊230與比對模塊220相耦接,用于若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。版本號分配模塊240與樣本命名模塊230相耦接,用于根據當前計算機病毒中變種的數量對其變種版本號進行分配。
[0075]參考圖5,根據本申請實施例的計算機病毒類型確定系統(tǒng)還包括:
[0076]識別結果修正模塊30,用于使用殺毒引擎對確定類型的計算機病毒進行查殺毒處理,得到該計算機病毒的新名稱,根據新名稱對計算機病毒的命名進行修正,并將修正后的計算機病毒、病毒名稱信息重新加入到已確定名稱的計算機病毒樣本中。
[0077]本申請的方法的操作步驟與系統(tǒng)的結構特征對應,可以相互參照,不再一一贅述。
[0078]綜上所述,根據本申請的上述技術方案,通過樣本學習過程生成反映每一類型計算機病毒特征的病毒特征字符串,將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒對應的病毒特征字符串進行比對,若完全匹配或匹配率大于閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。本申請實現了自動對計算機病毒樣本進行類型確定及命名,所命名的病毒名稱反映該病毒的特征屬性,并且命名規(guī)則統(tǒng)一,提高了命名的準確性。由此為實現計算機病毒處理自動化提供了重要技術支持。
[0079]以上所述僅為本申請的實施例而已,并不用于限制本申請,對于本領域的技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本申請的權利要求范圍之內。
[0080]本領域內的技術人員應明白,本申請的實施例可提供為方法、系統(tǒng)、或計算機程序產品。因此,本申請可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產品的形式。
【權利要求】
1.一種計算機病毒類型確定方法,其特征在于,包括: 對于已確定類型的計算機病毒文件樣本,分別生成反映每一類型計算機病毒特征的病毒特征字符串; 將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對,若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。
2.根據權利要求1所述的方法,其特征在于,所述分別生成反映每一類型計算機病毒的病毒特征字符串的步驟,包括: 建立已確定類型的計算機病毒文件樣本集合和正??蓤?zhí)行計算機程序文件樣本集合; 根據預定規(guī)則從所述已確定類型的計算機病毒文件樣本集合中提取字符串數據建立第一數據集合、并從所述正??蓤?zhí)行計算機程序文件樣本集合中提取字符串數據建立第二數據集合; 將所述第一數據集合與所述第二數據集合進行比較,將在所述第一數據集合中出現、且在所述第二數據集合中沒有出現的字符串建立第三數據集合; 根據所述第三數 據集合分別計算每一類型計算機病毒的字符串數據在該類型計算機病毒樣本總數中的出現概率,并將出現概率最高的多個字符串設置為該類型計算機病毒對應的病毒特征字符串。
3.根據權利要求2所述的方法,其特征在于,還包括: 每一類型計算機病毒對應的病毒特征字符串中的字符串數據在其他類型計算機病毒對應的病毒特征字符串中的出現概率小于第二預設閾值。
4.根據權利要求2所述的方法,其特征在于,還包括: 若某一類型計算機病毒對應的病毒特征字符串中的字符串數據小于或等于I個,則上報系統(tǒng)交由人工處理。
5.根據權利要求1所述的方法,其特征在于,在所述將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對的步驟之前,所述方法還包括: 根據預定規(guī)則提取所述待確定類型計算機病毒中包含的字符串數據。
6.根據權利要求1所述的方法,其特征在于,所述根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型的步驟,還包括: 根據當前計算機病毒中變種的數量對其變種版本號進行分配。
7.根據權利要求1所述的方法,其特征在于,若匹配結果為匹配率小于或等于第一預設閾值,則所述方法還包括: 提供所述待確定類型計算機病毒中包含的字符串數據、以及匹配結果。
8.根據權利要求1所述的方法,其特征在于,還包括: 將確定類型的計算機病毒加入到已確定類型的計算機病毒樣本中。
9.根據權利要求1所述的方法,其特征在于,還包括: 使用殺毒引擎對確定類型的計算機病毒進行查殺毒處理,得到該計算機病毒的新名稱;根據所述新名稱對所述計算機病毒的命名進行修正;
將修正后的計算機病毒樣本、病毒名稱信息重新加入到已確定名稱的計算機病毒樣本中。
10.一種計算機病毒類型確定系統(tǒng),其特征在于,包括: 樣本學習模塊(10),用于對于已確定類型的計算機病毒文件樣本,分別生成反映每一類型計算機病毒特征的病毒特征字符串; 樣本命名識別模塊(20),用于將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒的病毒特征字符串進行比對,若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。
11.根據權利要求10所述的系統(tǒng),其特征在于,所述樣本學習模塊(10)包括: 樣本建立模塊(110),用于建立已確定類型的計算機病毒文件樣本集合和正??蓤?zhí)行計算機程序文件樣本集合; 第一字符串提取模塊(120),用于根據預定規(guī)則從所述已確定類型的計算機病毒文件樣本集合中提取字符串數據建立第一數據集合、并從所述正??蓤?zhí)行計算機程序文件樣本集合中提取字符串數據建立第二數據集合; 病毒特征字符串設置模塊(130),用于將所述第一數據集合與所述第二數據集合進行比較,將在所述第一數據集合中出現、且在所述第二數據集合中沒有出現的字符串建立第三數據集合;根據所述第三數據集合分別計算每一類型計算機病毒的字符串數據在該類型計算機病毒樣本總數中的出現概率,并將出現概率最高的多個字符串設置為該類型計算機病毒對應的病毒特征字符串。
12.根據權利要求11所述的系統(tǒng),其特征在于,所述病毒特征字符串設置模塊(130)設置的每一類型計算機病毒對應的病毒特征字符串中的字符串數據在其他類型計算機病毒對應的病毒特征字符串中的出現概率小于第二預設閾值。
13.根據權利要求11所述的系統(tǒng),其特征在于,若所述病毒特征字符串設置模塊(130)設置的某一類型計算機病毒對應的病毒特征字符串中的字符串數據小于或等于I個,則上報系統(tǒng)交由人工處理。
14.根據權利要求10所述的系統(tǒng),其特征在于,所述樣本命名識別模塊(20)包括: 第二字符串提取模塊(210),用于根據預定規(guī)則提取所述待確定類型計算機病毒中包含的字符串數據; 比對模塊(220),用于將待確定類型計算機病毒中包含的字符串數據分別與每一類型計算機病毒對應的病毒特征字符串進行比對; 樣本命名模塊(230),用于若完全匹配或匹配率大于第一預設閾值,則根據相匹配的病毒特征字符串對應的計算機病毒類型確定待確定類型計算機病毒的類型。
15.根據權利要求14所述的系統(tǒng),其特征在于,所述樣本命名識別模塊(20)還包括: 版本號分配模塊(240),用于根據當前計算機病毒中變種的數量對其變種版本號進行分配。
16.根據權利要求10所述的系統(tǒng),其特征在于,還包括: 識別結果修正模塊(30),用于使用殺毒引擎對確定類型的計算機病毒進行查殺毒處理,得到該計算機病毒的新名 稱,根據所述新名稱對所述計算機病毒的命名進行修正,并將 修正后的計算機病毒、病毒名稱信息重新加入到已確定名稱的計算機病毒樣本中。
【文檔編號】G06F21/56GK104036187SQ201310068155
【公開日】2014年9月10日 申請日期:2013年3月4日 優(yōu)先權日:2013年3月4日
【發(fā)明者】安丙春 申請人:阿里巴巴集團控股有限公司