基于N-gram特征提取的惡意代碼聚類分析方法研究
發(fā)布時間:2021-11-08 12:20
隨著網絡的普及、計算機技術的日益進步,如今計算機信息安全面臨著很大的威脅,惡意代碼是其中主要的攻擊手段。數(shù)目不斷增長、技術不斷發(fā)展惡意代碼給人們的生活帶來了很多困擾,也導致了個人及企業(yè)的經濟損失,甚至威脅到國家安全。隨著惡意代碼的檢測技術和反檢測技術的不斷對抗發(fā)展,日益增多的惡意代碼給分析人員帶來巨大的壓力和嚴峻的挑戰(zhàn)。本文采用靜態(tài)分析的方法進行惡意代碼檢測。首先,引入基于N-gram語義特征提取方法對惡意代碼進行多元語義切分,映射為惡意代碼的Opcode操作碼特征。由于傳統(tǒng)N-gram方法進行特征提取的過程中,得到的特征序列長度固定,會丟失一些語義特征豐富的特征序列。因此,本文提出了一種基于混合N-gram的惡意代碼特征提取方法,將固定長度的特征短序列基于信息增益的方法進行多維特征組合,并選取其中最優(yōu)數(shù)據(jù)維度得到惡意代碼特征子集。針對傳統(tǒng)的特征選擇算法在選擇特征時數(shù)據(jù)維度過多,特征代表性不強,運行較長的局限性,本文引入皮爾遜相關系數(shù)特征選擇方法,并結合機器學習中的K-means聚類算法,提出一種面向多融合特征選擇的惡意代碼聚類檢測方法。并通過微軟數(shù)據(jù)集加以驗證,通過多融合特征選擇方法...
【文章來源】:沈陽理工大學遼寧省
【文章頁數(shù)】:67 頁
【學位級別】:碩士
【部分圖文】:
基于混合N-gramFig.3.1featureextractionmetho
-21-程序是由一條條指令組成的,但是直觀上并不能分辨出每條指令的具體內容。因此需要對程序進行反匯編,將惡意代碼的程序由二進制形式轉化為可閱讀的匯編形式。如下圖3.2所示,通過一個惡意樣本在經過反匯編得到惡意代碼匯編文件,從左到右三列分別為地址、Opcode操作碼、匯編語言。圖3.2惡意代碼的匯編文件結構Fig.3.2assemblyfilestructureofmaliciouscode3.2.2操作碼提取本文通過Opcode操作碼對惡意代碼進行聚類。為了對惡意代碼進行有效地聚類,通過將惡意代碼的操作碼轉換為特征向量的方法來提取操作碼的相關信息。首先需要從惡意代碼的文件中提取出操作碼序列。操作碼的提取主要是從一條完整的指令中提取出操作符。在指令中,操作符有很多類型,如數(shù)據(jù)傳輸指令、算術運算指令、邏輯運算指令、程序轉移指令等。由于本文使用的惡意代碼數(shù)據(jù)集中的操作碼太多,本文通過隨機抽樣的方法選出部分數(shù)據(jù)集,并設定K值(每一類惡意代碼抽取的數(shù)量),沒有達到K值的類別,取出該類全部數(shù)據(jù)。本文使用的數(shù)據(jù)集已通過反編譯的過程,可直接從反編譯后生成的文件中提取Opcode序列。“.ASM”文件中僅僅在以“.text”開頭的代碼段中含有操作碼,因此,提取操作碼序列時僅僅按行讀取匯編源程序“.ASM”文件中以“.text”開始的文件內容,并用十六進制的形式表示出所讀取的內容。通過正則表達式來與每行的內容進行匹配,利用表達式得到的內容包括一條完整的指令,指令包括兩個部分,分別是操作數(shù)和操作碼。利用從得到的指令中選取出Opcode,一直持續(xù)到將惡意代碼中所有的Opcode全部提取才結束,最后從一個惡意樣本中提取出它的Opcode序列。操作碼序列提取的流程如圖3.3所示。
-28-使用上述熵中的ijP定義,我們將聚類i的純度定義為iijP=max(P)。整個聚類劃分的純度為1KiiimpurityPm==,其中K是聚類的數(shù)目,m是整個聚類劃分所涉及到的成員個數(shù)。F-Measue即F值是常用的一種,其中包括查準率或者準確率(precision)和查全率或者召回率(recall)。F-Measue是信息檢索中常用的評價標準。F-Measue的公式如下:22(1)PRFPRβββ+=+(3-6)其中是β參數(shù),P是查準率,R是召回率。通常β取1,即:2PRFPR=+(3-7)設人工標記的分類簇為jP,聚類算法分類簇為iC,則:查準率:jiiiPCP(P,C)C∩=(3-8)召回率:jiijPCR(P,C)P∩=(3-9)F-Measure:2jijiijijiP(P,C)R(P,C)F(P,C)P(P,C)R(P,C)=+(3-10)通過圖3.7,可以清晰直觀的得出F值。jPjiP∩CiC圖3.7F值的示意圖Fig.3.7schematicdiagramofFvalue然后對所得到的F值進行加權平均,得到最終的一個直觀的F值。
【參考文獻】:
期刊論文
[1]半監(jiān)督聚類綜述[J]. 秦悅,丁世飛. 計算機科學. 2019(09)
[2]反調試技術綜述[J]. 吳極,王逍,肖植燦. 信息技術與網絡安全. 2019(09)
[3]基于GPU加速的惡意代碼字節(jié)碼特征提取方法研究[J]. 周紫瞻,王俊峰. 四川大學學報(自然科學版). 2019(02)
[4]基于歸一化文檔頻率的文本分類特征選擇方法[J]. 趙鴻山,范貴生,虞慧群. 華東理工大學學報(自然科學版). 2019(05)
[5]N-gram模型綜述[J]. 尹陳,吳敏. 計算機系統(tǒng)應用. 2018(10)
[6]Windows惡意代碼動態(tài)通用脫殼方法研究[J]. 郭文,王俊峰. 四川大學學報(自然科學版). 2018(02)
[7]軟件與網絡安全研究綜述[J]. 劉劍,蘇璞睿,楊珉,和亮,張源,朱雪陽,林惠民. 軟件學報. 2018(01)
[8]Software Backdoor Analysis Based on Sensitive Flow Tracking and Concolic Execution[J]. XU Xin,WANG Jiajie,CHENG Shaoyin,ZHANG Tao,JIANG Fan. Wuhan University Journal of Natural Sciences. 2016(05)
[9]一種基于明可夫斯基距離的加殼PE文件識別方法[J]. 吳麗娟,李陽,梁京章. 現(xiàn)代電子技術. 2016(19)
[10]采用互信息與隨機森林算法的用戶用電關聯(lián)因素辨識及用電量預測方法[J]. 趙騰,王林童,張焰,田世明. 中國電機工程學報. 2016(03)
博士論文
[1]隱蔽式網絡攻擊檢測關鍵問題研究[D]. 曹自剛.北京郵電大學 2015
[2]僵尸網絡對抗關鍵技術研究[D]. 王穎.北京郵電大學 2014
[3]移動應用程序檢測與防護技術研究[D]. 董航.北京郵電大學 2014
[4]惡意代碼行為挖掘關鍵技術研究[D]. 解培岱.國防科學技術大學 2013
[5]機器學習中特征選問題研究[D]. 孫鑫.吉林大學 2013
[6]程序惡意行為識別及其惡意性判定研究[D]. 張一弛.解放軍信息工程大學 2012
[7]網絡蠕蟲傳播與控制研究[D]. 張運凱.西安電子科技大學 2005
碩士論文
[1]勒索軟件追蹤溯源技術研究[D]. 王梓晗.北京郵電大學 2019
[2]主動半監(jiān)督K-means聚類算法研究及應用[D]. 呂峰.河北地質大學 2018
[3]基于惡意代碼API的靜態(tài)檢測技術研究[D]. 張瑋康.西安電子科技大學 2018
[4]基于網絡欺騙的網站防護技術研究[D]. 林建寶.北京郵電大學 2018
[5]基于自動化特征的惡意軟件檢測方法[D]. 查濤.大連理工大學 2018
[6]基于操作碼序列和機器學習的惡意程序檢測技術研究[D]. 李鵬飛.北京郵電大學 2017
[7]中文文本關鍵詞提取和文本聚類中聚類中心點選取算法研究[D]. 劉云.江蘇大學 2016
[8]用斯皮爾曼系數(shù)衡量網絡的度相關[D]. 張文耀.中國科學技術大學 2016
[9]惡意代碼聚類分析研究[D]. 汪姝瑋.國防科學技術大學 2016
[10]PE病毒文件聚類技術研究與實現(xiàn)[D]. 王忠珂.北京郵電大學 2016
本文編號:3483681
【文章來源】:沈陽理工大學遼寧省
【文章頁數(shù)】:67 頁
【學位級別】:碩士
【部分圖文】:
基于混合N-gramFig.3.1featureextractionmetho
-21-程序是由一條條指令組成的,但是直觀上并不能分辨出每條指令的具體內容。因此需要對程序進行反匯編,將惡意代碼的程序由二進制形式轉化為可閱讀的匯編形式。如下圖3.2所示,通過一個惡意樣本在經過反匯編得到惡意代碼匯編文件,從左到右三列分別為地址、Opcode操作碼、匯編語言。圖3.2惡意代碼的匯編文件結構Fig.3.2assemblyfilestructureofmaliciouscode3.2.2操作碼提取本文通過Opcode操作碼對惡意代碼進行聚類。為了對惡意代碼進行有效地聚類,通過將惡意代碼的操作碼轉換為特征向量的方法來提取操作碼的相關信息。首先需要從惡意代碼的文件中提取出操作碼序列。操作碼的提取主要是從一條完整的指令中提取出操作符。在指令中,操作符有很多類型,如數(shù)據(jù)傳輸指令、算術運算指令、邏輯運算指令、程序轉移指令等。由于本文使用的惡意代碼數(shù)據(jù)集中的操作碼太多,本文通過隨機抽樣的方法選出部分數(shù)據(jù)集,并設定K值(每一類惡意代碼抽取的數(shù)量),沒有達到K值的類別,取出該類全部數(shù)據(jù)。本文使用的數(shù)據(jù)集已通過反編譯的過程,可直接從反編譯后生成的文件中提取Opcode序列。“.ASM”文件中僅僅在以“.text”開頭的代碼段中含有操作碼,因此,提取操作碼序列時僅僅按行讀取匯編源程序“.ASM”文件中以“.text”開始的文件內容,并用十六進制的形式表示出所讀取的內容。通過正則表達式來與每行的內容進行匹配,利用表達式得到的內容包括一條完整的指令,指令包括兩個部分,分別是操作數(shù)和操作碼。利用從得到的指令中選取出Opcode,一直持續(xù)到將惡意代碼中所有的Opcode全部提取才結束,最后從一個惡意樣本中提取出它的Opcode序列。操作碼序列提取的流程如圖3.3所示。
-28-使用上述熵中的ijP定義,我們將聚類i的純度定義為iijP=max(P)。整個聚類劃分的純度為1KiiimpurityPm==,其中K是聚類的數(shù)目,m是整個聚類劃分所涉及到的成員個數(shù)。F-Measue即F值是常用的一種,其中包括查準率或者準確率(precision)和查全率或者召回率(recall)。F-Measue是信息檢索中常用的評價標準。F-Measue的公式如下:22(1)PRFPRβββ+=+(3-6)其中是β參數(shù),P是查準率,R是召回率。通常β取1,即:2PRFPR=+(3-7)設人工標記的分類簇為jP,聚類算法分類簇為iC,則:查準率:jiiiPCP(P,C)C∩=(3-8)召回率:jiijPCR(P,C)P∩=(3-9)F-Measure:2jijiijijiP(P,C)R(P,C)F(P,C)P(P,C)R(P,C)=+(3-10)通過圖3.7,可以清晰直觀的得出F值。jPjiP∩CiC圖3.7F值的示意圖Fig.3.7schematicdiagramofFvalue然后對所得到的F值進行加權平均,得到最終的一個直觀的F值。
【參考文獻】:
期刊論文
[1]半監(jiān)督聚類綜述[J]. 秦悅,丁世飛. 計算機科學. 2019(09)
[2]反調試技術綜述[J]. 吳極,王逍,肖植燦. 信息技術與網絡安全. 2019(09)
[3]基于GPU加速的惡意代碼字節(jié)碼特征提取方法研究[J]. 周紫瞻,王俊峰. 四川大學學報(自然科學版). 2019(02)
[4]基于歸一化文檔頻率的文本分類特征選擇方法[J]. 趙鴻山,范貴生,虞慧群. 華東理工大學學報(自然科學版). 2019(05)
[5]N-gram模型綜述[J]. 尹陳,吳敏. 計算機系統(tǒng)應用. 2018(10)
[6]Windows惡意代碼動態(tài)通用脫殼方法研究[J]. 郭文,王俊峰. 四川大學學報(自然科學版). 2018(02)
[7]軟件與網絡安全研究綜述[J]. 劉劍,蘇璞睿,楊珉,和亮,張源,朱雪陽,林惠民. 軟件學報. 2018(01)
[8]Software Backdoor Analysis Based on Sensitive Flow Tracking and Concolic Execution[J]. XU Xin,WANG Jiajie,CHENG Shaoyin,ZHANG Tao,JIANG Fan. Wuhan University Journal of Natural Sciences. 2016(05)
[9]一種基于明可夫斯基距離的加殼PE文件識別方法[J]. 吳麗娟,李陽,梁京章. 現(xiàn)代電子技術. 2016(19)
[10]采用互信息與隨機森林算法的用戶用電關聯(lián)因素辨識及用電量預測方法[J]. 趙騰,王林童,張焰,田世明. 中國電機工程學報. 2016(03)
博士論文
[1]隱蔽式網絡攻擊檢測關鍵問題研究[D]. 曹自剛.北京郵電大學 2015
[2]僵尸網絡對抗關鍵技術研究[D]. 王穎.北京郵電大學 2014
[3]移動應用程序檢測與防護技術研究[D]. 董航.北京郵電大學 2014
[4]惡意代碼行為挖掘關鍵技術研究[D]. 解培岱.國防科學技術大學 2013
[5]機器學習中特征選問題研究[D]. 孫鑫.吉林大學 2013
[6]程序惡意行為識別及其惡意性判定研究[D]. 張一弛.解放軍信息工程大學 2012
[7]網絡蠕蟲傳播與控制研究[D]. 張運凱.西安電子科技大學 2005
碩士論文
[1]勒索軟件追蹤溯源技術研究[D]. 王梓晗.北京郵電大學 2019
[2]主動半監(jiān)督K-means聚類算法研究及應用[D]. 呂峰.河北地質大學 2018
[3]基于惡意代碼API的靜態(tài)檢測技術研究[D]. 張瑋康.西安電子科技大學 2018
[4]基于網絡欺騙的網站防護技術研究[D]. 林建寶.北京郵電大學 2018
[5]基于自動化特征的惡意軟件檢測方法[D]. 查濤.大連理工大學 2018
[6]基于操作碼序列和機器學習的惡意程序檢測技術研究[D]. 李鵬飛.北京郵電大學 2017
[7]中文文本關鍵詞提取和文本聚類中聚類中心點選取算法研究[D]. 劉云.江蘇大學 2016
[8]用斯皮爾曼系數(shù)衡量網絡的度相關[D]. 張文耀.中國科學技術大學 2016
[9]惡意代碼聚類分析研究[D]. 汪姝瑋.國防科學技術大學 2016
[10]PE病毒文件聚類技術研究與實現(xiàn)[D]. 王忠珂.北京郵電大學 2016
本文編號:3483681
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3483681.html
最近更新
教材專著