




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
PAGE4數據挖掘和惡意軟件檢測黃宗文,167215392016-11-20摘要: 由于計算機網絡的發展以及惡意程序編碼水平的提高,傳統的惡意程序檢測技術的不足已經越來越明顯,很難滿足人們對信息安全的需求。基于行為的惡意程序檢測技術是利用惡意程序的特有行為特征來檢測程序惡意性的方法,它能很好地檢測未知惡意程序。這種惡意程序檢測技術可以很好地適應惡意程序逐漸呈現的新特點,無疑具有巨大的優越性和廣闊的發展空間,應該在今后相當長時間內代表著惡意程序檢測技術的發展趨勢。本文介紹了基于靜態分析的惡意軟件檢測,和基于動態行為分析的惡意軟件檢測,并各自介紹了它們的優劣。關鍵字:數據挖掘;惡意軟件檢測;特征提取;靜態分析;動態行為分析;分類DataminingandmalwaredetectionAbstract:Withthedevelopmentofcomputernetworkandimprovementofmalwareprogramming,traditionalmalwaredetectionmethodsseemobviouslyinadequate,failingtosatisfytheneedofpeopleforinformationsecurity.Themalwaredetectionbasedonbehaviorisamethodwhichachievesdetectionthroughmakinguseofthepeculiarbehaviorfeaturesofmalware.Itdoeswellindetectingtheunknownmalware.Thismalwaredetectiontechniquecouldbeadjustedtotheemergingnewfeaturesofmalware,whichhasgreatsuperiorityandbroadspacefordevelopmentundoubtedly.Consequently,itcouldbethedevelopmenttendencyofmalwaredetectioninalongtime.Thisarticledescribesmalwaredetectionbasedofstaticanalysis,andmalwaredetectionbasedondynamicbehavioranalysis,anddescribestheirprosandcons.Keywords:Datamining;Malwaredetection;Featureextraction;Staticanalysis;Dynamicbehavioranalysis;Classification隨著社會信息化程度的不斷提高,工業、國防、教育、金融等社會各行各業的信息越來越依賴于計算機和互聯網。然而頻繁發生的網絡安全事件給人們敲了安全警鐘。計算機與網絡安全問題正成為人類信息化所面臨的巨大挑戰,直接威脅著個人、企業和國家的利益。而目前計算機與網絡安全的主要威脅隱患之一就是惡意程序。近年來,隨著編程技術的普及,惡意程序制作的門檻逐步降低,惡意程序的制作呈現機械化、模塊化和專業化特征。在惡意程序灰色產業鏈帶來的巨大利益的驅使下,惡意程序產業正朝著規模化發展。惡意程序的爆炸式增長,在使企業及用戶遭受到巨大的經濟損失的同時,也給惡意程序分析人員帶來了巨大的工作壓力。傳統的惡意程序分析技術已經遠遠不能滿足新的安全需求。一方面,基于特征碼的惡意程序分析技術,需要對每一個惡意程序的特征碼進行提取,對于目前每天有成千上萬的惡意程序產生的情況,提取特征碼的工作量是巨大的且效率不高。另一方面,用戶端需要定期的升級最新的病毒庫,隨著新惡意程序的爆炸式增長,病毒特征庫的容量也要大幅增長,長此以往會拖累檢測分析系統的速度。因此如何對新的惡意程序樣本快速地進行檢測和分類,已成為越來越多的專業計算機安全廠商所關注的焦點。1惡意軟件和檢測的現狀近年來,隨著編程技術的普及,惡意程序制作的門檻逐步降低,惡意程序的制作呈現機械化、模塊化和專業化特征。在惡意程序灰色產業鏈帶來的巨大利益的驅使下,惡意程序產業正朝著規模化發展。從2008年開始惡意程序大規模爆發,每年新增木馬病毒等惡意程序數量級從數十萬級躍升至千萬級。圖12003年至2010年間惡意軟件的數量增加Fig1Increasedvolumeofmalwarefrom2003to2010自從惡意程序出現以來,惡意程序的檢測技術一直是計算機安全領域關注的焦點。根據惡意程序分析工具技術模塊不同,惡意程序檢測方法通常分為靜態和動態方法。在靜態方法領域,2001年,在文件二進制特征檢測的基礎上首次提出了基于數據挖掘的惡意程序檢測方法[[[]]MatthewG.Schultz,EleazarEskin,ErezZadok.DataMiningMethodsforDetectionofNewMaliciousExecutables[C].IEEEComputerSociety,2001:38-49.];之后,借鑒入侵檢測、惡意程序檢測與分類系統設計與實現中的常用方法,越來越多的研究集中在利用數據挖掘方法對惡意程序二進制文件信息進行學習建模,然后將學習到的模型用于未知惡意程序的檢測。MihaiChristodorescu在惡意程序靜態分析[[[]][[]]MatthewG.Schultz,EleazarEskin,ErezZadok.DataMiningMethodsforDetectionofNewMaliciousExecutables[C].IEEEComputerSociety,2001:38-49.[[]]UsukhbayarBaldangombo,NyamjavJambaljav.AStaticMalwareDetectionSystemUsingDataMiningMethods[J].InternationalJournalofArtificialIntelligence&Applications,Vol.4,No.4,July2013.2004年,J.Xu等人在一次國際會議上的會議論文[[[]]J.Y.Xu,A.H.Sung,P.Chavez,andS.Mukkamala.PolymorphicMaliciousExecutableScannerbyAPISequenceAnalysis[J].FourthInternationalConferenceonHybridIntelligentSystems,2004:42-45.]中提出應用程序的API調用序列大致反映了程序行為。因為應用程序通過API調用獲取系統服務和訪問系統資源,所以分析API調用可以間接地反映程序的行為。J.Xu等人基于此做了大量行為分析實驗后提出了一種新的惡意程序檢測方法:通過對比已知惡意程序和未知可疑程序的API調用序列,并對兩類API調用序列做相似化度量分析,從而確定未知可疑程序的惡意程度。之后,R.Koike等人利用上述方法開發了一套可以自動檢測未知惡意程序行為的系統[[[]]R.Koike,N.Nakaya,andY.Koi.DevelopmentofSystemfortheAutomaticGenerationofUnknownVirusExterminationSoftware[J].inInternationalSymposiumonApplicationsandtheInternet,2007:84-88.]。由德國的曼海姆大學分布式系統實驗室開發的CWSandbox是惡意程序行為檢測技術發展過程中一個具有里程碑意義的產品,它不僅具有行為捕獲能力,而且可以生成檢測報告。CWSandbox引入了虛擬機技術,讓可疑程序在虛擬環境中運行,從而避免了可疑程序可能造成的潛在危害。并且它采用了APIhook技術提取程序運行過程中API調用序列。CWSandBox論文有一個重要貢獻,它清楚的用實驗比較了用戶態和內核態APIhook的優缺點。內核SSDThook具有很高的檢測率,不易被反檢測技術偵測到;用戶態hook實現簡單,具有較強的通用性和穩定性。CWSandBox采用了用戶態inlinehook的方式的來采集程序行為特征。CWSandBox實驗得知絕大多數惡意程序為了實現大量傳播都是直接調用的標準WindowsAPI,因此采用用后臺inlinehook的方式不會影響系統檢測率。Anubis是一款基于開源模擬器QEMU的優秀的惡意程序行為監控系統,TTAnalyze是其前身。該系統采用了與CWSandbox截然不同的技術原理,在QEMU的虛擬機監控層攔截API調用。該系統有全自動化,無需修改被監控程序源代碼,使用全系統模擬器難以被惡意程序分檢測等優點。但是Anubis和CWSandBox僅僅是根據系統采集到的API數據生成程序行為報告提供給分析人員參考,并沒有對采集到的行為進行深度挖掘。2009年胡永濤等人發表的《Win32環境下惡意代碼行為分析實驗及思考》[[[]]胡永濤,姚靜晶,王國豐.Win32環境下惡意代碼行為分析實驗及思考[C].第六屆中國信息與通信安全學術會議,2009.]文章中,全面總結了Windows平臺上[[]]J.Y.Xu,A.H.Sung,P.Chavez,andS.Mukkamala.PolymorphicMaliciousExecutableScannerbyAPISequenceAnalysis[J].FourthInternationalConferenceonHybridIntelligentSystems,2004:42-45.[[]]R.Koike,N.Nakaya,andY.Koi.DevelopmentofSystemfortheAutomaticGenerationofUnknownVirusExterminationSoftware[J].inInternationalSymposiumonApplicationsandtheInternet,2007:84-88.[[]]胡永濤,姚靜晶,王國豐.Win32環境下惡意代碼行為分析實驗及思考[C].第六屆中國信息與通信安全學術會議,2009.2惡意軟件惡意軟件是指在目標計算機上運行的,執行一系列攻擊者蓄意安排的攻擊操作,可以破壞程序和數據完整性、可用性和計算系統機密性的程序代碼和指令集合,傳統惡意軟件包括木馬、病毒、蠕蟲和后門程序等。2.1病毒計算機病毒的理論早在1949年被提出。最早的科學定義出現在FrederickCohen的博士論文“計算機病毒實驗”中,他將計算機病毒定義為一種形式化的數學模型。簡單的說,計算機病毒就是一種可以通過修改別的程序,將自身復制進其中,使其感染,以達到傳染目的的計算機程序[[[]]P.Szor,TheArtofComputerVirusResearchandDefense[M].AddisonWeslyforSymantecPress,2005]。計算機病毒傳染的特性和生物病毒類似,因此,它被命名為“computervirus”。計算機病毒的最重要特性就是傳播性[[[]]P.Szor,TheArtofComputerVirusResearchandDefense[M].AddisonWeslyforSymantecPress,2005[[]]王曉勇.計算機惡意代碼傳播及防御技術研究[D].西南大學,2007年5月.2.2木馬特洛伊木馬的名字起源于古希臘傳說中的特洛伊戰爭。它是這樣的一種惡意軟件:除了良性程序所具有的基本功能外,還有一些不易被發覺的破壞作用。通常它都偽裝成一般的無害的程序,并欺騙用戶去執行它,從而進行一些隱蔽的破壞行為,比如可以在被感染的機器上打開網絡端口,使木馬的創建者遠程執行命令。和病毒,蠕蟲不同的是,木馬不會進行自我復制傳播。它不需要修改或感染其他程序軟件,而是安裝一個獨立的可執行程序[[[]][[]]R.A.Grimes,Maliciousmobilecode:virusprotectionforWindows[M].Sebastopol,CA,USA:O’Reilly&Associates,Inc.,2001.2.3蠕蟲蠕蟲是一種能夠自我復制傳播,并能夠通過網絡連接將其自身拷貝感染到其他計算機上的程序。蠕蟲進入計算機后,一旦被激活,就會像計算機病毒那樣開始工作,并尋找更多的計算機來進行感染,并且利用其它被感染的計算機,不斷進行擴散。除了傳播之外,它還會進行一些破壞活動,對計算機植入木馬程序或者執行一些分裂性或者破壞性的活動。蠕蟲可以進行網絡傳播,借助的工具包括電子郵件,遠程執行,遠程登錄等等。另外,它與計算機病毒有一些相似之處,都分為潛伏,傳播,觸發,執行幾個階段。而與其不同的就是它具備通過網絡傳播的能力。2.4后門后門是這樣一種惡意軟件,它允許攻擊者繞過正常的系統安全防護機制,通過非授權或者不經過系統登錄,就能夠獲取對系統的遠程連接或者控制權限。攻擊者在系統上安裝后門程序,主要是為了控制系統,為進一步的攻擊提供更加便捷的連接操作。2.5RootkitRootkit是這樣一種惡意軟件,它被安裝在系統中,并且可以使攻擊者以管理員或root權限訪問系統[[[]]雙世勇.WindowsRootkit檢測方法研究[D].解放軍信息工程大學,2005年4月.]。由于管理員權限可以使用操作系統中的任何功能和服務,因此它可以使攻擊者完全控制整個系統。并且rootkit對主機的訪問或修改操作都以極為隱蔽的方式進行。Rootkit能夠通過修改操作系統來隱藏自己,也可以隱藏自己對操作系統進行的修改,或是擦除自己訪問系統留下的痕跡。用戶無法發現rootkit的存在,也不知道系統被訪問或修改過了。根據重啟操作系統后是否還能繼續工作進行分類,rootkit分為持續的rootkit和基于內存的rootkit。前者在系統每一次啟動都會被激活;后者沒有持續性,系統重啟后就會失效。根據執行模式,rootkit又可被分為用戶模式[[]]雙世勇.WindowsRootkit檢測方法研究[D].解放軍信息工程大學,2005年4月.2.6僵尸網絡Bots的名字起源于robot。一旦bots感染了某一臺計算機,這臺計算機就被稱為網絡僵尸。Bots在被感染計算機上將進行潛伏,而不做任何動作,直到它收到Bots操縱者發出的某種命令。Bots操縱者是同個僵尸網絡中,所有僵尸都連接到一個遠程的web服務器,如FTP服務器或IRC服務器,它可以對這些網絡僵尸發出遠程指令。還有一些僵尸網絡采用P-2-P的方式工作。僵尸網絡往往被用于發起大規模的DDoS攻擊,散發垃圾郵件,或者直接盜取被感染機器的敏感信息。商用或軍用的僵尸網絡會產生更大的威脅,因此出現了黑客出租bots的盈利方式。當前僵尸網絡已經成為網絡安全領域最具挑戰性的問題之一。由于它數量巨大而且分布廣泛而無序,給監控和防護帶來了很大難度。2.7間諜軟件、廣告軟件Spyware[[[]]雷程煒.間諜軟件的隱藏機制及其檢測技術[D][[]]雷程煒.間諜軟件的隱藏機制及其檢測技術[D].電子科技大學,2007年4月.3惡意軟件檢測惡意軟件的檢測是惡意軟件研究領域的重點問題,在惡意檢測之前進行的行為分析只是一個過程和手段,其目的是為了使惡意軟件判定的效果更好。在行為分析中,我們已經從惡意軟件中提取中信息,并對它建模。在判定過程中,通常的做法是進行特征模型的匹配。比如,對已有的惡意軟件集合建立特征庫。在對未知軟件進行行為分析后,將分析到的特征模型和特征庫中的特征模型一一匹配,如果匹配成功,則判定此軟件為惡意軟件。圖2惡意軟件檢測流程Fig2Malwaredetectionprocess3.1基于靜態特征的檢測傳統殺毒軟件進行病毒檢測的過程。首先在行為分析時分析程序的二進制序列或者內存鏡像,并從中提取特征碼,它往往是一段特定的惡意二進制序列,這個惡意序列很少在非惡意程序中出現。通常,這個特定的序列是由反病毒專家人工提取的。也使用一些在靜態分析時自動提取特征碼的方法進行提取。在進行惡意判定時,我們用這個特定的二進制序列和已有的二進制序列特征庫進行串匹配或者正則表達式匹配,如果匹配成功,則判定此程序為惡意程序,否則判定為非惡意程序。圖3傳統惡意軟件檢測流程Fig3Traditionalmalwaredetectionprocess樣本分為惡意軟件樣本和正常文件樣本,如果應用在反病毒產品中,應獲取足夠多的具有代表性的訓練樣本,考慮到只是驗證方法的可行性,我們從經過殺毒軟件檢測無病毒的XP系統windows目錄和ProgramFiles目下獲取了正常PE文件,從VXHeavensVirus網站下載了惡意軟件。靜態的信息是指從程序的源代碼,程序的二進制執行文件,或者是程序的反匯編碼中獲取程序信息。靜態信息獲取的缺點在于靜態信息通常是冗余的。惡意軟件制作者為了增加惡意軟件檢測的難度,會在程序源代碼中加入很多垃圾信息,使其中的有效信息提取變得更加困難,所以我們在特征提取的時候,我們使用決策樹算法,把特征選擇算法本身作為組成部分嵌入到學習算法中。去掉冗余的特征,留下比較有代表性的PEheader20個特征和DLL30個特征。表1PE標題的排名最靠前的20個特征的列表Tab1Listofthetopranked20featuresofthePEheader表2通過調用頻率列出排名最靠前的30個DLL名稱Tab2Listofthetopranked30DLLnamesbycallingfrequency我們使用的數據集是從VXHeavensVirus獲得的236756惡意軟件和10592個windows良性可執行軟件組成共247348個軟件的數據集。采用SVM,J48,NB分類器,10倍交叉驗證所得的結果。表3各單項及組合特征的系統性能列表Tab3ListofthesystemperformancebyindividualandcombinedfeaturesDR(DetectionRate)=QUOTETPTP+FN×100%FPR(FalsePositiveRate)=QUOTEFPTN+FP×100%OA(OverallAccuracy)=QUOTETP+TNTP+TN+FP+FN×100%TP真正類,FP假正類,TN真負類,FN假負類。表格中顯示的結果,決策樹分類器效果最佳。3.2基于動態行為特征的檢測作者在行為分析[[[]]李劍.惡意軟件行為分析及變種檢測技術研究[D].杭州電子科技大學,2009年11月[[]]李劍.惡意軟件行為分析及變種檢測技術研究[D].杭州電子科技大學,2009年11月.圖4基于行為分析的惡意軟件檢測流程Fig4Malwaredetectionprocessbasedonbehavioranalysis圖5基于軟件虛擬化的行為分析系統架構Fig5BehavioralAnalysisSystemArchitectureBasedonSoftwareVirtualization動態的程序信息獲取[[[]]M.ZubairShafiq,S.MominaTabish,FauzanMirza,MuddassarFarooq.PE-Miner:RealtimeMiningof‘StructuralInformation’toDetectZero-DayMaliciousPortableExecutables[J].InformationSecurityResearchGroup,5thFebruary,2009.]是指在程序運行時,捕獲程序的運行狀態所獲得的程序信息。這些運行狀態包括程序的CPU執行指令序列,系統調用(systemcall),應用程序接口(API[[]]M.ZubairShafiq,S.MominaTabish,FauzanMirza,MuddassarFarooq.PE-Miner:RealtimeMiningof‘StructuralInformation’toDetectZero-DayMaliciousPortableExecutables
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 河北省邢臺市本年度(2025)小學一年級數學部編版摸底考試((上下)學期)試卷及答案
- 給排水預埋施工要求
- 什么是閱讀教學設計
- 公共營養師測試題+答案
- 云南省文山州馬關縣一中2025年高三下學期第六次檢測英語試卷含解析
- 職業技術學校數控技術應用專業人才培養方案(2024年)
- 化工總控工模擬題與參考答案
- 職業技術學院2024級國際經濟與貿易專業中德合作項目人才培養方案
- 河湖治理工程水環境監測與評價考核試卷
- 農產品加工設備能耗評價與節能考核試卷
- 2024年江蘇省南京市中考物理試卷真題(含答案)
- DL-T 1476-2023 電力安全工器具預防性試驗規程
- 禁毒學校青少年預防遠離毒品教育模板課件
- 合同交底范本課件
- 阿瑪松氣吸式精量播種機課件
- 汽車4S店售后回訪流程
- 試卷講評課市公開課一等獎市公開課一等獎省名師優質課賽課一等獎課件
- 新人教版八年級下冊《生物》期中試卷及答案
- DB32-T 3897-2020地方政府規章立法規范-(高清現行)
- 質量管理手冊-非發酵性豆制品
- 新建焦化廠工藝、設備選型經驗總結
評論
0/150
提交評論