多文件樣本的測試方法、裝置和客戶端的制作方法
【專利摘要】本發(fā)明提出一種多文件樣本的測試方法、裝置和客戶端,其中該方法包括以下步驟:獲取多文件樣本;將N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有W1個最小獨立可執(zhí)行文件組合的第一集合;獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)關(guān)系信息獲取剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合;以及根據(jù)W1個最小獨立可執(zhí)行文件組合和W2個最小獨立可執(zhí)行文件組合的類型確定多文件樣本是否為惡意樣本。根據(jù)本發(fā)明實施例方法,可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約樣本庫的存儲空間,并且避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。
【專利說明】多文件樣本的測試方法、裝置和客戶端
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機安全【技術(shù)領(lǐng)域】,尤其涉及一種多文件樣本的測試方法、裝置和客戶端。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的發(fā)展,電子商務(wù)的盛行,惡意文件成幾何級數(shù)爆炸增長。惡意文件是指故意在計算機系統(tǒng)上執(zhí)行惡意任務(wù)的病毒、蠕蟲或者特洛伊木馬等。在惡意文件被用戶發(fā)現(xiàn)之前,用戶上網(wǎng)時的私人敏感資料都有可能被盜走,例如,銀行帳戶信息,信用卡密碼等。因此,給用戶造成巨大的損失,對用戶的危害巨大。目前,分析多文件樣本中是否包含惡意文件的方法主要有動態(tài)行為分析方法,該方法已成為目前國內(nèi)外反病毒安全領(lǐng)域研究的熱點。
[0003]在實現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:目前可以通過用戶上報,蜜罐捕獲等多種方式獲取海量的惡意文件數(shù)據(jù),然而海量的惡意文件數(shù)據(jù)會導(dǎo)致惡意文件的樣本庫中存放的樣本量非常大,不僅樣本庫占用的存儲空間非常大,而且通過動態(tài)行為分析方法分析多文件樣本存在惡意文件時,消耗的時間非常長。此外,由于多文件樣本常常會被多次打包生成壓縮包文件,通過動態(tài)行為分析方法不能排除壓縮包文件中重復(fù)的多文件樣本,導(dǎo)致通過動態(tài)行為分析方法分析多樣本文件中的惡意文件消耗的時間長,分析效率低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在至少解決上述技術(shù)問題之一。
[0005]為此,本發(fā)明的第一個目的在于提出一種多文件樣本的測試方法。該方法一方面可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提聞了分析效率。。
[0006]本發(fā)明的第二個目的在于提出一種多文件樣本的測試裝置。
[0007]本發(fā)明的第三個目的在于提出一種客戶端。
[0008]為了實現(xiàn)上述目的,本發(fā)明第一方面實施例的多文件樣本的測試方法包括以下步驟:獲取多文件樣本,其中,所述多文件樣本中包括N個文件,其中,N為正整數(shù);將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,所述第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù);獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)所述關(guān)系信息獲取所述剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù);以及根據(jù)所述Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本。
[0009]根據(jù)本發(fā)明實施例的多文件樣本的測試方法,一方面可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。
[0010]為了實現(xiàn)上述目的,本發(fā)明第二方面實施例的多文件樣本的測試裝置,包括:第一獲取模塊,用于獲取多文件樣本,其中,所述多文件樣本中包括N個文件,其中,N為正整數(shù);匹配模塊,用于將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,所述第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù);第二獲取模塊,用于獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)所述關(guān)系信息獲取所述剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù);以及判斷模塊,用于根據(jù)所述Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本。
[0011]根據(jù)本發(fā)明實施例的多文件樣本的測試裝置,一方面可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。
[0012]為了實現(xiàn)上述目的,本發(fā)明第三方面實施例的客戶端,包括:屏幕,處理器和電路板;所述屏幕安置在所述外殼上,所述電路板安置在所述外殼圍成的空間內(nèi)部,所述處理器設(shè)置在所述電路板上;所述處理器用于處理數(shù)據(jù),并具體用于:獲取多文件樣本,其中,所述多文件樣本中包括N個文件,其中,N為正整數(shù);將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,所述第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù);獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)所述關(guān)系信息獲取所述剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù);以及根據(jù)所述Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本。
[0013]根據(jù)本發(fā)明實施例的客戶端,一方面可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。
[0014]本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
【專利附圖】
【附圖說明】
[0015]本發(fā)明上述的和/或附加的方面和優(yōu)點從下面結(jié)合附圖對實施例的描述中將變得明顯和容易理解,其中,
[0016]圖1是根據(jù)本發(fā)明一個實施例的多文件樣本的測試方法的流程圖;
[0017]圖2是根據(jù)本發(fā)明一個具體實施例的多文件樣本的測試方法的流程圖;
[0018]圖3是根據(jù)本發(fā)明一個實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖;
[0019]圖4是根據(jù)本發(fā)明一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖;
[0020]圖5是根據(jù)本發(fā)明另一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖;
[0021]圖6是根據(jù)本發(fā)明又一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖;以及
[0022]圖7是根據(jù)本發(fā)明再一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0023]下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。相反,本發(fā)明的實施例包括落入所附加權(quán)利要求書的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。
[0024]在本發(fā)明的描述中,需要理解的是,術(shù)語“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對重要性。在本發(fā)明的描述中,需要說明的是,除非另有明確的規(guī)定和限定,術(shù)語“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連。對于本領(lǐng)域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語在本發(fā)明中的具體含義。此外,在本發(fā)明的描述中,除非另有說明,“多個”的含義是兩個或兩個以上。
[0025]流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現(xiàn)特定邏輯功能或過程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實施方式的范圍包括另外的實現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時的方式或按相反的順序,來執(zhí)行功能,這應(yīng)被本發(fā)明的實施例所屬【技術(shù)領(lǐng)域】的技術(shù)人員所理解。
[0026]下面參考附圖描述根據(jù)本發(fā)明實施例的多文件樣本的測試方法、裝置和客戶端。
[0027]目前,通過動態(tài)行為分析方法不能排除壓縮包中重復(fù)的多文件樣本,導(dǎo)致通過動態(tài)行為分析方法分析多文件樣本中惡意文件消耗的時間非常長,分析效率很低。如果通過識別多文件樣本中文件之間的關(guān)系(例如,讀取、寫入、運行等),并識別多文件樣本中重復(fù)的文件樣本(例如被多次打包的重復(fù)樣本)、識別并拆分組合的多文件樣本(例如包含多個可執(zhí)行文件的多文件樣本)或者識別不完整的殘缺多文件樣本。然后對可執(zhí)行文件或者多文件組合進行“最小獨立可執(zhí)行文件組合”鑒別、最小化分離、恢復(fù)、排重,由此,一方面可以減少樣本庫中存放重復(fù)的文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。為此,本發(fā)明提出了一種多文件樣本的測試方法。
[0028]圖1是根據(jù)本發(fā)明一個實施例的多文件樣本的測試方法的流程圖,圖2是根據(jù)本發(fā)明一個具體實施例的多文件樣本的測試方法的流程圖。
[0029]如圖1和圖2所示,多文件樣本的測試方法包括:
[0030]S11,獲取多文件樣本,其中,多文件樣本中包括N個文件,其中,N為正整數(shù)。
[0031]在本發(fā)明的一個實施例中,多文件樣本可多為多文件壓縮包,或者多文件樣本還可以是以任何多文件存儲方式存儲的文件樣本,例如,通過網(wǎng)絡(luò)上傳的經(jīng)過壓縮包打包的多文件樣本,或者將多個文件存儲于U盤中的多文件樣本等。
[0032]S12,將N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù)。
[0033]在本發(fā)明的一個實施例中,最小獨立可執(zhí)行文件組合包括至少一個可執(zhí)行文件。具體地,為了實現(xiàn)某個功能,需要將多個文件進行組合,通過多文件組合才能實現(xiàn)該功能,缺少任何一個文件都會影響多個文件組合的功能。在該多文件組合中排除公共文件,將不包含公共文件的多文件組合確定為最小獨立可執(zhí)行文件組合。其中,如果一個可執(zhí)行文件能夠不依賴其他文件,完成自身所有的功能,那么該可執(zhí)行文件也可以作為一個最小獨立可執(zhí)行文件組合,也就是說,一個最小獨立可執(zhí)行文件組合也可以只包含一個可執(zhí)行文件。
[0034]在本發(fā)明的一個實施例中,S12包括以下步驟。
[0035]S121,獲取N個文件中與預(yù)設(shè)的最小獨立可執(zhí)行文件組合相同的第一文件組合或者被預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合。具體地,判斷N個文件中是否具有與預(yù)設(shè)的最小獨立可執(zhí)行文件組合完全相同的第一文件組合,并將完全相同的第一文件組合進行標(biāo)記。例如,多文件樣本中包含文件1.exe、2.exe、3.exe、l.dll,2.dll和3.txt,預(yù)設(shè)的最小獨立可執(zhí)行文件組合為1.exe+1.dll,則將多文件樣本中的文件組合1.exe+1.dll作為第一文件組合。
[0036]同時判斷N個文件中是否具有被預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合,并將被包含的第二文件組合標(biāo)記為殘缺的文件組合。例如,多文件樣本中包含文件1.dll,2.dll和3.txt,如果預(yù)設(shè)的最小獨立可執(zhí)行文件組合為1.exe+1.dll,則將多文件樣本中的文件組合1.dll作為第二文件組合,并標(biāo)記為殘缺的文件組合。
[0037]S122,根據(jù)第一文件組合和第二文件組合生成第一集合,其中,第一文件組合的數(shù)量為W1。具體地,將標(biāo)記后的第一文件組合和第二文件組合加入至第一集合。
[0038]S13,獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)關(guān)系信息獲取剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù)。
[0039]在本發(fā)明的一個實施例中,關(guān)系信息包括包含關(guān)系、釋放關(guān)系、依賴關(guān)系、共存關(guān)系、捆綁關(guān)系中的一種或多種。下面舉例說明上述關(guān)系信息:
[0040](I)、包含關(guān)系,是指壓縮文件或者解壓文件A中包含了另一個文件B,則稱之為A包含B, A和B之間的關(guān)系稱之為包含關(guān)系;
[0041 ] (2 )、釋放關(guān)系,是指可執(zhí)行文件A運行時,生成了新文件B,則稱之為A釋放B,A和B之間的關(guān)系稱之為釋放關(guān)系;
[0042](3)、依賴關(guān)系,是指可執(zhí)行文件A必須依賴文件B才能完成自身功能,如果文件B不存在,則無法完成應(yīng)有的自身功能,則稱之為A依賴B,A和B之間的關(guān)系稱之為依賴關(guān)系;
[0043](4)、共存關(guān)系,是指文件A和文件B都被可執(zhí)行文件C依賴,缺少文件A或者文件B,可執(zhí)行文件C都無法完成應(yīng)有的自身功能,則稱之為A和B必須共存,A和B之間的關(guān)系稱之為共存關(guān)系;
[0044](5)、捆綁關(guān)系,是指文件A和文件B都被可執(zhí)行文件C包含,或者同時都被可執(zhí)行文件C釋放,但文件A和文件B不同時被可執(zhí)行文件C依賴,則稱之為文件A和B被捆綁,A和B之間的關(guān)系稱之為擁綁關(guān)系。
[0045]在本發(fā)明的一個實施例中,將第一集合中最小可執(zhí)行文件組合和殘缺的文件組合包含的文件從多文件樣本的N個文件中去除,即將第一集合中的M個文件從多文件樣本的N個文件中去除。
[0046]在本發(fā)明的一個實施例中,S13包括以下步驟。
[0047]S131,判斷N-M個文件中是否包含可執(zhí)行文件。
[0048]S132,如果N-M個文件中包含可執(zhí)行文件,則運行可執(zhí)行文件,并記錄可執(zhí)行文件和N-M個文件中其他文件的關(guān)系信息。其中,如果可執(zhí)行文件運行失敗,或者N-M個文件中包含不屬于預(yù)設(shè)的最小獨立可執(zhí)行文件組合的文件,則對該可執(zhí)行文件和該文件僅進行存檔。
[0049]S133,獲取N-M個文件中的可執(zhí)行文件。
[0050]S134,根據(jù)可執(zhí)行文件對應(yīng)的關(guān)系信息判斷可執(zhí)行文件及與可執(zhí)行文件相關(guān)的文件之間是否構(gòu)成最小獨立可執(zhí)行文件組合。
[0051]S135,如果判斷構(gòu)成最小獨立可執(zhí)行文件組合,則加入第二集合。
[0052]S14,根據(jù)Wl個最小獨立可執(zhí)行文件組合和W2個最小獨立可執(zhí)行文件組合的類型確定多文件樣本是否為惡意樣本。
[0053]在本發(fā)明的一個實施例中,S14包括以下步驟:
[0054]S141,如果第一集合或第二集合中包含已知的惡意最小獨立可執(zhí)行文件組合,則判斷多文件樣本為惡意樣本。
[0055]在本發(fā)明的一個實施例中,惡意最小獨立可執(zhí)行文件組合可為之前已經(jīng)存儲在樣本庫中的惡意最小獨立可執(zhí)行文件組合,或者可為剛剛識別的惡意最小獨立可執(zhí)行文件組口 ο
[0056]在本發(fā)明的一個實施例中,S141還包括以下步驟:
[0057]S1411,將第一文件組合和第二文件組合分別與已知的惡意最小獨立可執(zhí)行文件組合進行匹配。
[0058]S1412,如果第一文件組合中任一個與已知的惡意最小獨立可執(zhí)行文件組合相同,則判斷第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。例如,多文件樣本中包含文件1.exe、2.exe、3.exe、l.dll、2.dll和3.txt,其中,多文件樣本中包含最小獨立可執(zhí)行文件組合1.exe+1.dll。如果已知的惡意最小獨立可執(zhí)行文件組合中存在1.exe+1.dll,即樣本庫中包含惡意最小獨立可執(zhí)行文件組合1.exe+1.dll,則確定第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合,也就是說,該多文件樣本為惡意樣本。
[0059]S1413,如果第二文件組合中任一個被已知的惡意最小獨立可執(zhí)行文件組合包含,且被包含的第二文件組合中的文件不為公共文件,則判斷第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。例如,多文件樣本中包含文件1.dll,2.dll和3.txt,如果已知的惡意最小獨立可執(zhí)行文件組合中存在1.exe+1.dll,即樣本庫中包含惡意最小獨立可執(zhí)行文件組合1.exe+1.dll。由于文件1.dll屬于已知的惡意最小獨立可執(zhí)行文件組合1.exe+1.dll,并且文件1.dll并不是系統(tǒng)文件也不是公共運行庫文件,則確定第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合,也就是說,該多文件樣本為惡意樣本。
[0060]在本發(fā)明的一個實施例中,W2個最小獨立可執(zhí)行文件組合包括Q個文件,其中,Q為大于等于O且小于等于N的整數(shù),在判斷多文件樣本為非惡意樣本之后,S14還包括以下步驟。
[0061]S142,將剩余的N-M-Q個文件分別與之前樣本鑒定記錄中的惡意樣本進行匹配。
[0062]S143,如果剩余的N-M-Q個文件中任一個和惡意樣本存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系,且存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系的惡意樣本超過一定閾值,則判斷多文件樣本為風(fēng)險樣本。
[0063]在本發(fā)明的一個實施例中,閾值為和文件存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系的已知的惡意最小獨立可執(zhí)行文件組合和全部已知的惡意最小獨立可執(zhí)行文件組合的比例值。
[0064]例如,多文件樣本中包含文件1.exe、2.exe和flag, txt,其中文件1.exe和2.exe均屬于非惡意最小獨立可執(zhí)行文件組合,但是文件flag, txt在之前的記錄中為惡意的最小獨立可執(zhí)行文件組合執(zhí)行時釋放的文件,因此我們可以說該文件和惡意樣本存在釋放關(guān)系。如果該文件被90%的惡意樣本捆綁、或者包含、或者釋放,則確定該文件為風(fēng)險文件,包含該文件的多文件樣本為風(fēng)險樣本。
[0065]根據(jù)本發(fā)明實施例的多文件樣本的測試方法,一方面可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。
[0066]為了實現(xiàn)上述實施例,本發(fā)明還提出一種多文件樣本的測試裝置。
[0067]—種多文件樣本的測試裝置,包括:第一獲取模塊,用于獲取多文件樣本,其中,多文件樣本中包括N個文件,其中,N為正整數(shù);匹配模塊,用于將N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù);第二獲取模塊,用于獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)關(guān)系信息獲取剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù);以及判斷模塊,用于根據(jù)Wl個最小獨立可執(zhí)行文件組合和W2個最小獨立可執(zhí)行文件組合的類型確定多文件樣本是否為惡意樣本。
[0068]圖3是根據(jù)本發(fā)明一個實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖。
[0069]如圖3所示,多文件樣本的測試裝置包括:第一獲取模塊110、匹配模塊120、第二獲取模塊130和判斷模塊140。
[0070]具體地,第一獲取模塊110用于獲取多文件樣本,其中,多文件樣本中包括N個文件,其中,N為正整數(shù)。
[0071]在本發(fā)明的一個實施例中,多文件樣本可多為多文件壓縮包,或者多文件樣本還可以是以任何多文件存儲方式存儲的文件樣本,例如,通過網(wǎng)絡(luò)上傳的經(jīng)過壓縮包打包的多文件樣本,或者將多個文件存儲于U盤中的多文件樣本等。
[0072]匹配模塊120用于將N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù)。在本發(fā)明的一個實施例中,最小獨立可執(zhí)行文件組合包括至少一個可執(zhí)行文件。更具體地,為了實現(xiàn)某個功能,需要將多個文件進行組合,通過多文件組合才能實現(xiàn)該功能,缺少任何一個文件都會影響多個文件組合的功能。在該多文件組合中排除公共文件,將不包含公共文件的多文件組合確定為最小獨立可執(zhí)行文件組合。其中,如果一個可執(zhí)行文件能夠不依賴其他文件,完成自身所有的功能,那么該可執(zhí)行文件也可以作為一個最小獨立可執(zhí)行文件組合,也就是說,一個最小獨立可執(zhí)行文件組合也可以只包含一個可執(zhí)行文件。
[0073]第二獲取模塊130用于獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)關(guān)系信息獲取剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù)。在本發(fā)明的一個實施例中,關(guān)系信息包括包含關(guān)系、釋放關(guān)系、依賴關(guān)系、共存關(guān)系、擁綁關(guān)系中的一種或多種。
[0074]在本發(fā)明的一個實施例中,第二獲取模塊130將第一集合中最小可執(zhí)行文件組合和殘缺的文件組合包含的文件從多文件樣本的N個文件中去除,即將第一集合中的M個文件從多文件樣本的N個文件中去除。
[0075]判斷模塊140用于根據(jù)Wl個最小獨立可執(zhí)行文件組合和W2個最小獨立可執(zhí)行文件組合的類型確定多文件樣本是否為惡意樣本。
[0076]根據(jù)本發(fā)明實施例的多文件樣本的測試裝置,一方面可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。
[0077]圖4是根據(jù)本發(fā)明一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖。
[0078]如圖4所示,多文件樣本的測試裝置包括:第一獲取模塊110、匹配模塊120、第二獲取模塊130和判斷模塊140,其中,匹配模塊120包括:獲取單元121和生成單元122。
[0079]具體地,獲取單元121用于獲取N個文件中與預(yù)設(shè)的最小獨立可執(zhí)行文件組合相同的第一文件組合或者被預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合。更具體地,獲取單元121判斷N個文件中是否具有與預(yù)設(shè)的最小獨立可執(zhí)行文件組合完全相同的第一文件組合,并將完全相同的第一文件組合進行標(biāo)記。例如,多文件樣本中包含文件1.exe、2.exe、3.exe、1.dll、2.dll和3.txt,預(yù)設(shè)的最小獨立可執(zhí)行文件組合為1.exe+1.dll,則獲取單元121將多文件樣本中的文件組合1.exe+1.dll作為第一文件組合。
[0080]同時獲取單元121判斷N個文件中是否具有被預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合,并將被包含的第二文件組合標(biāo)記為殘缺的文件組合。例如,多文件樣本中包含文件1.dll,2.dll和3.txt,如果預(yù)設(shè)的最小獨立可執(zhí)行文件組合為1.exe+1.dll,則獲取單元121將多文件樣本中的文件組合1.dll作為第二文件組合,并標(biāo)記為殘缺的文件組合。
[0081]生成單元122用于根據(jù)第一文件組合和第二文件組合生成第一集合,其中,第一文件組合的數(shù)量為Wl。具體地,生成單元122將標(biāo)記后的第一文件組合和第二文件組合加入至第一集合。
[0082]根據(jù)本發(fā)明實施例的多文件樣本的測試裝置,通過獲取N個文件中與預(yù)設(shè)的最小獨立可執(zhí)行文件組合相同的第一文件組合或者被預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合,可以根據(jù)第一文件組合和第二文件組合生成第一集合。
[0083]圖5是根據(jù)本發(fā)明另一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖。
[0084]如圖5所示,多文件樣本的測試裝置包括:第一獲取模塊110、匹配模塊120、第二獲取模塊130和判斷模塊140,其中,匹配模塊120包括:獲取單元121和生成單元122,第二獲取模塊130包括:第一判斷單元131、運行單元132、記錄單元133、獲取單元134、第二判斷單元135和添加單元136。
[0085]具體地,第一判斷單元131用于判斷N-M個文件中是否包含可執(zhí)行文件。
[0086]運行單元132用于在N-M個文件中包含可執(zhí)行文件時,運行可執(zhí)行文件。
[0087]記錄單元133用于記錄可執(zhí)行文件和N-M個文件中其他文件的關(guān)系信息。其中,如果運行單元132運行可執(zhí)行文件失敗,或者N-M個文件中包含不屬于預(yù)設(shè)的最小獨立可執(zhí)行文件組合的文件,則記錄單元133對該可執(zhí)行文件和該文件進行存檔。
[0088]獲取單元134用于獲取N-M個文件中的可執(zhí)行文件。
[0089]第二判斷單元135用于根據(jù)可執(zhí)行文件對應(yīng)的關(guān)系信息判斷可執(zhí)行文件及與可執(zhí)行文件相關(guān)的文件之間是否構(gòu)成最小獨立可執(zhí)行文件組合。
[0090]添加單元136用于在判斷構(gòu)成最小獨立可執(zhí)行文件組合時,則加入第二集合。
[0091]根據(jù)本發(fā)明實施例的多文件樣本的測試裝置,通過獲取剩余的N-M個文件之間的關(guān)系信息,可以根據(jù)所述關(guān)系信息獲取所述剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合
[0092]圖6是根據(jù)本發(fā)明又一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖。
[0093]如圖6所示,多文件樣本的測試裝置包括:第一獲取模塊110、匹配模塊120、第二獲取模塊130和判斷模塊140,其中,匹配模塊120包括:獲取單元121和生成單元122,第二獲取模塊130包括:第一判斷單元131、運行單元132、記錄單元133、獲取單元134、第二判斷單元135和添加單元136,判斷模塊140包括:第一判斷單元141、匹配單元142和第二判斷單元143。
[0094]具體地,第一判斷單元141用于在第一集合或第二集合中包含已知的惡意最小獨立可執(zhí)行文件組合時,判斷多文件樣本為惡意樣本。在本發(fā)明的一個實施例中,惡意最小獨立可執(zhí)行文件組合可為之前已經(jīng)存儲在樣本庫中的惡意最小獨立可執(zhí)行文件組合,或者可為剛剛識別的惡意最小獨立可執(zhí)行文件組合。
[0095]在本發(fā)明的一個實施例中,W2個最小獨立可執(zhí)行文件組合包括Q個文件,其中,Q為大于等于O且小于等于N的整數(shù),在判斷模塊140判斷多文件樣本為非惡意樣本之后,匹配單元142用于將剩余的N-M-Q個文件分別與之前樣本鑒定記錄中的惡意樣本進行匹配;以及
[0096]第二判斷單元143用于在剩余的N-M-Q個文件中任一個和惡意樣本存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系,且存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系的惡意樣本超過一定閾值時,判斷多文件樣本為風(fēng)險樣本。
[0097]在本發(fā)明的一個實施例中,閾值為和文件存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系的已知的惡意最小獨立可執(zhí)行文件組合和全部已知的惡意最小獨立可執(zhí)行文件組合的比例值。
[0098]例如,多文件樣本中包含文件1.exe、2.exe和flag, txt,其中文件1.exe和2.exe均屬于非惡意最小獨立可執(zhí)行文件組合,但是文件flag, txt在之前的記錄中為惡意的最小獨立可執(zhí)行文件組合執(zhí)行時釋放的文件,因此我們可以說該文件和惡意樣本存在釋放關(guān)系。如果該文件被90%的惡意樣本捆綁、或者包含、或者釋放,則確定該文件為風(fēng)險文件,包含該文件的多文件樣本為風(fēng)險樣本。
[0099]根據(jù)本發(fā)明實施例的多文件樣本的測試裝置,可以判斷多文件樣本是否為惡意樣本或者風(fēng)險樣本。
[0100]圖7是根據(jù)本發(fā)明再一個具體實施例的多文件樣本的測試裝置的結(jié)構(gòu)示意圖。
[0101]如圖7所示,多文件樣本的測試裝置包括:第一獲取模塊110、匹配模塊120、第二獲取模塊130和判斷模塊140,其中,匹配模塊120包括:獲取單元121和生成單元122,第二獲取模塊130包括:第一判斷單元131、運行單元132、記錄單元133、獲取單元134、第二判斷單元135和添加單元136,判斷模塊140包括:第一判斷單元141、匹配單元142和第二判斷單元143,其中,第一判斷單元141包括:匹配子單元1411、第一判斷子單元1412和第二判斷子單元1413。
[0102]具體地,匹配子單元1411用于將第一文件組合和第二文件組合分別與已知的惡意最小獨立可執(zhí)行文件組合進行匹配。
[0103]第一判斷子單元1412用于在第一文件組合中任一個與已知的惡意最小獨立可執(zhí)行文件組合相同時,判斷第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。例如,多文件樣本中包含文件1.exe、2.exe、3.exe、l.dll、2.dll和3.txt,其中,多文件樣本中包含最小獨立可執(zhí)行文件組合1.exe+1.dll。如果已知的惡意最小獨立可執(zhí)行文件組合中存在1.exe+1.dll,即樣本庫中包含惡意最小獨立可執(zhí)行文件組合1.exe+1.dll,則第一判斷子單元1412確定第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合,也就是說,該多文件樣本為惡意樣本。
[0104]第二判斷子單元1413用于在第二文件組合中任一個被已知的惡意最小獨立可執(zhí)行文件組合包含,且被包含的第二文件組合中的文件不為公共文件時,判斷第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。例如,多文件樣本中包含文件1.dll、2.dll和3.txt,如果已知的惡意最小獨立可執(zhí)行文件組合中存在1.exe+1.dll,即樣本庫中包含惡意最小獨立可執(zhí)行文件組合1.exe+1.dll。由于文件1.dll屬于已知的惡意最小獨立可執(zhí)行文件組合1.exe+1.dll,并且文件1.dll并不是系統(tǒng)文件也不是公共運行庫文件,則第二判斷子單元1413確定第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合,也就是說,該多文件樣本為惡意樣本。
[0105]根據(jù)本發(fā)明實施例的多文件樣本的測試裝置,可以判斷第一集合中是否包含已知的惡意最小獨立可執(zhí)行文件組合。
[0106]為了實現(xiàn)上述實施例,本發(fā)明還提出一種客戶端。
[0107]在本發(fā)明的一個實施例中,客戶端可以是個人計算機PC、筆記本、智能手機、平板電腦、個人數(shù)字助理等硬件設(shè)備??蛻舳税?屏幕,處理器和電路板;屏幕安置在外殼上,電路板安置在外殼圍成的空間內(nèi)部,處理器設(shè)置在電路板上;處理器用于處理數(shù)據(jù)。
[0108]具體地,處理器用于執(zhí)行以下步驟:
[0109]S11’,獲取多文件樣本,其中,多文件樣本中包括N個文件,其中,N為正整數(shù)。
[0110]在本發(fā)明的一個實施例中,多文件樣本可多為多文件壓縮包,或者多文件樣本還可以是以任何多文件存儲方式存儲的文件樣本,例如,通過網(wǎng)絡(luò)上傳的經(jīng)過壓縮包打包的多文件樣本,或者將多個文件存儲于U盤中的多文件樣本等。
[0111]S12’,將N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù)。
[0112]在本發(fā)明的一個實施例中,最小獨立可執(zhí)行文件組合包括至少一個可執(zhí)行文件。具體地,為了實現(xiàn)某個功能,需要將多個文件進行組合,通過多文件組合才能實現(xiàn)該功能,缺少任何一個文件都會影響多個文件組合的功能。在該多文件組合中排除公共文件,將不包含公共文件的多文件組合確定為最小獨立可執(zhí)行文件組合。其中,如果一個可執(zhí)行文件能夠不依賴其他文件,完成自身所有的功能,那么該可執(zhí)行文件也可以作為一個最小獨立可執(zhí)行文件組合,也就是說,一個最小獨立可執(zhí)行文件組合也可以只包含一個可執(zhí)行文件。
[0113]在本發(fā)明的一個實施例中,S12’包括以下步驟。
[0114]S121’,獲取N個文件中與預(yù)設(shè)的最小獨立可執(zhí)行文件組合相同的第一文件組合或者被預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合。具體地,判斷N個文件中是否具有與預(yù)設(shè)的最小獨立可執(zhí)行文件組合完全相同的第一文件組合,并將完全相同的第一文件組合進行標(biāo)記。例如,多文件樣本中包含文件1.exe,2.exe,3.exe、1.dll,2.dll和3.txt,預(yù)設(shè)的最小獨立可執(zhí)行文件組合為1.exe+1.dll,則將多文件樣本中的文件組合1.exe+1.dll作為第一文件組合。
[0115]同時判斷N個文件中是否具有被預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合,并將被包含的第二文件組合標(biāo)記為殘缺的文件組合。例如,多文件樣本中包含文件1.dll,2.dll和3.txt,如果預(yù)設(shè)的最小獨立可執(zhí)行文件組合為1.exe+1.dll,則將多文件樣本中的文件組合1.dll作為第二文件組合,并標(biāo)記為殘缺的文件組合。
[0116]S122’,根據(jù)第一文件組合和第二文件組合生成第一集合,其中,第一文件組合的數(shù)量為W1。具體地,將標(biāo)記后的第一文件組合和第二文件組合加入至第一集合。
[0117]S13’,獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)關(guān)系信息獲取剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù)。
[0118]在本發(fā)明的一個實施例中,關(guān)系信息包括包含關(guān)系、釋放關(guān)系、依賴關(guān)系、共存關(guān)系、捆綁關(guān)系中的一種或多種。下面舉例說明上述關(guān)系信息:
[0119](I)、包含關(guān)系,是指壓縮文件或者解壓文件A中包含了另一個文件B,則稱之為A包含B, A和B之間的關(guān)系稱之為包含關(guān)系;
[0120](2 )、釋放關(guān)系,是指可執(zhí)行文件A運行時,生成了新文件B,則稱之為A釋放B,A和B之間的關(guān)系稱之為釋放關(guān)系;
[0121](3)、依賴關(guān)系,是指可執(zhí)行文件A必須依賴文件B才能完成自身功能,如果文件B不存在,則無法完成應(yīng)有的自身功能,則稱之為A依賴B,A和B之間的關(guān)系稱之為依賴關(guān)系;
[0122](4)、共存關(guān)系,是指文件A和文件B都被可執(zhí)行文件C依賴,缺少文件A或者文件B,可執(zhí)行文件C都無法完成應(yīng)有的自身功能,則稱之為A和B必須共存,A和B之間的關(guān)系稱之為共存關(guān)系;
[0123](5)、捆綁關(guān)系,是指文件A和文件B都被可執(zhí)行文件C包含,或者同時都被可執(zhí)行文件C釋放,但文件A和文件B不同時被可執(zhí)行文件C依賴,則稱之為文件A和B被捆綁,A和B之間的關(guān)系稱之為擁綁關(guān)系。
[0124]在本發(fā)明的一個實施例中,將第一集合中最小可執(zhí)行文件組合和殘缺的文件組合包含的文件從多文件樣本的N個文件中去除,即將第一集合中的M個文件從多文件樣本的N個文件中去除。
[0125]在本發(fā)明的一個實施例中,S13’包括以下步驟.
[0126]S131’,判斷N-M個文件中是否包含可執(zhí)行文件。
[0127]S132’,如果N-M個文件中包含可執(zhí)行文件,則運行可執(zhí)行文件,并記錄可執(zhí)行文件和N-M個文件中其他文件的關(guān)系信息。其中,如果可執(zhí)行文件運行失敗,或者N-M個文件中包含不屬于預(yù)設(shè)的最小獨立可執(zhí)行文件組合的文件,則對該可執(zhí)行文件和該文件進行存檔。
[0128]S133’,獲取N-M個文件中的可執(zhí)行文件。
[0129]S134’,根據(jù)可執(zhí)行文件對應(yīng)的關(guān)系信息判斷可執(zhí)行文件及與可執(zhí)行文件相關(guān)的文件之間是否構(gòu)成最小獨立可執(zhí)行文件組合。
[0130]S135’,如果判斷構(gòu)成最小獨立可執(zhí)行文件組合,則加入第二集合。
[0131]S14’,根據(jù)Wl個最小獨立可執(zhí)行文件組合和W2個最小獨立可執(zhí)行文件組合的類型確定多文件樣本是否為惡意樣本。
[0132]在本發(fā)明的一個實施例中,S14’包括以下步驟:
[0133]S141’,如果第一集合或第二集合中包含已知的惡意最小獨立可執(zhí)行文件組合,則判斷多文件樣本為惡意樣本。
[0134]在本發(fā)明的一個實施例中,惡意最小獨立可執(zhí)行文件組合可為之前已經(jīng)存儲在樣本庫中的惡意最小獨立可執(zhí)行文件組合,或者可為剛剛識別的惡意最小獨立可執(zhí)行文件組口 ο
[0135]在本發(fā)明的一個實施例中,S141’還包括以下步驟:
[0136]S1411’,將第一文件組合和第二文件組合分別與已知的惡意最小獨立可執(zhí)行文件組合進行匹配。
[0137]S1412’,如果第一文件組合中任一個與已知的惡意最小獨立可執(zhí)行文件組合相同,則判斷第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。例如,多文件樣本中包含文件1.exe、2.exe、3.exe、l.dll、2.dll和3.txt,其中,多文件樣本中包含最小獨立可執(zhí)行文件組合1.exe+1.dll。如果已知的惡意最小獨立可執(zhí)行文件組合中存在1.exe+1.dll,即樣本庫中包含惡意最小獨立可執(zhí)行文件組合1.exe+1.dll,則確定第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合,也就是說,該多文件樣本為惡意樣本。
[0138]S1413’,如果第二文件組合中任一個被已知的惡意最小獨立可執(zhí)行文件組合包含,且被包含的第二文件組合中的文件不為公共文件,則判斷第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。例如,多文件樣本中包含文件1.dll,2.dll和3.txt,如果已知的惡意最小獨立可執(zhí)行文件組合中存在1.exe+1.dll,即樣本庫中包含惡意最小獨立可執(zhí)行文件組合1.exe+1.dll。由于文件1.dll屬于已知的惡意最小獨立可執(zhí)行文件組合1.exe+1.dll,并且文件1.dll并不是系統(tǒng)文件也不是公共運行庫文件,則確定第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合,也就是說,該多文件樣本為惡意樣本。
[0139]在本發(fā)明的一個實施例中,W2個最小獨立可執(zhí)行文件組合包括Q個文件,其中,Q為大于等于O且小于等于N的整數(shù),在判斷多文件樣本為非惡意樣本之后,處理器還用于:
[0140]S142’,將剩余的N-M-Q個文件分別與之前樣本鑒定記錄中的惡意樣本進行匹配。
[0141]S143’,如果剩余的N-M-Q個文件中任一個和惡意樣本存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系,且存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系的惡意樣本超過一定閾值,則判斷多文件樣本為風(fēng)險樣本。
[0142]在本發(fā)明的一個實施例中,閾值為和文件存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系的已知的惡意最小獨立可執(zhí)行文件組合和全部已知的惡意最小獨立可執(zhí)行文件組合的比例值。
[0143]例如,多文件樣本中包含文件1.exe、2.exe和flag, txt,其中文件1.exe和2.exe均屬于非惡意最小獨立可執(zhí)行文件組合,但是文件flag, txt在之前的記錄中為惡意的最小獨立可執(zhí)行文件組合執(zhí)行時釋放的文件,因此我們可以說該文件和惡意樣本存在釋放關(guān)系。如果該文件被90%的惡意樣本捆綁、或者包含、或者釋放,則確定該文件為風(fēng)險文件,包含該文件的多文件樣本為風(fēng)險樣本。
[0144]根據(jù)本發(fā)明實施例的客戶端,一方面可以減少樣本庫中存放重復(fù)的惡意多文件樣本,節(jié)約了樣本庫的存儲空間,另一方面可以避免對重復(fù)的多文件樣本進行分析,大大減少了分析多文件樣本中包含惡意文件的分析時間,提高了分析效率。
[0145]應(yīng)當(dāng)理解,在本發(fā)明的實施例中,移動終端可以是手機、平板電腦、個人數(shù)字助理、電子書等具有各種操作系統(tǒng)的硬件設(shè)備。
[0146]應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實現(xiàn)。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實現(xiàn)。例如,如果用硬件來實現(xiàn),和在另一實施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項或他們的組合來實現(xiàn):具有用于對數(shù)據(jù)信號實現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場可編程門陣列(FPGA)等。
[0147]在本說明書的描述中,參考術(shù)語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術(shù)語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結(jié)合。
[0148]盡管已經(jīng)示出和描述了本發(fā)明的實施例,本領(lǐng)域的普通技術(shù)人員可以理解:在不脫離本發(fā)明的原理和宗旨的情況下可以對這些實施例進行多種變化、修改、替換和變型,本發(fā)明的范圍由權(quán)利要求及其等同物限定。
【權(quán)利要求】
1.一種多文件樣本的測試方法,其特征在于,包括以下步驟: 獲取多文件樣本,其中,所述多文件樣本中包括N個文件,其中,N為正整數(shù); 將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,所述第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù); 獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)所述關(guān)系信息獲取所述剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù);以及 根據(jù)所述Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本。
2.如權(quán)利要求1所述的方法,其特征在于,將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有所述Wl個最小獨立可執(zhí)行文件組合的第一集合進一步包括: 獲取所述N個文件中與所述預(yù)設(shè)的最小獨立可執(zhí)行文件組合相同的第一文件組合或者被所述預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合;以及 根據(jù)所述第一文件組合和第二文件組合生成所述第一集合,其中,所述第一文件組合的數(shù)量為Wl。
3.如權(quán)利要求1所述的方法,其特征在于,所述獲取剩余的N-M個文件之間的關(guān)系信息進一步包括: 判斷所述N-M個文件中是否包含可執(zhí)行文件;以及 如果所述N-M個文件中包含可執(zhí)行文件,則運行所述可執(zhí)行文件,并記錄所述可執(zhí)行文件和所述N-M個文件中其他文件的所述關(guān)系信息。
4.如權(quán)利要求3所述的方法,其特征在于,所述根據(jù)關(guān)系信息獲取所述剩余的N-M個文件中的W2個最小獨立可執(zhí)行文件組合進一步包括: 獲取所述N-M個文件中的可執(zhí)行文件; 根據(jù)所述可執(zhí)行文件對應(yīng)的關(guān)系信息判斷所述可執(zhí)行文件及與所述可執(zhí)行文件相關(guān)的文件之間是否構(gòu)成最小獨立可執(zhí)行文件組合;以及 如果判斷構(gòu)成所述最小獨立可執(zhí)行文件組合,則加入所述第二集合。
5.如權(quán)利要求3所述的方法,其特征在于,所述關(guān)系信息包括包含關(guān)系、釋放關(guān)系、依賴關(guān)系、共存關(guān)系、擁綁關(guān)系中的一種或多種。
6.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本進一步包括: 如果所述第一集合或所述第二集合中包含已知的惡意最小獨立可執(zhí)行文件組合,則判斷所述多文件樣本為惡意樣本。
7.如權(quán)利要求6所述的方法,其特征在于,根據(jù)以下步驟判斷所述第一集合中是否包含所述已知的惡意最小獨立可執(zhí)行文件組合: 將所述第一文件組合和所述第二文件組合分別與所述已知的惡意最小獨立可執(zhí)行文件組合進行匹配; 如果所述第一文件組合中任一個與已知的惡意最小獨立可執(zhí)行文件組合相同,則判斷所述第一集合中包含所述已知的惡意最小獨立可執(zhí)行文件組合;以及 如果所述第二文件組合中任一個被已知的惡意最小獨立可執(zhí)行文件組合包含,且被包含的第二文件組合中的文件不為公共文件,則判斷所述第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。
8.如權(quán)利要求6所述的方法,其特征在于,所述W2個最小獨立可執(zhí)行文件組合包括Q個文件,其中,Q為大于等于O且小于等于N的整數(shù),在判斷所述多文件樣本為非惡意樣本之后,還包括: 將剩余的N-M-Q個文件分別與之前樣本鑒定記錄中的惡意樣本進行匹配;以及如果所述剩余的N-M-Q個文件中任一個和所述惡意樣本存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系,且所述存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系的所述惡意樣本超過一定閾值,則判斷所述多文件樣本為風(fēng)險樣本。
9.如權(quán)利要求8所述的方法,其特征在于,所述閾值為和所述文件存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系的所述已知的惡意最小獨立可執(zhí)行文件組合和全部所述已知的惡意最小獨立可執(zhí)行文件組合的比例值。
10.一種多文件樣本的測試裝置,其特征在于,包括: 第一獲取模塊,用于獲取多文件樣本,其中,所述多文件樣本中包括N個文件,其中,N為正整數(shù); 匹配模塊,用于將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,所述第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù); 第二獲取模塊,用于獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)所述關(guān)系信息獲取所述剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù);以及 判斷模塊,用于根據(jù)所述Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本。
11.如權(quán)利要求10所述的裝置,其特征在于,所述匹配模塊包括: 獲取單元,用于獲取所述N個文件中與所述預(yù)設(shè)的最小獨立可執(zhí)行文件組合相同的第一文件組合或者被所述預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合;以及 生成單元,用于根據(jù)所述第一文件組合和第二文件組合生成所述第一集合,其中,所述第一文件組合的數(shù)量為Wl。
12.如權(quán)利要求10所述的裝置,其特征在于,所述第二獲取模塊包括: 第一判斷單元,用于判斷所述N-M個文件中是否包含可執(zhí)行文件; 運行單元,用于在所述N-M個文件中包含可執(zhí)行文件時,運行所述可執(zhí)行文件;以及 記錄單元,用于記錄所述可執(zhí)行文件和所述N-M個文件中其他文件的所述關(guān)系信息。
13.如權(quán)利要求12所述的裝置,其特征在于,所述第二獲取模塊還包括: 獲取單元,用于獲取所述N-M個文件中的可執(zhí)行文件; 第二判斷單元,用于根據(jù)所述可執(zhí)行文件對應(yīng)的關(guān)系信息判斷所述可執(zhí)行文件及與所述可執(zhí)行文件相關(guān)的文件之間是否構(gòu)成最小獨立可執(zhí)行文件組合;以及 添加單元,用于在判斷構(gòu)成所述最小獨立可執(zhí)行文件組合時,則加入所述第二集合。
14.如權(quán)利要求12所述的裝置,其特征在于,所述關(guān)系信息包括包含關(guān)系、釋放關(guān)系、依賴關(guān)系、共存關(guān)系、擁綁關(guān)系中的一種或多種。
15.如權(quán)利要求10所述的裝置,其特征在于,所述判斷模塊包括: 第一判斷單元,用于在所述第一集合或所述第二集合中包含已知的惡意最小獨立可執(zhí)行文件組合時,判斷所述多文件樣本為惡意樣本。
16.如權(quán)利要求15所述的裝置,其特征在于,所述判斷單元包括: 匹配子單元,用于將所述第一文件組合和所述第二文件組合分別與所述已知的惡意最小獨立可執(zhí)行文件組合進行匹配; 第一判斷子單元,用于在所述第一文件組合中任一個與已知的惡意最小獨立可執(zhí)行文件組合相同時,判斷所述第一集合中包含所述已知的惡意最小獨立可執(zhí)行文件組合;以及 第二判斷子單元,用于在所述第二文件組合中任一個被已知的惡意最小獨立可執(zhí)行文件組合包含,且被包含的第二文件組合中的文件不為公共文件時,判斷所述第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。
17.如權(quán)利要求15所述的裝置,其特征在于,所述W2個最小獨立可執(zhí)行文件組合包括Q個文件,其中,Q為大于等于O且小于等于N的整數(shù),在所述判斷模塊判斷所述多文件樣本為非惡意樣本之后,所述判斷模塊還包括: 匹配單元,用于將剩余的N-M-Q個文件分別與之前樣本鑒定記錄中的惡意樣本進行匹配;以及 第二判斷單元,用于在所述剩余的N-M-Q個文件中任一個和所述惡意樣本存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系,且所述存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系的所述惡意樣本超過一定閾值時,判斷所述多文件樣本為風(fēng)險樣本。
18.如權(quán)利要求17所述的裝置,其特征在于,所述閾值為和所述文件存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系的所述已知的惡意最小獨立可執(zhí)行文件組合和全部所述已知的惡意最小獨立可執(zhí)行文件組合的比例值。
19.一種客戶端,其特征在于,包括:屏幕,處理器和電路板; 所述屏幕安置在所述外殼上,所述電路板安置在所述外殼圍成的空間內(nèi)部,所述處理器設(shè)置在所述電路板上; 所述處理器用于處理數(shù)據(jù),并具體用于: 獲取多文件樣本,其中,所述多文件樣本中包括N個文件,其中,N為正整數(shù); 將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有Wl個最小獨立可執(zhí)行文件組合的第一集合,其中,所述第一集合包括M個文件,其中,M為大于等于O且小于等于N的整數(shù),Wl為大于等于O的整數(shù); 獲取剩余的N-M個文件之間的關(guān)系信息,并根據(jù)所述關(guān)系信息獲取所述剩余的N-M個文件中的具有W2個最小獨立可執(zhí)行文件組合的第二集合,W2為大于等于O的整數(shù);以及 根據(jù)所述Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本。
20.如權(quán)利要求19所述的客戶端,其特征在于,將所述N個文件與預(yù)設(shè)的最小獨立可執(zhí)行文件組合進行匹配以生成具有所述Wi個最小獨立可執(zhí)行文件組合的第一集合進一步包括: 獲取所述N個文件中與所述預(yù)設(shè)的最小獨立可執(zhí)行文件組合相同的第一文件組合或者被所述預(yù)設(shè)的最小獨立可執(zhí)行文件組合包含的第二文件組合;以及 根據(jù)所述第一文件組合和第二文件組合生成所述第一集合,其中,所述第一文件組合的數(shù)量為Wl。
21.如權(quán)利要求19所述的客戶端,其特征在于,所述獲取剩余的N-M個文件之間的關(guān)系信息進一步包括: 判斷所述N-M個文件中是否包含可執(zhí)行文件;以及 如果所述N-M個文件中包含可執(zhí)行文件,則運行所述可執(zhí)行文件,并記錄所述可執(zhí)行文件和所述N-M個文件中其他文件的所述關(guān)系信息。
22.如權(quán)利要求21所述的客戶端,其特征在于,所述根據(jù)關(guān)系信息獲取所述剩余的N-M個文件中的W2個最小獨立可執(zhí)行文件組合進一步包括: 獲取所述N-M個文件中的可執(zhí)行文件; 根據(jù)所述可執(zhí)行文件對應(yīng)的關(guān)系信息判斷所述可執(zhí)行文件及與所述可執(zhí)行文件相關(guān)的文件之間是否構(gòu)成最小獨立可執(zhí)行文件組合;以及 如果判斷構(gòu)成所述最小獨立可執(zhí)行文件組合,則加入所述第二集合。
23.如權(quán)利要求21所述的客戶端,其特征在于,所述關(guān)系信息包括包含關(guān)系、釋放關(guān)系、依賴關(guān)系、共存關(guān)系、捆綁關(guān)系中的一種或多種。
24.如權(quán)利要求19所述的客戶端,其特征在于,所述根據(jù)Wl個最小獨立可執(zhí)行文件組合和所述W2個最小獨立可執(zhí)行文件組合的類型確定所述多文件樣本是否為惡意樣本進一步包括: 如果所述第一集合或所述第二集合中包含已知的惡意最小獨立可執(zhí)行文件組合,則判斷所述多文件樣本為惡意樣本。
25.如權(quán)利要求24所述的客戶端,其特征在于,所述處理器根據(jù)以下步驟判斷所述第一集合中是否包含所述已知的惡意最小獨立可執(zhí)行文件組合: 將所述第一文件組合和所述第二文件組合分別與所述已知的惡意最小獨立可執(zhí)行文件組合進行匹配; 如果所述第一文件組合中任一個與已知的惡意最小獨立可執(zhí)行文件組合相同,則判斷所述第一集合中包含所述已知的惡意最小獨立可執(zhí)行文件組合; 如果所述第二文件組合中任一個被已知的惡意最小獨立可執(zhí)行文件組合包含,且被包含的第二文件組合中的文件不為公共文件,則判斷所述第一集合中包含已知的惡意最小獨立可執(zhí)行文件組合。
26.如權(quán)利要求24所述的客戶端,其特征在于,所述W2個最小獨立可執(zhí)行文件組合包括Q個文件,其中,Q為大于等于O且小于等于N的整數(shù),所述處理器在判斷所述多文件樣本為非惡意樣本之后,所述處理器還用于: 將剩余的N-M-Q個文件分別與之前樣本鑒定記錄中的惡意樣本進行匹配;以及 如果所述剩余的N-M-Q個文件中任一個和所述惡意樣本存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系,且所述存在包含關(guān)系/或擁綁關(guān)系/或釋放關(guān)系的所述惡意樣本超過一定閾值,則判斷所述多文件樣本為風(fēng)險樣本。
27.如權(quán)利要求26所述的客戶端,其特征在于,所述閾值為和所述文件存在包含關(guān)系/或捆綁關(guān)系/或釋放關(guān)系的所述已知的惡意最小獨立可執(zhí)行文件組合和全部所述已知的 惡意最小獨立可執(zhí)行文件組合的比例值。
【文檔編號】G06F21/56GK104424437SQ201310381730
【公開日】2015年3月18日 申請日期:2013年8月28日 優(yōu)先權(quán)日:2013年8月28日
【發(fā)明者】舒鑫, 張楠 申請人:貝殼網(wǎng)際(北京)安全技術(shù)有限公司, 北京金山網(wǎng)絡(luò)科技有限公司, 北京金山安全軟件有限公司, 珠海市君天電子科技有限公司, 可牛網(wǎng)絡(luò)技術(shù)(北京)有限公司