專利名稱:檢測入侵代碼的設(shè)備及其方法
技術(shù)領(lǐng)域:
根據(jù)本發(fā)明的方法和設(shè)備涉及入侵代碼;險(xiǎn)測,更具體的說,涉及為每個(gè) 計(jì)算機(jī)建立各自的特征,并使用不同的免疫數(shù)據(jù)庫檢測數(shù)據(jù)是否對應(yīng)于入侵 代碼。
背景技術(shù):
已經(jīng)開發(fā)了使用計(jì)算機(jī)的有線/無線通信,諸如病毒、蠕蟲、木馬、垃圾 郵件、黑客工具等的惡意代碼已經(jīng)被廣泛散發(fā),因此需要用于防止和檢測這 種惡意代碼的散播的技術(shù)。
檢測惡意代碼的現(xiàn)有技術(shù)將與惡意代碼相應(yīng)的簽名存儲為數(shù)據(jù)庫,并通 過檢測存儲在數(shù)據(jù)庫中的簽名來檢測被包括在數(shù)據(jù)中的惡意代碼。
然而,因?yàn)楫?dāng)新類型或者變種的惡意代碼被散布到多個(gè)計(jì)算機(jī)時(shí),檢測 惡意代碼的現(xiàn)有技術(shù)不能檢測出存在的全部惡意代碼,所以惡意代碼或者被 計(jì)算機(jī)統(tǒng)一檢測出來,或者統(tǒng)一使計(jì)算機(jī)感染。
具體來說,當(dāng)計(jì)算機(jī)被散布的惡意代碼感染并且感染計(jì)算機(jī)的惡意代碼 被散布到第二計(jì)算機(jī)時(shí),第二計(jì)算機(jī)也被感染。因此,與惡意代碼接觸的全 部計(jì)算機(jī)被相同地感染。另一方面,如果在特定計(jì)算機(jī)中檢測出了該惡意代 碼,則在所有計(jì)算機(jī)中可檢測出該惡意代碼。
如上所述,現(xiàn)有的檢測惡意代碼技術(shù)具有這樣的問題,即,因?yàn)闄z測惡 意代碼的數(shù)據(jù)庫被相同地配置在全部計(jì)算機(jī)中,所以在接觸可檢的測惡意代 碼時(shí),在全部計(jì)算機(jī)中相同地檢測出惡意代碼,當(dāng)接觸不可檢測的惡意代碼 時(shí),全部計(jì)算機(jī)相同地被感染。
因此,需要一種可防止惡意代碼的統(tǒng)一4企測和由惡意代碼引起的統(tǒng)一感 染,并具有對部分系統(tǒng)中的惡意代碼的耐受性(tolerant)的設(shè)備。
發(fā)明內(nèi)容
本發(fā)明提供一種檢測入侵代碼的設(shè)備和方法,所述設(shè)備和方法可異化并 產(chǎn)生能夠確定數(shù)據(jù)是否對應(yīng)于入侵代碼的免疫數(shù)據(jù)庫。
本發(fā)明還提供了 一種檢測入侵代碼的設(shè)備和方法,所述設(shè)備和方法可使 用不同的免疫數(shù)據(jù)庫防止由于新類型或者變種的惡意代碼引起的統(tǒng)一損害。
本發(fā)明還提供了 一種檢測入侵代碼的設(shè)備和方法,所述設(shè)備和方法可從 具有對新類型或者變種的惡意代碼的耐受性的系統(tǒng)獲得針對新類型或者變種 的惡意代碼的診斷方法。
根據(jù)本發(fā)明的一方面,提供了一種檢測入侵代碼的設(shè)備,所述設(shè)備包括 設(shè)置值輸入單元,輸入對至少一個(gè)計(jì)算機(jī)的每一組都不同的設(shè)置值;免疫數(shù) 據(jù)庫產(chǎn)生單元,基于設(shè)置值產(chǎn)生免疫數(shù)據(jù)庫;和入侵代碼確定單元,基于產(chǎn) 生的免疫數(shù)據(jù)庫確定數(shù)據(jù)是否對應(yīng)于入侵代碼。
所述輸入到設(shè)置值輸入單元的設(shè)置值可包括組特征關(guān)鍵詞,劃分組; 駐留代碼列表,對應(yīng)于安全代碼;和隨機(jī)池產(chǎn)生因子,產(chǎn)生免疫凄史據(jù)庫的池。
所述免疫數(shù)據(jù)庫產(chǎn)生單元可包括特征提取單元,使用組特征關(guān)鍵詞提 取駐留代碼的特征;池特征產(chǎn)生單元,基于組特征關(guān)鍵詞和隨機(jī)池產(chǎn)生因子 產(chǎn)生隨機(jī)池特征;近似度值計(jì)算單元,計(jì)算4是取的駐留代碼的特征和產(chǎn)生的 隨機(jī)池特征的近似度值;和免疫數(shù)據(jù)庫產(chǎn)生管理單元,將從隨機(jī)池特征中計(jì) 算的近似度值小于或者等于預(yù)定閾值的特征產(chǎn)生為免疫數(shù)據(jù)庫。
所述池特征產(chǎn)生單元基于組特征關(guān)鍵詞的長度和包括在隨機(jī)池產(chǎn)生因子 中的隨機(jī)池大小來產(chǎn)生隨機(jī)池特征。
所述入侵代碼確定單元可包括數(shù)據(jù)特征提取單元,使用組特征關(guān)鍵詞 提取數(shù)據(jù)的特征;數(shù)據(jù)近似度值計(jì)算單元,計(jì)算提取的數(shù)據(jù)的特征和免疫數(shù) 據(jù)庫的特征的近似度值;入侵代碼確定管理單元,當(dāng)計(jì)算的近似度值大于預(yù)
定閾值時(shí),將所述數(shù)據(jù)確定為入侵代碼。
所述入侵代碼確定單元還可包括數(shù)據(jù)收集單元,收集數(shù)據(jù)以確定入侵 代碼;和數(shù)據(jù)特征提取單元,提取每一收集的數(shù)據(jù)的特征。
所述入侵代碼確定單元基于產(chǎn)生的免疫數(shù)據(jù)庫確定任何內(nèi)部存儲的執(zhí)行 文件數(shù)據(jù)是否對應(yīng)于入侵代碼。
所述入侵代碼確定單元基于產(chǎn)生的免疫數(shù)據(jù)庫還確定實(shí)時(shí)輸入的數(shù)據(jù)是否對應(yīng)于入侵代碼。
根據(jù)本發(fā)明的另一方面,提供一種檢測入侵代碼的方法,所述方法包4舌 輸入對每一組都不同的設(shè)置值;基于設(shè)置值產(chǎn)生免疫數(shù)據(jù)庫;和基于產(chǎn)生的 免疫數(shù)據(jù)庫確定數(shù)據(jù)是否對應(yīng)于入侵代碼。
所述設(shè)置值可包括組特征關(guān)鍵詞,劃分組;駐留代碼列表,對應(yīng)于安 全代碼;和隨機(jī)池產(chǎn)生因子,產(chǎn)生免疫數(shù)據(jù)庫的池。
所述產(chǎn)生免疫數(shù)據(jù)庫的步驟可包括使用組特征關(guān)4建詞提取駐留代碼的 特征;基于組特征關(guān)鍵詞和隨機(jī)池產(chǎn)生因子產(chǎn)生隨機(jī)池特征;計(jì)算提取的駐 留代碼的特征和產(chǎn)生的隨機(jī)池特征的近似度值;和將從隨機(jī)池特征中計(jì)算的 近似度值小于或者等于預(yù)定閾值的特征產(chǎn)生為免疫數(shù)據(jù)庫。
通過以下結(jié)合附圖對本發(fā)明特定示例性實(shí)施例的詳細(xì)描述,本發(fā)明的以 上和其他方面將變得更加清楚并且更容易被理解,其中
圖1是示出根據(jù)本發(fā)明示例性實(shí)施例的檢測入侵代碼的設(shè)備的配置的框
圖2是示出圖1的免疫數(shù)據(jù)庫產(chǎn)生單元的配置的框圖3是示出圖1的入侵代碼確定單元的配置的框固;
圖4是示出根據(jù)本發(fā)明示例性實(shí)施例的用于不同地建立組特征關(guān)鍵詞 (key)的組的示例的示圖5是示出根據(jù)本發(fā)明示例性實(shí)施例的從在每個(gè)計(jì)算機(jī)中建立的駐留代 碼列表中提取特征的示例的示圖6是示出根據(jù)本發(fā)明示例性實(shí)施例的產(chǎn)生隨機(jī)池特征的示例的示圖7是示出根據(jù)本發(fā)明示例性實(shí)施例的從在每個(gè)計(jì)算機(jī)中收集的待定代 碼列表中提取特征的示例的示圖8是示出根據(jù)本發(fā)明示例性實(shí)施例的檢測入侵代碼的方法的操作的流 程圖9是示出圖8的基于設(shè)置值產(chǎn)生免疫數(shù)據(jù)庫的具體操作的流程圖;和 圖10是示出圖8的確定數(shù)據(jù)是否與入侵代碼對應(yīng)的具體操作的流程圖。
具體實(shí)施方式
現(xiàn)在將詳細(xì)描述本發(fā)明示例性實(shí)施例,附圖中示出了本發(fā)明的示例,其 中相同的標(biāo)號始終指示相同的組件。以下將參照附圖描述所述示例性實(shí)施例 以解釋本發(fā)明。
圖1是示出根據(jù)本發(fā)明示例性實(shí)施例的檢測入侵代碼的設(shè)備的配置的框圖。
檢測入侵代碼的設(shè)備包括設(shè)置值輸入單元110、免疫數(shù)據(jù)庫產(chǎn)生單元 120和入侵代碼確定單元130。
在設(shè)置值輸入單元110輸入對至少一臺計(jì)算機(jī)的各個(gè)組都不同的設(shè)置值。
設(shè)置值包括分組的組特征關(guān)鍵詞、與安全代碼對應(yīng)的駐留代碼列表和 產(chǎn)生免疫數(shù)據(jù)庫的池的隨機(jī)池產(chǎn)生因子。
組特征關(guān)鍵詞被用于提取產(chǎn)生免疫數(shù)據(jù)庫的駐留代碼的特征,或者提取 用于確定數(shù)據(jù)是否對應(yīng)于入侵代碼的數(shù)據(jù)的特征。具體來說,從駐留代碼中 提取對應(yīng)于組特征關(guān)鍵詞條件的特征,并且從用于確定數(shù)據(jù)是否對應(yīng)于入侵 代碼的數(shù)據(jù)提取對應(yīng)于組特征關(guān)鍵詞條件的特征。
組特征關(guān)鍵詞可對應(yīng)于在處理二進(jìn)制文件或者原始二進(jìn)制執(zhí)行文件的文 件中以預(yù)定概率出現(xiàn)的式樣(pattern),例如,所述概率范圍從大約1/10到大 約1/10000,但不限于此。具體來說,組特征關(guān)鍵詞可以對應(yīng)于以下式樣,所 述式樣對從具有預(yù)定長度的二進(jìn)制序列中以預(yù)定概率獲得的二進(jìn)制序列進(jìn)行 限制。
例如,當(dāng)組特征關(guān)鍵詞對應(yīng)于XXYX[YF]XX[LMIV]時(shí),要求X包括全 部式樣中的任何一種,要求[YF]包括Y式樣和F式樣的任何一個(gè),和要求 [LMIV]包括L式樣、M式樣、I式樣和V式樣中的任何一個(gè)。
每個(gè)式樣對應(yīng)于根據(jù)預(yù)定單位和預(yù)定規(guī)則的二進(jìn)制值的映射。其中執(zhí)行 與式樣的映射的二進(jìn)制值可被改變,而其中執(zhí)行與二進(jìn)制值的映射的式樣也 可#皮改變。
例如,但不限于,如果根據(jù)預(yù)定單位和預(yù)定規(guī)則每個(gè)式樣包括6比特, 則組特征關(guān)鍵詞可包括48比特,并且可由制造商確定Y式樣、F式樣、L式 樣、M式樣、I式樣和V式樣的配置。
駐留代碼列表可對應(yīng)于用戶安裝在計(jì)算機(jī)內(nèi)的程序或者在執(zhí)行代碼中被 確定為安全的代碼列表。駐留代碼列表還可由用戶手動(dòng)地建立,或者通過使用用于檢索執(zhí)行文件 或者檢查安全性的計(jì)算機(jī)病毒軟件來建立。如上所述,因?yàn)榭稍诟鱾€(gè)計(jì)算機(jī)上改變程序和執(zhí)行文件,所以駐留代碼 列表可被不同地建立,以對應(yīng)于各個(gè)計(jì)算機(jī)的特征。隨機(jī)池產(chǎn)生因子可包括建立閾值和隨機(jī)池大小的因子。所述閾值被用于產(chǎn)生免疫數(shù)據(jù)庫或者通過使用產(chǎn)生的免疫數(shù)據(jù)庫確定入侵代碼。免疫數(shù)據(jù)庫產(chǎn)生單元120基于設(shè)置值輸入單元110的設(shè)置值產(chǎn)生免疫數(shù) 據(jù)庫140。基于組特征關(guān)鍵詞和隨機(jī)池產(chǎn)生因子,免疫數(shù)據(jù)庫產(chǎn)生單元120可從包 括在駐留代碼列表中的每個(gè)駐留代碼提取特征,并產(chǎn)生隨機(jī)池特征。 可使用組特征關(guān)鍵詞提取駐留代碼的特征?;诮M特征關(guān)鍵詞和包括在隨機(jī)池產(chǎn)生因子中的隨機(jī)池大小可產(chǎn)生隨機(jī) 池特征。免疫數(shù)據(jù)庫產(chǎn)生單元120計(jì)算駐留代碼的特征和隨機(jī)池特征的近似度 值,并且將從隨機(jī)池特征中計(jì)算的近似度值小于或者等于預(yù)定閾值的特征產(chǎn) 生為免疫數(shù)據(jù)庫140。近似度值是指兩個(gè)預(yù)定特征之間的區(qū)別度或者近似度。具體來說,近似 度值的計(jì)算數(shù)值地表達(dá)了兩個(gè)特征的區(qū)別度或者近似度,并且是指數(shù)值地表 達(dá)計(jì)算的近似度值的兩個(gè)特征的區(qū)別度或者近似度??墒褂肊uclidean距離法、調(diào)和平均數(shù)法、匹配(Matching)系數(shù)法、擲 骰子(Dice)系數(shù)法、余弦近似度法、Levenshtein距離法、Sellers算法、 Smith-Waterman距離法、塊(Block)距離法等來計(jì)算近似度值。本發(fā)明此示 例性實(shí)施例中的計(jì)算近似度值的方法不限于上述方法,并且可以使用所有計(jì) 算近似度值的方法。以下對作為示例的使用塊距離方法的兩個(gè)字符串的近似度值進(jìn)行描述, 但不限于此。當(dāng)字符串q是"ABCDEFGH",并且字符串r是"BCDEFGHG"時(shí),使 用塊距離函數(shù)計(jì)算兩個(gè)字符串q和r的各個(gè)元素間的距離值,隨后,通過將 計(jì)算的距離值進(jìn)行相加來計(jì)算兩個(gè)字符串之間的近似度值。具體來說,使用 塊距離函數(shù)計(jì)算q的元素A與r的元素B之間的距離值,以及q的元素B和 r的元素C之間的距離值。對q的元素H和r的元素G ^l行計(jì)算距離值的處理,并且通過將所有計(jì)算的距離值相加來計(jì)算兩個(gè)字符串的近似度值。入侵代碼確定單元130基于免疫數(shù)據(jù)庫產(chǎn)生單元120產(chǎn)生的免疫數(shù)據(jù)庫 140確定數(shù)據(jù)是否對應(yīng)于入侵代碼。入侵代碼確定單元130可收集用于確定數(shù)據(jù)是否對應(yīng)于入侵代碼的數(shù) 據(jù),并且收集的數(shù)據(jù)可以是存儲在計(jì)算機(jī)中的任何執(zhí)行文件數(shù)據(jù),存儲在計(jì) 算機(jī)中的任何數(shù)據(jù)和實(shí)時(shí)輸入計(jì)算機(jī)的任何數(shù)據(jù)。例如,實(shí)時(shí)輸入計(jì)算機(jī)的數(shù)據(jù)可對應(yīng)于使用有線/無線網(wǎng)絡(luò)共享下載的文 件、使用超文本傳輸協(xié)議/文件傳輸協(xié)議(HTTP/FTP)下載的文件、使用電 子郵件下載的文件、使用對等(P2P)技術(shù)下載的文件、從存儲設(shè)備下載的文 件等。入侵代碼確定單元130從收集的數(shù)據(jù)中提取特征,計(jì)算提取的特征和免 疫數(shù)據(jù)庫140的特征的近似度值,并且在計(jì)算的近似度值大于預(yù)定閾值時(shí)將 數(shù)據(jù)確定為入侵代碼。在這種情況下,入侵代碼確定單元130可基于組特征關(guān)鍵詞從收集的數(shù) 據(jù)中提取特征。在收集的數(shù)據(jù)是壓縮文件的情況下,入侵代碼確定單元130可在解壓縮 文件后提取特征,并確定該數(shù)據(jù)是否對應(yīng)于入侵代碼。圖2是示出圖1的免疫數(shù)據(jù)庫產(chǎn)生單元120的配置的框圖。免疫lt據(jù)庫產(chǎn)生單元120包括特征提取單元210、池特征產(chǎn)生單元240、 近似度值計(jì)算單元220和免疫數(shù)據(jù)庫產(chǎn)生管理單元230。特征提取單元210使用組特征關(guān)鍵詞提取包括在駐留代碼列表中的每個(gè) 駐留代碼的特征。特征提取單元210可從駐留代碼讀取對應(yīng)于組特征關(guān)鍵詞的比特?cái)?shù),并 提取對應(yīng)于組特征關(guān)鍵詞條件的特征。池特征產(chǎn)生單元240基于組特征關(guān)鍵詞和隨機(jī)池產(chǎn)生因子產(chǎn)生隨機(jī)池特征。池特征產(chǎn)生單元240可基于組特征關(guān)4定詞的長度和包括在隨機(jī)池產(chǎn)生因 子中的隨機(jī)池大小產(chǎn)生隨機(jī)池特征。例如,當(dāng)組特征關(guān)鍵詞的長度是48比特并且隨機(jī)池大小是1%時(shí),池特 征產(chǎn)生單元240隨機(jī)地產(chǎn)生248 x 0.01個(gè)隨機(jī)池特征。近似度值計(jì)算單元220計(jì)算駐留代碼的特征和隨機(jī)池特征的近似度值。免疫數(shù)據(jù)庫產(chǎn)生管理單元230將從隨機(jī)池特征中計(jì)算的近似度值小于或者等于預(yù)定閾值的特征產(chǎn)生為免疫數(shù)據(jù)庫。免疫數(shù)據(jù)庫產(chǎn)生管理單元230可產(chǎn)生免疫數(shù)據(jù)庫,所述免疫數(shù)據(jù)庫從由 池特征產(chǎn)生單元240產(chǎn)生的隨機(jī)池特征中選擇確定駐留代碼和入侵代碼的特 征。因此,在對從駐留代碼中提取的特征計(jì)算近似度值時(shí),免疫數(shù)據(jù)庫產(chǎn)生 管理單元230產(chǎn)生的免疫lt據(jù)庫的特征不變地具有小于或者等于閾值的計(jì)算 的近似度值。在對除了駐留代碼之外的代碼計(jì)算近似度值時(shí),免疫數(shù)據(jù)庫的 特征還具有計(jì)算的近似度值的大于閾值的可能性。圖3示出了圖1的入侵代碼確定單元130的配置的框圖。入侵代碼確定單元130包括數(shù)據(jù)收集單元310、數(shù)據(jù)特征提取單元320、 數(shù)據(jù)近似度值計(jì)算單元330和入侵代碼確定管理單元340。數(shù)據(jù)收集單元310收集數(shù)據(jù)以確定數(shù)據(jù)是否對應(yīng)于入侵代碼的數(shù)據(jù)。在這種情況下,數(shù)據(jù)收集單元310可收集存儲在計(jì)算機(jī)中的全部執(zhí)行文 件數(shù)據(jù)、存儲在計(jì)算機(jī)中的全部數(shù)據(jù)和實(shí)時(shí)輸入計(jì)算機(jī)的數(shù)據(jù)中的任何一種。實(shí)時(shí)輸入計(jì)算機(jī)的數(shù)據(jù)可對應(yīng)于使用有線/無線網(wǎng)絡(luò)共享下載的文件、使 用HTTP/FTP下載的文件、使用電子郵件下載的文件、使用P2P技術(shù)下載的 文件、從存儲設(shè)備下載的文件等。數(shù)據(jù)特征提取單元320使用組特征關(guān)鍵詞從收集的數(shù)據(jù)中提取特征。具 體來說,數(shù)據(jù)特征提取單元320從收集的數(shù)據(jù)中提取對應(yīng)于組特征關(guān)鍵詞條 件的特征。數(shù)據(jù)近似度值計(jì)算單元330計(jì)算從收集的數(shù)據(jù)中提取的特征和免疫數(shù)據(jù) 庫的特征的近似度值。如果計(jì)算的近似度值大于預(yù)定的閾值,則入侵代碼確定管理單元340確 定該數(shù)據(jù)是入侵代碼。具體來說,如果計(jì)算的近似度值小于或者等于預(yù)定的 閾值,則入侵代碼確定管理單元340確定該數(shù)據(jù)是駐留代碼。參照圖4到圖7對圖1所示的根據(jù)本發(fā)明示例性實(shí)施例的檢測入侵代碼 的設(shè)備的操作進(jìn)行詳細(xì)描述。圖4是示出才艮據(jù)本發(fā)明示例性實(shí)施例的用于不同地建立組特征關(guān)鍵詞的 組的示例的示圖。組410到450中的每一組中設(shè)置了不同的組特征關(guān)4建詞。具體來說,為每個(gè)組建立不同的組特征關(guān)鍵詞,從而可為每個(gè)組產(chǎn)生用于確定駐留代碼和 入侵代碼的唯一免疫數(shù)據(jù)庫。因?yàn)榘ㄔ诮M450中的第 一計(jì)算機(jī)460到第四計(jì)算機(jī)490的每一個(gè)可包 括安裝在計(jì)算^)L中的不同的程序,所以對從460到490的每個(gè)計(jì)算機(jī)來說, 駐留代碼列表可以不同。此外,對每個(gè)計(jì)算機(jī)可不同地建立隨機(jī)池產(chǎn)生因子。例如,可為第一計(jì) 算機(jī)460建立閾值2300和10%的隨機(jī)池大小,可為第二計(jì)算機(jī)470建立閾值 2350和1%的隨機(jī)池大小,可為第三計(jì)算機(jī)480建立閾值2400和5%的隨機(jī) 池大小和可為第四計(jì)算機(jī)490建立閾值2500和0.5%的隨機(jī)池大小。具體來說,可不同地建立設(shè)置值,從而可為圖4中所示的每個(gè)計(jì)算機(jī)組 和包括在計(jì)算機(jī)組中的每個(gè)計(jì)算機(jī)產(chǎn)生不同的免疫數(shù)據(jù)庫。圖5是示出根據(jù)本發(fā)明示例性實(shí)施例從在每個(gè)計(jì)算機(jī)中建立的駐留代碼 列表中提取特征的示例的示圖。從包括在每個(gè)計(jì)算機(jī)中的駐留代碼列表中收集包括在駐留代碼列表中的 駐留代碼,從收集的駐留代碼中提取特征。每個(gè)計(jì)算機(jī)可通過使用為每個(gè)計(jì)算機(jī)組建立的組特征關(guān)鍵詞從駐留代碼 中提取特征。具體來說,每個(gè)計(jì)算機(jī)從駐留代碼中讀取對應(yīng)于組特征關(guān)鍵詞比特的比 特,確定式樣是否對應(yīng)于建立的組特征關(guān)鍵詞條件,當(dāng)式樣對應(yīng)于組特征關(guān) 鍵詞條件時(shí)將對應(yīng)的式樣提取為特征。相反,當(dāng)式樣與組特征關(guān)鍵詞條件不 同時(shí),相應(yīng)樣式被移動(dòng)一比特,接著每個(gè)計(jì)算機(jī)確定該式樣是否對應(yīng)于組特 征關(guān)鍵詞條件。使用上述處理,可從駐留代碼中提取對應(yīng)于組特征關(guān)鍵詞條件的特征。使用在每個(gè)計(jì)算機(jī)中建立的組特征關(guān)鍵詞的長度和隨機(jī)池大小來產(chǎn)生隨 機(jī)池特征。例如,當(dāng)在第一計(jì)算機(jī)中建立的組特征關(guān)鍵詞的長度是48比特,并且隨 機(jī)池大小是10%時(shí),隨機(jī)產(chǎn)生的池特征的數(shù)量是24、0.1。當(dāng)在第二計(jì)算機(jī)中 建立的組特征關(guān)鍵詞的長度是48比特,并且隨機(jī)池大小是1%時(shí),隨機(jī)產(chǎn)生 的池特征的數(shù)量是248 x 0.01。產(chǎn)生的隨機(jī)池特征中的部分特征可以被選為免疫數(shù)據(jù)庫的特征。具體來說,計(jì)算提取的駐留代碼的特征和隨機(jī)池特征的近似度值,并且 將從隨機(jī)池特征中計(jì)算的近似度值小于或者等于預(yù)定闊值的特征產(chǎn)生為免疫 數(shù)據(jù)庫。如上所述,因?yàn)闉槊總€(gè)組建立的組特征關(guān)^l建詞不同,所以為各組產(chǎn)生的 免疫數(shù)據(jù)庫也不同。此外,因?yàn)榘ㄔ诮M中的每個(gè)計(jì)算機(jī)的駐留代碼列表和 隨機(jī)池產(chǎn)生因子可不同地被建立,所以可為包括在同 一組中的每個(gè)計(jì)算機(jī)產(chǎn) 生不同的免疫數(shù)據(jù)庫。由此,因?yàn)槊總€(gè)計(jì)算機(jī)中產(chǎn)生的免疫數(shù)據(jù)庫不同,所以每個(gè)計(jì)算機(jī)可對 駐留代碼和入侵代碼做出不同的確定。此外,因?yàn)槊總€(gè)計(jì)算機(jī)中確定的駐留代碼和入侵代碼不同,所以惡意代 碼不會感染特定組中的全部計(jì)算機(jī),而僅感染該組中全部計(jì)算機(jī)的一部分。 因此,可防止由于新類型或者變種的惡意代碼導(dǎo)致的統(tǒng)一損害,并且可從其 中具有對新類型或者變種的惡意代碼的耐受性的計(jì)算機(jī)中獲得針對新類型或 者變種的惡意代碼的診斷方法。具體來說,可通過從受損計(jì)算機(jī)定位惡意代 碼的類型和通過從其中具有對新類型或者變種的惡意代碼的耐受性的計(jì)算機(jī) 中獲得針對惡意代碼的免疫式樣來獲得針對新類型或者變種的惡意代碼的診 斷方法。圖7是示出根據(jù)本發(fā)明示例性實(shí)施例的從在每個(gè)計(jì)算機(jī)中收集的待定代 碼列表提取特征的示例的示圖。每個(gè)計(jì)算機(jī)從待定代碼列表中收集存儲在計(jì)算機(jī)中的執(zhí)行文件數(shù)據(jù)或者 存儲在計(jì)算機(jī)中的全部數(shù)據(jù),以確定代碼列表中的數(shù)據(jù)是否對應(yīng)于入侵代碼。從收集的數(shù)據(jù)(具體來說,即,包括在待定代碼列表中的待定代碼)提 取特征??墒褂迷谟?jì)算機(jī)中建立的組特征關(guān)鍵詞來提取待定代碼的特征。計(jì)算提取的特征和免疫數(shù)據(jù)庫的特征的近似度值,以確定待定代碼是否 對應(yīng)于入4曼^/馬。具體來說,計(jì)算從待定代碼(例如,第一執(zhí)行文件)提取的特征和免疫 數(shù)據(jù)庫的特征的近似度值。隨后將計(jì)算的近似度值和在計(jì)算機(jī)中建立的閾值 進(jìn)行比較。當(dāng)全部計(jì)算的近似度值小于或者等于閾值時(shí),待定代碼被確定為駐留代 碼。具體來說,當(dāng)計(jì)算的近似度值中的任何近似度值大于閾值時(shí),待定代碼 被確定為入侵代碼。提取特征,計(jì)算提取的特征和免疫數(shù)據(jù)庫的特征的近似度值,將計(jì)算的近似 度值與閾值進(jìn)行比較,和確定數(shù)據(jù)是否對應(yīng)于入侵代碼。 使用上述處理可確定待定代碼是否對應(yīng)于入侵代碼。圖8是示出根據(jù)本發(fā)明示例性實(shí)施例的檢測入侵代碼的方法的操作的流 程圖。在操作S810,每個(gè)計(jì)算機(jī)中的檢測入侵代碼的方法從輸入對每個(gè)計(jì)算機(jī)組都不同的設(shè)置值開始。輸入的設(shè)置值可對應(yīng)于對每個(gè)計(jì)算機(jī)組都不同的組特征關(guān)鍵詞、駐留代 碼列表和用于產(chǎn)生免疫數(shù)據(jù)庫的池的隨機(jī)池產(chǎn)生因子。組特征關(guān)鍵詞可被用于提取用于產(chǎn)生免疫數(shù)據(jù)庫的駐留代碼的特征,或 者提取用于確定數(shù)據(jù)是否對應(yīng)于入侵代碼的數(shù)據(jù)的特征。具體來說,從駐留 代碼提取對應(yīng)于組特征關(guān)鍵詞條件的特征,從用于確定數(shù)據(jù)是否對應(yīng)于入侵 代碼的數(shù)據(jù)中提取對應(yīng)于組特征關(guān)鍵詞條件的特征。組特征關(guān)鍵詞可對應(yīng)于在處理二進(jìn)制文件或者原始二進(jìn)制執(zhí)行文件的文 件中以預(yù)定概率出現(xiàn)的式樣。駐留代碼列表可對應(yīng)于用戶安裝在計(jì)算機(jī)中的程序或者執(zhí)行代碼中確定 為安全的代碼列表。如上所述,因?yàn)閷τ诟鱾€(gè)用戶計(jì)算機(jī)可改變程序和執(zhí)行文件,所以駐留 代碼列表可被不同地建立,以對應(yīng)于每個(gè)計(jì)算機(jī)的特征。隨機(jī)池產(chǎn)生因子可包括建立閾值和隨機(jī)池大小的因子。這里,閾值用于 產(chǎn)生免疫數(shù)據(jù)庫或者使用產(chǎn)生的免疫數(shù)據(jù)庫確定入侵代碼。在操作S820,當(dāng)輸入對每個(gè)組都不同的設(shè)置值時(shí),基于輸入的設(shè)置值產(chǎn) 生免疫數(shù)據(jù)庫。具體來說,基于組特征關(guān)鍵詞和隨機(jī)池產(chǎn)生因子,從每個(gè)包括在駐留代 碼列表中的駐留代碼中提取對應(yīng)于組特征關(guān)鍵詞條件的特征,并產(chǎn)生隨機(jī)池 特征??苫诮M特征關(guān)鍵詞的長度和包括在隨機(jī)池產(chǎn)生因子中的隨機(jī)池大小產(chǎn) 生隨機(jī)池特征。計(jì)算每個(gè)駐留代碼的特征和隨機(jī)池特征的近似度值,將從隨機(jī)池特征中 計(jì)算的近似度值小于或者等于預(yù)定閾值的特征產(chǎn)生為免疫數(shù)據(jù)庫。在操作S830,基于產(chǎn)生的免疫數(shù)據(jù)庫確定數(shù)據(jù)是否對應(yīng)于入侵代碼。具體來說,使用免疫數(shù)據(jù)庫來確定收集的數(shù)據(jù)是否對應(yīng)于入侵代碼。以示例的方式,但不限于此,收集的數(shù)據(jù)可包括任何存儲在計(jì)算機(jī)中的執(zhí)行 文件數(shù)據(jù)中所包括的數(shù)據(jù)、任何存儲在計(jì)算機(jī)中的數(shù)據(jù)和實(shí)時(shí)輸入的任何數(shù) 據(jù)。在為了確定數(shù)據(jù)是否對應(yīng)于入侵代碼而從數(shù)據(jù)中提取對應(yīng)于組特征關(guān)鍵 詞條件的特征并且計(jì)算提取的數(shù)據(jù)的特征和免疫數(shù)據(jù)庫的特征的近似度值之 后,將計(jì)算的近似度值與閾值進(jìn)行比較。如果計(jì)算的近似度值大于閾值,則將該數(shù)據(jù)被確定為入侵?jǐn)?shù)據(jù)。如果全部計(jì)算的近似度值小于或者等于閾值,則該數(shù)據(jù)被確定為屬于安 全代碼的駐留代碼。圖9是示出圖8的操作S820的具體操作的流程圖。操作S910使用輸入的組特征關(guān)鍵詞和駐留代碼列表提取駐留代碼的特征??蓮陌ㄔ隈v留代碼列表中的每個(gè)駐留代碼提取對應(yīng)于組特征關(guān)鍵詞條 件的特征。在操作S920,基于組特征關(guān)鍵詞的長度和包括在隨機(jī)池產(chǎn)生因子中的隨 機(jī)池大'J 、來產(chǎn)生隨機(jī)池特征。從與組特征關(guān)鍵詞的長度對應(yīng)的多個(gè)特征來隨機(jī)地產(chǎn)生與隨機(jī)池大小對 應(yīng)的多個(gè)隨才幾池特征。在操作S930,為了產(chǎn)生免疫數(shù)據(jù)庫,計(jì)算提取的駐留代碼的特征和產(chǎn)生 的隨機(jī)池特征的近似度值。根據(jù)——對應(yīng)的方式針對每個(gè)特征計(jì)算近似度值。因此,當(dāng)駐留代碼的 特征的數(shù)量為"N",而隨機(jī)池特征的數(shù)量為"M"時(shí),按照數(shù)量NxM來計(jì) 算近似度值。在計(jì)算近似度值之后,在操作S940,根據(jù)隨機(jī)池特征中計(jì)算的近似度值小于或者等于預(yù)定閾值的特征來產(chǎn)生免疫數(shù)據(jù)庫。當(dāng)閾值可以是輸入設(shè)置值時(shí)包括在隨機(jī)池產(chǎn)生因子中的閾值。圖10是示出圖8的操作S830的具體操作的流程圖。在操作S1010中,收集數(shù)據(jù)以確定該數(shù)據(jù)是否對應(yīng)于入侵?jǐn)?shù)據(jù)。收集的數(shù)據(jù)可對應(yīng)于包括在任何存儲在計(jì)算機(jī)中的執(zhí)行文件數(shù)據(jù)、任何存儲在計(jì)算機(jī)中的數(shù)據(jù)和任何實(shí)時(shí)輸入計(jì)算機(jī)的數(shù)據(jù)中的數(shù)據(jù)。實(shí)時(shí)輸入計(jì)算機(jī)的數(shù)據(jù)可對應(yīng)于使用有線/無線網(wǎng)絡(luò)共享下載的文件、使用HTTP/FTP下載的文件、使用電子郵件下載的文件、使用P2P技術(shù)下載的文件、從存儲設(shè)備下載的文件等。在操作S1020,從收集的數(shù)據(jù)(例如,每個(gè)執(zhí)行文件)提取對應(yīng)于組特征關(guān)鍵詞條件的特征。在操作S1030,計(jì)算從數(shù)據(jù)提取的特征和免疫數(shù)據(jù)庫的特征的近似度值。 具體來說,計(jì)算從數(shù)據(jù)提取的每個(gè)特征和免疫數(shù)據(jù)庫的每個(gè)特征的近似度值。在操作S1040,確定針對免疫數(shù)據(jù)庫的特征計(jì)算的近似度值是否大于預(yù) 定閾值。在操作S1050,如果確定針對免疫數(shù)據(jù)庫的特征計(jì)算的近似度值大于預(yù) 定閾值,則確定該數(shù)據(jù)是入侵代碼。相反,如果計(jì)算的近似度值小于或者等于預(yù)定閾值,則該數(shù)據(jù)被確定為 屬于安全代碼的駐留代碼。根據(jù)上述示例性實(shí)施例的檢測入侵代碼的方法可被記錄在計(jì)算機(jī)可讀介 質(zhì)內(nèi),所述計(jì)算機(jī)可讀介質(zhì)包括程序指令以實(shí)施計(jì)算機(jī)實(shí)現(xiàn)的各種操作。所 述介質(zhì)還可包括單獨(dú)的程序指令、數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等,或者包括程序指 令、數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等的組合。計(jì)算機(jī)可讀介質(zhì)的示例包括,但不限于 諸如硬盤、軟盤和磁帶的磁介質(zhì),諸如CD ROM盤和DVD的光學(xué)介質(zhì),諸 如光盤的磁光介質(zhì),和諸如只讀存儲器(ROM)、隨機(jī)存取存儲器(RAM)、 閃速存儲器等的被特殊配置以存儲和執(zhí)行程序指令的硬件裝置。所述程序指 令的示例包括機(jī)器代碼(諸如編譯器產(chǎn)生的代碼)和包含可由計(jì)算機(jī)使用解 釋器來執(zhí)行的高級代碼的文件。所述硬件裝置可以被配置為 一個(gè)或者多個(gè)軟 件模塊,以執(zhí)行上述本發(fā)明實(shí)施例的操作。根據(jù)本發(fā)明示例性實(shí)施例,可提供一種檢測入侵代碼的設(shè)備和方法,所 述設(shè)備和方法可區(qū)分并產(chǎn)生能夠確定數(shù)據(jù)是否對應(yīng)于入侵代碼的免疫數(shù)據(jù) 庫。根據(jù)本發(fā)明的示例性實(shí)施例,還提供了 一種檢測入侵代碼的設(shè)備和方法, 所述設(shè)備和方法可使用不同的免疫數(shù)據(jù)庫防止由于新類型或者變種的惡意代 碼引起的統(tǒng)一損害。根據(jù)本發(fā)明的示例性實(shí)施例,還提供了 一種檢測入侵代碼的設(shè)備和方法, 所述設(shè)備和方法可從具有對新類型或者變種的惡意代碼的耐受性的系統(tǒng)獲得 針對新類型或者變種的惡意代碼的診斷方法。盡管已經(jīng)示出并描述了本發(fā)明的幾個(gè)示例性實(shí)施例,但是本發(fā)明不限于 所述的示例性實(shí)施例。而本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,在不脫離本發(fā)明的原則 和精神的情況下,可對這些示例性實(shí)施例進(jìn)行改變,本發(fā)明的范圍由權(quán)利要 求及其等同物限定。
權(quán)利要求
1、一種檢測入侵代碼的設(shè)備,所述設(shè)備包括設(shè)置值輸入單元,輸入對多個(gè)組中的每一組都不同的設(shè)置值;免疫數(shù)據(jù)庫產(chǎn)生單元,基于設(shè)置值產(chǎn)生免疫數(shù)據(jù)庫;和入侵代碼確定單元,基于產(chǎn)生的免疫數(shù)據(jù)庫確定數(shù)據(jù)是否對應(yīng)于入侵代碼。
2、 如權(quán)利要求l所述的設(shè)備,其中,設(shè)置值包括 組特征關(guān)4建詞,劃分組;駐留代碼列表,對應(yīng)于安全代碼;和 隨機(jī)池產(chǎn)生因子,產(chǎn)生免疫數(shù)據(jù)庫的池。
3、 如權(quán)利要求2所述的設(shè)備,其中,免疫數(shù)據(jù)庫產(chǎn)生單元包括 特征提取單元,使用組特征關(guān)鍵詞提取駐留代碼的特征; 池特征產(chǎn)生單元,基于組特征關(guān)鍵詞和隨機(jī)池產(chǎn)生因子產(chǎn)生隨機(jī)池特征; 近似度值計(jì)算單元,計(jì)算提取的駐留代碼的特征和產(chǎn)生的隨機(jī)池特征的近似度值;和免疫數(shù)據(jù)庫產(chǎn)生管理單元,將計(jì)算的近似度值小于或者等于閾值的隨機(jī) 池特征產(chǎn)生為免疫數(shù)據(jù)庫。
4、 如權(quán)利要求3所述的設(shè)備,其中,池特征產(chǎn)生單元基于組特征關(guān)鍵詞 的長度和包括在隨機(jī)池產(chǎn)生因子中的隨機(jī)池大小來產(chǎn)生隨機(jī)池特征。
5、 如權(quán)利要求3所述的設(shè)備,其中,在隨機(jī)池產(chǎn)生因子中設(shè)置所述閾值。
6、 如權(quán)利要求2所述的設(shè)備,其中,入侵代碼確定單元包括 數(shù)據(jù)特征提取單元,使用組特征關(guān)鍵詞提取數(shù)據(jù)的特征;數(shù)據(jù)近似度值計(jì)算單元,計(jì)算提取的凄t據(jù)的特征和免疫數(shù)據(jù)庫的特征的 近似度值;入侵代碼確定管理單元,當(dāng)計(jì)算的近似度值大于預(yù)定閾值時(shí),將所述數(shù) 據(jù)確定為入侵代碼。
7、 如權(quán)利要求6所述的設(shè)備,其中,入侵代碼確定單元還包括 數(shù)據(jù)收集單元,收集數(shù)據(jù)以確定所述數(shù)據(jù)是否對應(yīng)于入侵代碼;和 數(shù)據(jù)特征提取單元,提取每一收集的數(shù)據(jù)的特征。
8、 如權(quán)利要求l所述的設(shè)備,其中,入侵代碼確定單元基于產(chǎn)生的免疫數(shù)據(jù)庫確定內(nèi)部存儲的執(zhí)行文件數(shù)據(jù)是否對應(yīng)于入侵代碼。
9、 如權(quán)利要求l所述的設(shè)備,其中,入侵代碼確定單元基于產(chǎn)生的免疫 數(shù)據(jù)庫確定內(nèi)部存儲的數(shù)據(jù)是否對應(yīng)于入侵代碼。
10、 如權(quán)利要求l所述的設(shè)備,其中,入侵代碼確定單元基于產(chǎn)生的免疫數(shù)據(jù)庫確定實(shí)時(shí)輸入的數(shù)據(jù)是否對應(yīng)于入侵代碼。
11、 如權(quán)利要求l所述的設(shè)備,其中,組包括至少一個(gè)計(jì)算機(jī)。
12、 一種;^測入侵代碼的方法,所述方法包括 輸入對每一組都不同的設(shè)置值; 基于設(shè)置值產(chǎn)生免疫數(shù)據(jù)庫;和基于產(chǎn)生的免疫數(shù)據(jù)庫確定數(shù)據(jù)是否對應(yīng)于入侵代碼。
13、 如權(quán)利要求12所述的方法,其中,設(shè)置值包括 組特征關(guān)4建詞,劃分組;駐留代碼列表,對應(yīng)于安全代碼;和 隨機(jī)池產(chǎn)生因子,產(chǎn)生免疫數(shù)據(jù)庫的池。
14、 如權(quán)利要求13所述的方法,其中,產(chǎn)生免疫數(shù)據(jù)庫的步驟包括 使用組特征關(guān)4建詞提取駐留代碼的特征;基于組特征關(guān)4建詞和隨機(jī)池產(chǎn)生因子產(chǎn)生隨機(jī)池特征; 計(jì)算提取的駐留代碼的特征和產(chǎn)生的隨機(jī)池特征的近似度值;和 將計(jì)算的近似度值小于或者等于閾值的隨機(jī)池特4i產(chǎn)生為免疫數(shù)據(jù)庫。
15、 如權(quán)利要求14所述的方法,其中,在隨機(jī)池特征的產(chǎn)生步驟,基于 組特征關(guān)鍵詞的長度和包括在隨機(jī)池產(chǎn)生因子中的隨機(jī)池大小來產(chǎn)生隨機(jī)池 特征。
16、 如權(quán)利要求14所述的方法,其中,在隨機(jī)池產(chǎn)生因子中設(shè)置所述閾值。
17、 如權(quán)利要求13所述的方法,其中,確定所述數(shù)據(jù)是否對應(yīng)于入侵代 碼的步驟包括使用組特征關(guān)鍵詞提取所述數(shù)據(jù)的特征; 計(jì)算提取的數(shù)據(jù)的特征和免疫數(shù)據(jù)庫的特征的近似度值; 如果計(jì)算的近似度值大于閾值,則將所述數(shù)據(jù)確定為入侵代碼。
18、 如權(quán)利要求17所述的方法,其中,確定所述數(shù)據(jù)是否對應(yīng)于入侵代 碼的步驟還包括收集數(shù)據(jù)以確定所述數(shù)據(jù)是否對應(yīng)于入^f曼代碼,在數(shù)據(jù)的特征的提取步驟,提取每一收集的數(shù)據(jù)的特征。
19、 如權(quán)利要求12所述的方法,其中,確定所述數(shù)據(jù)是否對應(yīng)于入侵代碼的步驟基于產(chǎn)生的免疫數(shù)據(jù)庫確定內(nèi)部存儲的執(zhí)行文件數(shù)據(jù)是否對應(yīng)于入 侵代碼。
20、 如權(quán)利要求12所述的方法,其中,確定所述教:據(jù)是否對應(yīng)于入侵代 碼的步驟基于產(chǎn)生的免疫數(shù)據(jù)庫確定內(nèi)部存儲的數(shù)據(jù)是否對應(yīng)于入侵代碼。
21、 如權(quán)利要求12所述的方法,其中,確定所述數(shù)據(jù)是否對應(yīng)于入侵代 碼的步驟基于產(chǎn)生的免疫數(shù)據(jù)庫確定實(shí)時(shí)輸入的數(shù)據(jù)是否對應(yīng)于入侵代碼。
22、 一種存儲用于實(shí)現(xiàn)檢測入侵代碼的方法的程序的計(jì)算機(jī)可讀記錄介 質(zhì),所述方法包括輸入對多個(gè)組中的每一組都不同的設(shè)置值;基于設(shè)置值產(chǎn)生免疫數(shù)據(jù)庫;和基于產(chǎn)生的免疫數(shù)據(jù)庫確定數(shù)據(jù)是否對應(yīng)于入侵代碼。
全文摘要
提供一種檢測入侵代碼的設(shè)備和方法。所述用于檢測入侵代碼的設(shè)備包括設(shè)置值輸入單元,輸入對每一組都不同的設(shè)置值;免疫數(shù)據(jù)庫產(chǎn)生單元,基于設(shè)置值產(chǎn)生免疫數(shù)據(jù)庫;和入侵代碼確定單元,基于產(chǎn)生的免疫數(shù)據(jù)庫確定數(shù)據(jù)是否對應(yīng)于入侵代碼。
文檔編號G06F21/00GK101236584SQ200710154078
公開日2008年8月6日 申請日期2007年9月13日 優(yōu)先權(quán)日2007年1月31日
發(fā)明者安兌臻, 樸兌濬, 鄭泰哲 申請人:三星電子株式會社