基于家族基因碼的惡意代碼快速歸類方法
【專利摘要】本發(fā)明公開了一種基于家族基因碼的惡意代碼快速歸類方法,在多個行為層面上采用行為出現頻數對惡意代碼行為進行特征表示,基于海量惡意代碼樣本間的聚集性和差異性生成家族基因碼,利用家族基因碼與新增惡意代碼特征向量的直接匹配實現惡意代碼的準確和快速歸類。本發(fā)明方法的優(yōu)點在于:從多個行為層面刻畫惡意代碼的行為信息,利用相似惡意代碼間的聚集性和差異性生成家族基因碼,顯著地提高了對惡意代碼家族進行表示的準確性及普適性;同時,采用將惡意代碼特征向量與家族基因碼直接匹配的方法能夠有效地提高惡意代碼比對和歸類的速度;此外,整個過程的算法均高度自動化,無需人為干預,增加了本方法的穩(wěn)定性及準確性。
【專利說明】基于家族基因碼的惡意代碼快速歸類方法
【技術領域】
[0001] 本發(fā)明涉及計算機安全防護技術,特別涉及一種計算機惡意代碼歸類方法。
【背景技術】
[0002] 隨著社會的進步與科技的發(fā)展,計算機已經滲透到了人們生活的方方面面,越來 越多的個人信息(如圖片、視頻、聊天記錄等)和敏感信息(如銀行賬號、商業(yè)資料等)被 存儲于計算機之中。同時,近年來W盜用、破壞該些信息為主要目的的惡意代碼數量急劇增 力口,且呈現出變種多、智能化的特點,該使得計算機惡意代碼的識別和分類問題引起各國政 府和民眾的極大重視。
[0003] 現有的惡意代碼歸類方法主要從惡意代碼靜態(tài)特征或動態(tài)特征出發(fā),大多集中在 對已知的惡意代碼的聚類分類上,對新增惡意代碼的分類效果較差,同時惡意代碼行為的 特征分析形式單一且樣本數量較少,缺乏準確性和普適性。
【發(fā)明內容】
[0004] 本發(fā)明的目的是提供一種可W快速且準確地對計算機惡意代碼進行歸類的方法, 特別是一種利用海量惡意代碼樣本經過聚類后得到的惡意代碼家族基因碼來實現對新增 惡意代碼快速準確歸類的方法。
[0005] 為達到W上目的,本發(fā)明是采取如下技術方案實現的:
[0006] -種基于家族基因碼的惡意代碼快速歸類方法,其特征在于,包括下述兩大步 驟:
[0007] 第一步,惡意代碼家族基因碼的生成,包括下述分步驟:
[0008] (1)獲取由M個惡意代碼樣本構成的惡意代碼樣本集,其中,M至少為1000萬;
[0009] (2)從惡意代碼樣本中提取行為信息;
[0010] (3)對所有惡意代碼樣本的各種行為出現的頻數進行統(tǒng)計排序,選擇頻數總和不 小于3的行為作為刻畫惡意代碼樣本的行為向量;
[0011] (4)使用行為向量的每個元素在惡意代碼行為信息中出現的頻數構成該惡意代碼 樣本的特征向量;
[0012] (5)采用曼哈頓距離算法計算惡意代碼樣本特征向量之間的距離,形成惡意代碼 樣本集的距離矩陣D = WuImxm,其中,du表示惡意代碼樣本i到惡意代碼樣本j的距離, 矩陣D關于對角線對稱;
[0013] (6)基于惡意代碼樣本集的距離矩陣D,從惡意代碼樣本集中提取出惡意代碼家 族基因碼,W方便生成惡意代碼家族。
[0014] 第二步,惡意代碼快速歸類,包括下述分步驟:
[0015] (1)針對新增的惡意代碼樣本,提取其行為信息,與在惡意代碼樣本集中得到的行 為向量進行比對,將行為向量中每個元素在新增惡意代碼樣本的行為信息中出現的頻數作 為該樣本的特征向量;
[0016] (2)將新增惡意代碼樣本的特征向量與惡意代碼家族基因碼進行匹配,對新增惡 意代碼所屬的類別進行判定。
[0017] 上述方法中,第一步(2)中所述惡意代碼的行為信息是指惡意代碼在執(zhí)行過程中 對計算機資源的訪問行為,包括API導入表的訪問行為、文件操作行為、進程操作行為、注 冊表操作行為、動態(tài)鏈接庫調用行為、鉤子函數調用行為。
[001引第一步(3)中所述選擇頻數總和不小于3的行為作為刻畫惡意代碼樣本的行為向 量,其具體步驟為:
[0019] (1)對惡意代碼樣本集中每個樣本的行為信息進行統(tǒng)計分析,利用出現過的所有 行為構成初始特征集;
[0020] (2)計算初始特征集中每個元素在所有樣本的行為信息中出現頻數的總和,排序 并去除出現頻數總和為1和2的元素,使用剩余的元素作為刻畫惡意代碼樣本的特征。
[0021] 第一步化)中所述從樣本集中提取惡意代碼家族基因碼的具體方法為:
[002引1)將惡意代碼樣本間的距離dy(iy)進行降序排列,取排列結果的中值作為截斷 距離屯;
[0023] 2)采用高斯核函數計算每個惡意代碼樣本的聚集度P 1,表示該樣本被它的鄰居 樣本的包裹程度,計算公式為:
[0024]
【權利要求】
1. 一種基于家族基因碼的惡意代碼快速歸類方法,其特征在于,包括下述兩大步驟: 第一步,惡意代碼家族基因碼的生成,包括下述分步驟: (1) 獲取由M個惡意代碼樣本構成的惡意代碼樣本集,其中,M至少為1000萬; (2) 從惡意代碼樣本中提取行為信息; (3) 對所有惡意代碼樣本的各種行為出現的頻數進行統(tǒng)計排序,選擇頻數總和不小于 3的行為作為刻畫惡意代碼樣本的行為向量; (4) 使用行為向量的每個元素在惡意代碼行為信息中出現的頻數構成該惡意代碼樣本 的特征向量; (5) 采用曼哈頓距離算法計算惡意代碼樣本特征向量之間的距離,形成惡意代碼樣本 集的距離矩陣D = {ddMXM,其中,(^表示惡意代碼樣本i到惡意代碼樣本j的距離,矩陣 D關于對角線對稱; (6) 基于惡意代碼樣本集的距離矩陣D,從惡意代碼樣本集中提取出惡意代碼家族基 因碼,以方便生成惡意代碼家族; 第二步,惡意代碼快速歸類,包括下述分步驟: (1) 針對新增的惡意代碼樣本,提取其行為信息,與在惡意代碼樣本集中得到的行為向 量進行比對,將行為向量中每個元素在新增惡意代碼樣本的行為信息中出現的頻數作為該 樣本的特征向量; (2) 將新增惡意代碼樣本的特征向量與惡意代碼家族基因碼進行匹配,對新增惡意代 碼所屬的類別進行判定。
2. 根據權利要求1所述的基于家族基因碼的惡意代碼快速歸類方法,其特征在于,第 一步(2)中所述惡意代碼的行為信息是指惡意代碼在執(zhí)行過程中對計算機資源的訪問行 為,包括API導入表的訪問行為、文件操作行為、進程操作行為、注冊表操作行為、動態(tài)鏈接 庫調用行為、鉤子函數調用行為。
3. 根據權利要求1所述的基于家族基因碼的惡意代碼快速歸類方法,其特征在于,第 一步(3)中所述選擇頻數總和不小于3的行為作為刻畫惡意代碼樣本的行為向量,其具體 步驟為: (1) 對惡意代碼樣本集中每個樣本的行為信息進行統(tǒng)計分析,利用出現過的所有行為 構成初始特征集; (2) 計算初始特征集中每個元素在所有樣本的行為信息中出現頻數的總和,排序并去 除出現頻數總和為1和2的元素,使用剩余的元素作為刻畫惡意代碼樣本的特征。
4. 根據權利要求1所述的基于家族基因碼的惡意代碼快速歸類方法,其特征在于,第 一步(6)中所述從樣本集中提取惡意代碼家族基因碼的具體方法為: 1) 將惡意代碼樣本間的距離c^(i〈j)進行降序排列,取排列結果的中值作為截斷距離 dc ; 2) 采用高斯核函數計算每個惡意代碼樣本的聚集度Pi,表示該樣本被它的鄰居樣本 的包裹程度,計算公式為:
5) 針對每個惡意代碼樣本,計算該惡意代碼樣本作為家族基因碼的決策值,該決策值 為該惡意代碼樣本的聚集度和差異度的乘積; 6) 將每個惡意代碼樣本作為家族基因碼的決策值與預設的閾值e進行比較,若大于 該閾值,則判定該樣本作為一個家族基因碼,并存儲于數據庫中。
5. 根據權利要求1所述的基于家族基因碼的惡意代碼快速歸類方法,其特征在于,第 二步(2)中所述根據特征向量與惡意代碼家族基因碼的匹配結果進行新增惡意代碼樣本 類別判定的具體方法為:將新增惡意代碼樣本特征向量與數據庫中每一個惡意代碼家族基 因碼進行匹配,得到與該惡意代碼家族基因碼的相似度值,若存在相似度值大于預設閾值 的情況,將該惡意代碼樣本歸類為最大相似度值對應的惡意代碼家族;若不存在相似度值 大于預設閾值的情況,將該惡意代碼樣本歸類為新增惡意代碼家族。
6. 根據權利要求1所述的基于家族基因碼的惡意代碼快速歸類方法,其特征在于,第 一步(4)中所構成的惡意代碼樣本特征向量,其存儲方法為:使用索引矩陣進行存儲,在索 引矩陣中僅記錄特征向量中大于〇小于10的元素位置。
【文檔編號】G06F17/30GK104331436SQ201410571621
【公開日】2015年2月4日 申請日期:2014年10月23日 優(yōu)先權日:2014年10月23日
【發(fā)明者】沈超, 程顥, 張澤華, 管曉宏 申請人:西安交通大學