?

基于數據挖掘與機器學習的惡意代碼檢測技術研究

2020-09-10 07:22付大亮
信息技術時代·上旬刊 2020年4期
關鍵詞:機器學習檢測技術數據挖掘

摘要:信息化技術是當前社會發展的標志產物,也是推動信息化社會建設的標桿。而在信息化發展過程中,信息安全是影響其發展的瓶頸之一,如計算機病毒的侵入、釣魚網站的設立、木馬盜號等。對用戶個人隱私、企業業務信息安全、國家信息安全等造成嚴重影響。由于在信息技術發展的進程中,離不開軟件的使用,而軟件目前更加注重人工編寫,這種業態是缺陷代碼、惡意代碼產生的根本原因,因此有效的檢測及防范惡意代碼生成成為當前信息安全檢測技術發展方向之一。本文結合傳統檢測技術,重點對檢測技術的速度及效率等問題進行分析,實現快速、智能化檢測,研究中基于數據挖掘與機器學習的惡意代碼檢測技術理論,為解決相關技術的實際應用提供一定理論參考。

關鍵詞:數據挖掘;機器學習;惡意代碼;檢測技術

引言

現代社會快速發展進程中,信息技術發展迅速,伴隨著計算機技術和互聯網技術的發展,信息技術已經深深的融入到人們的日常生活中,同時信息技術的發展,也提升了人們日常工作、休閑和娛樂的氛圍,為互聯網技術的快速發展奠定了堅實的基礎。但是,計算機技術與互聯網技術的快速發展,也為惡意代碼的滋生提供了良好的傳播空間和環境,惡意代碼數量的增加,使其傳播速度逐步的加快。依據互聯網應急管理中心發布的《2018年中國互聯網安全報告》顯示,2018年全年惡意程序傳播事件達46,578,698次,其中惡意程序下載鏈接778,388個。惡意代碼的傳播數量逐步增加,不僅會導致系統中的相關網絡結構受到一定的影響,同時惡意代碼可能泄露數據,甚至會損壞硬件結構,導致企業和個人的正常生產生活受到影響,甚至帶來較大的經濟損失。因此,要充分結合惡意代碼的檢測與處理技術,智能化檢測惡意代碼,降低惡意代碼帶來的危害,防止造成信息技術的干擾。惡意代碼檢查技術已成為當前信息安全技術研究和發展的重要熱點話題。

1惡意代碼相關分析與檢測技術理論

1.1惡意代碼的定義與分類

1.1.1木馬

木馬是安全威脅的最多的惡意代碼類型之一。從名字上看,它是一種非法入侵計算機,并獲得遠程控制權限的一種惡意代碼,其往往偽裝成正常的程序,誘導用戶進行下載,一旦用戶下載了裝有木馬的程序,木馬就會在計算機上運行,收集信息、接受黑客指令等。

1.1.2孺蟲

孺蟲是一種不斷的自我修復、復制病毒,它能利用電子郵件等網絡手段實現惡意代碼的傳播。蠕蟲類型很多,有的惡意消耗資源、有的收集信息等。

1.2.3病毒

當前,大部分人都習慣性的將惡意代碼統稱為病毒,其實嚴格意義上,病毒只是惡意代碼的一個類型,病毒從名稱來看,只是來源于對應的科幻小說,并通過一段時間的修復和修改技術,增加自身的副本,并將相應的程序感染到對應的程序代碼中。

1.2惡意代碼的檢測技術

1.2.1基于特征碼的檢測技術

基于特征碼的檢測技術主要利用惡意代碼的靜態分析,獲取惡意代碼的特征信息,并結合十六進制的字節序列,按照字符串序列結構,對該特征體系下的惡意代碼進行有效的檢測。檢測流程如下圖1所示。

1.2.2基于啟發式的檢測技術

基于啟發式的檢測技術主要是通過對惡意代碼的分析,從而獲取惡意代碼中所通用的操作序列或者結構形式,并依據一般性操作的存在形式(如修改某個文件的結構、刪除相關系統性文件等),對每一個的行為操作序列或者結構的模式按照危險性程序的排序,實現不同危險程序的加權值,在檢測實施的過程中,將對應操作行為中相關序列及結構模式的加權值進行總和分析,如果超過了某個特定的閾值,則可判定其為惡意代碼。

1.2.3基于檢驗和的檢測技術

檢驗和是一種信息保護技術,如Hash值、循環冗余碼等。只要文件發生標動,校驗和就會改變。通過定期性的文件檢查,對文件的完整性檢測分析,來發現異常改變的文件。

2基于數據挖掘與機器學習的檢測技術

惡意代碼在信息技術應用的過程中,呈現出數量不斷增多,出現的周期逐步縮短的特征,加上一定迷惑性技術的應用,導致檢測的難度越來越大,因此如何有效的獲取智能化的惡意代碼檢測技術,是當前惡意代碼檢測領域中發展的重點內容。在數據挖掘與機器學習技術的應用中,都可通過樣本的特征進行分析,通過自動學習病毒融合規律性的發展模式,將學習到的基礎性模式運用到病毒分類檢測與分析,實現監測的自動化與智能化。其檢測原理如圖2所示。

2.1樣本的選擇與劃分

數據挖掘與機器學習的惡意代碼的檢測技術中,主要包含有訓練與測試兩個步驟,因此在獲取數據集合的過程中,應對數據進行有效的劃分,主要可劃分為訓練集和數據集。主要的劃分方式有:

一種是k重交叉驗證的方式,k重交叉驗證即將實驗數據集劃分為k等份,其中k-1份作為訓練集,剩下的1份作為測試集,然后從訓練集中再取出1分作為測試集,將前面的1份測試集再加入訓練集之中,如此重復k次。

另外一種,利用固定性質的比例模式,將即將數據集按照一定的比例,如3:1的方式進行有效劃分,主要可區分為訓練集與測試集,并通過兩種模式的劃分,對其應用過程中的劃分方式進行分析。其中,采用k重交叉驗證的方式能夠獲取均值,并采用k重取均值的方式,實現分類精度的進一步提高。

2.2特征表示與提取

在挖掘與學習算法的應用中,應基于惡意代碼的基本特征,融合特征的表現形式等,對特征的提取方法進行精度和使用性能的對比分析,融合學習算法的有效應用,提升算法應用的精度的實現。

在常用性的特征表示方案中,主要包含文件的結構特征、序列特征及統計特征的合理應用,不過特征性的表達方式并沒有絕對的好壞之分,不同的特征反映出的只是惡意代碼不同層面的信息,其側重點是不同的。

2.3特征降維與約簡

相關研究表明,冗余與不相關的特征的存在對學習算法的性能影響非常巨大,最終會導致分類器的使用性能降低,分類的準確性也會降低,可實現的泛化功能逐步的下降等,因此對于以高維矢量為基礎的惡意代碼在其特征應用上尤為明顯,因此在分類學習的過程中,應充分的結合高維惡意代碼的特征,實現降維數據信息的合理化構建。降維的過程中排除與類別無關的特征負面影響,并選擇性的利用分類對比的方法,將最優的特征子集進行選擇,并通過進一步的提高分類的利用效果,提高分類器的泛化使用功能等,以減少學習算法過程中的學習時間。

3基于多維特征與選擇性集成學習的惡意代碼檢測技術

3.1檢測基本框架

本文所提出的檢測算法相關的框架體系,如圖3中,檢測過程中主要可分為兩個重要的階段,分別為訓練階段和測試階段,訓練階段通過測試集訓練模型,測試階段驗證模型。監測過程包含樣本的靜態反匯編、特征的提取與選擇,集成分類器構建等3個基本流程。其中靜態反匯編主要完成判斷惡意代碼是否加殼并依據殼的類型選擇相應的脫殼程序正確脫殼。在特征提取的過程中,將基本的字節序列、指令序列和基于語義的靜態API調用的序列特征進行合理的提取,供后續算法使用。對于不同維度的特征化分析過程,主要應包含特征約簡,促進集成分類器的合理構建,并結合集成過程,實現測試階段中的主要樣本信息的測試的完善。

3.2實驗樣本的選擇與劃分

實驗樣本的選擇要點要依據操作系統平臺、語言類型、特征進行選擇。

實驗樣本的劃分。傳統模式下的機器學習與數據挖掘的檢測方法中,主要以實驗數據的應用為主,在實驗數據的劃分過程中,應對實驗數據的平衡性進行管理,達到最終的檢驗檢測效果,因此如何有效設定測試集中區域中的惡意代碼與正常代碼的類別比例的合理的應用,使得分類的過程能夠以最佳的接近實際分布的相關情況進行合理分析。

3.3多維特征的提取

結合當前特征性的描述能力,根據指定的多特征的方式,融合新的特征對信息補充,以更加全面的刻畫惡意性的代碼特征,提升惡意代碼的檢驗檢測能力,一般推薦利用惡意代碼的多特征檢構建科學合理監測技術。為了綜合考慮效率與成本之間的關系,在特征性的提取過程中,主要采取使用靜態的特征指標方案,采用多種工具結合,更加全面的描述惡意代碼特征,充分的發揮靜態特征的優勢,本文以惡意代碼的多個靜態層次為基礎,實現多維特征的有效描述,并結合文件的結構層次,字節的層次性等,將語義層、序列的基本特征進行合理化的構建。

由于當前很多的惡意代碼都選擇使用了加殼技術,進而導致自我保護的力度不斷的加大,使得程序中的相關運行機制不斷發生變化,應精確實施反匯編,在反匯編的結果基礎上,應根據基礎性的各個靜態層次的特征提取方式,按照一定的靜態特征,無須運行惡意代碼,通過相對的動態信息獲取調用的序列結構等,系統性的開銷相對較小,但是其安全性相對較高。

3.4文件結構層特征

文件結構層的特征,更關注于靜態結構信息,將惡意代碼的重新定位、文件搜索功能等進行有效的防范,并對反病毒的軟件進行查殺,通常能夠達到修改文件結構的目的。

3.5高維特征的降維與約簡

降維的方案有多種,如信息的增補、互動信息的應用及文檔的翻轉頻率等,其中應用最多的為信息增益,應按照降維的思路,計算各個特征環境及信息增益值下的降序排列,然后按照信息的增益值,實現某一閾值特征下的特征值的有效應用。在特征提取的過程中,應對文件的結構特征進行分析,利用滑動窗口獲取有效的字節層、指令層和語義層,然后運用降維方案進行合理的降維。

3.6選擇性集成學習與決策融合

第一步,基于不同的特征訓練模式,按照多個不同類型的分類器,選擇合理的分類器裝置,實現多個分類精度高、差異性大的分類器裝置的合理化應用及選擇,并通過選擇最優的分類器裝置,合理的利用分類器組合實現最優配置。

第二步,對于第一步的不同特征下的選擇性的集成分類結果,應對采用的加權多數投票的方式進行融合,達到實現最終的分類信息的有效應用的目標。針對選擇性的集成信息,每一個特征下的少數最優的分類器裝置進行組合,從而減低分類器的存儲空間等,提高分類器的分類速度,保障多特征模式下的分類結果、分類體系及投票方式的決策性融合分析。提高分類器的精度與泛化能力。

4結論及展望

基于數據挖掘和機器學習的惡意代碼的檢測技術應用是當前信息技術惡意代碼檢測領域中的研究熱點,因此在本文的研究中,主要基于數據挖掘與機器學習,按照一種或者多維的特征體系,選擇性的集成惡意代碼檢測技術,利用多維特征、從多個層次中實現惡意代碼的特征集描述能力的全面應用,以保障集成學習過程中的每個特征性分類器的優勢互補。最終實現檢測精度與單個分類器檢測方式特征下的選擇性的集成學習的惡意代碼檢測技術的充分應用,并對機器學習過程中惡意代碼的檢測技術的優勢進行價值分析。

參考文獻

[1]廖國輝,劉嘉勇.基于數據挖掘和機器學習的惡意代碼檢測方法[J].信息安全研究,2016,2(01):74-79.

[2]施宇.基于數據挖掘和機器學習的木馬檢測系統設計與實現[D].電子科技大學,2014.

[3]馮本慧.基于數據挖掘與機器學習的惡意代碼檢測技術研究[D].中南大學,2013.

[4]張福勇.面向惡意代碼檢測的人工免疫算法研究[D].華南理工大學,2012.

[5]孔德光.結合語義的統計機器學習方法在代碼安全中應用研究[D].中國科學技術大學,2010.

[6]張小康. 基于數據挖掘和機器學習的惡意代碼檢測技術研究[D].中國科學技術大學,2009.

作者簡介:付大亮(1981.03-),男,遼寧沈陽人,碩士在讀,國家軟考系統分析師,主要研究方向:概率論與數理統計。

猜你喜歡
機器學習檢測技術數據挖掘
數據挖掘綜述
軟件工程領域中的異常數據挖掘算法
基于網絡搜索數據的平遙旅游客流量預測分析
公路工程試驗檢測存在的問題及措施
煤礦機電產品檢測技術
前綴字母為特征在維吾爾語文本情感分類中的研究
基于支持向量機的金融數據分析研究
淺談現代汽車檢測技術與安全管理
基于R的醫學大數據挖掘系統研究
一本面向中高級讀者的數據挖掘好書
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合