999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于集成學(xué)習(xí)的惡意代碼檢測(cè)方法研究

2016-02-13 05:58:26李瑩珠
軟件 2016年12期
關(guān)鍵詞:分類檢測(cè)

李瑩珠

(北京郵電大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 北京 100876)

基于集成學(xué)習(xí)的惡意代碼檢測(cè)方法研究

李瑩珠

(北京郵電大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 北京 100876)

網(wǎng)絡(luò)時(shí)代帶來(lái)了生活上的種種便利,也帶來(lái)了惡意代碼的爆發(fā)式增長(zhǎng)。報(bào)告指出,惡意代碼的數(shù)量和種類都在快速增長(zhǎng),其中,惡意代碼種類的增長(zhǎng)對(duì)惡意代碼檢測(cè)的影響影響尤為突出。使用分類算法進(jìn)行惡意代碼檢測(cè)是現(xiàn)在的一個(gè)熱門(mén)研究方向,而繁多的惡意代碼種類會(huì)極大地削弱分類效果。鑒于這種情況,本文提出了一種基于集成學(xué)習(xí)的惡意代碼檢測(cè)方法,該方法首先用DBScan算法對(duì)訓(xùn)練樣本進(jìn)行聚類,再用聚類得到的各個(gè)簇訓(xùn)練SVM分類器,對(duì)未知樣本進(jìn)行檢測(cè)時(shí),首先將待檢測(cè)樣本分類到訓(xùn)練得到的各個(gè)簇中,然后輸入對(duì)應(yīng)的SVM分類器進(jìn)行分類,判斷是否為惡意代碼。實(shí)驗(yàn)結(jié)果表明,這種方法的準(zhǔn)確率相對(duì)于直接使用SVM分類有明顯提高,達(dá)到了較好的檢測(cè)效果。

惡意代碼檢測(cè);集成學(xué)習(xí);DBScan聚類;支持向量機(jī)

本文著錄格式:李瑩珠. 基于集成學(xué)習(xí)的惡意代碼檢測(cè)方法研究[J]. 軟件,2016,37(12):202-205

0 引言

在電子計(jì)算機(jī)技術(shù)快速發(fā)展的現(xiàn)在,惡意代碼的威脅性也在日益增加。惡意代碼數(shù)量的增長(zhǎng)呈現(xiàn)出爆發(fā)態(tài)勢(shì),從賽門(mén)鐵克公司的安全威脅報(bào)告中可以看出,每年的惡意代碼增量都是前一年的十倍以上。而惡意代碼的海量變種與繁多的種類也進(jìn)一步加大了檢測(cè)的難度。與此同時(shí),機(jī)器學(xué)習(xí)的發(fā)展極大地帶動(dòng)了惡意代碼檢測(cè)方法的研究。其中,集成學(xué)習(xí)是機(jī)器學(xué)習(xí)領(lǐng)域中的一個(gè)熱門(mén)方向。集成學(xué)習(xí)就是通過(guò)特定的學(xué)習(xí)方法得到若干個(gè)基分類器,然后對(duì)各個(gè)基分類器的結(jié)果按照某種繼承策略決定最終的分類結(jié)果,可獲得較單個(gè)分類器更好的分類結(jié)果。應(yīng)用于惡意代碼檢測(cè)研究時(shí),集成學(xué)習(xí)比起單一分類器可以更好地應(yīng)對(duì)惡意代碼數(shù)量和種類上的增長(zhǎng),同時(shí)也更易于結(jié)合云計(jì)算獲得更高的計(jì)算速度。

本文提出了一種基于DBScan聚類算法和SVM分類算法的集成學(xué)習(xí)算法。該算法首先按行為對(duì)樣本進(jìn)行DBScan聚類,再以是否為惡意代碼為標(biāo)簽,用各聚類數(shù)據(jù)分別進(jìn)行SVM分類訓(xùn)練,得到訓(xùn)練模型,然后將測(cè)試數(shù)據(jù)分到最接近的聚類類別中,再輸入對(duì)應(yīng)的SVM分類器中進(jìn)行分類,判定是否為惡意代碼。

1 DBScan-SVM集成學(xué)習(xí)算法

1.1 DBScan聚類算法

DBScan[1]是一種基于密度的聚類算法,這種算法將密度足夠高的區(qū)域劃分為簇,具有不限定待發(fā)現(xiàn)的簇的形狀的優(yōu)勢(shì),并且不需限定劃分類別的數(shù)目,適用于行為未知的數(shù)據(jù)集的分類。DBScan算法首先要搜索數(shù)據(jù)集,根據(jù)設(shè)定的半徑eps和最小對(duì)象數(shù)minPts找出核心對(duì)象,即半徑eps的鄰域內(nèi)有minPts個(gè)點(diǎn)的對(duì)象,再根據(jù)找到的核心點(diǎn)進(jìn)行擴(kuò)散,將核心對(duì)象的eps鄰域內(nèi)的點(diǎn)加入到核心點(diǎn)所在的簇當(dāng)中。核心對(duì)象鄰域內(nèi)的點(diǎn)稱為邊緣對(duì)象,不屬于任何簇的點(diǎn)稱為噪聲。這個(gè)過(guò)程中,時(shí)間復(fù)雜度主要來(lái)自于鄰域的計(jì)算,所以在實(shí)際應(yīng)用當(dāng)中,為了降低運(yùn)算復(fù)雜度,一般都會(huì)建立索引。如果不存在索引,鄰域計(jì)算需要遍歷所有點(diǎn),最壞情況下時(shí)間復(fù)雜度為樣本數(shù)的平方。

鄰域半徑可選擇余弦距離、歐氏距離、Jaccard相似度等相似度度量方法[2]。歐氏距離體現(xiàn)的是個(gè)體數(shù)值的絕對(duì)差異,余弦距離則更多得從方向上進(jìn)行區(qū)分,Jaccard相似度比較得則是兩個(gè)集合中相同對(duì)象的相對(duì)數(shù)量,計(jì)算效率更高。鑒于惡意代碼樣本是維數(shù)不等的高維向量,采用Jaccard相似度計(jì)算eps更為合適。

1.2 Jaccard相似度

Jaccard相似度是兩個(gè)集合之間相似性和分散性的度量方法,又稱Jaccard系數(shù),主要用于過(guò)濾相似度高的文檔等場(chǎng)景。Jaccard相似度是兩個(gè)集合的交集與并集的比值,公式如下:

1.3 SVM分類算法

SVM是一種基于VC維理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原則建立的有監(jiān)督分類算法[3],核心思想有兩點(diǎn),即針對(duì)線性可分情況進(jìn)行分析和將低維線性不可分的樣本通過(guò)非線性映射算法投入到高維空間中去,使其線性可分。一般的升維都會(huì)帶來(lái)維度災(zāi)難,極大地提升運(yùn)算量,SVM算法則通過(guò)核函數(shù)這一關(guān)鍵設(shè)計(jì)解決了這個(gè)問(wèn)題。核函數(shù)地作用是接受低維空間中的向量,計(jì)算出其映射在高維空間中的值,而不需要找到具體的映射關(guān)系。滿足Mercer條件的函數(shù)都可作為核函數(shù)[4]。使用核函數(shù)之后,將低維向量映射到高維空間幾乎沒(méi)有增加運(yùn)算成本,使SVM的升維分類方法的實(shí)現(xiàn)成為可能。常用的核函數(shù)有多項(xiàng)式核函數(shù)、高斯核函數(shù)、S形核函數(shù)等,形式如下:

多項(xiàng)式核函數(shù):

高斯核函數(shù):

S形核函數(shù):

基于SVM算法的可解決高維問(wèn)題、理論基礎(chǔ)完善、在樣本量較小時(shí)就可以得到較好的分類效果等優(yōu)點(diǎn),本文選擇這種算法進(jìn)行惡意代碼樣本的分類。

實(shí)際應(yīng)用中,臺(tái)灣大學(xué)的林智仁教授開(kāi)發(fā)了一款簡(jiǎn)單易用的軟件包libsvm,本文也采用了這一軟件包進(jìn)行SVM算法的實(shí)現(xiàn)。

1.4 DBScan-SVM集成學(xué)習(xí)

集成學(xué)習(xí)是機(jī)器學(xué)習(xí)領(lǐng)域的一個(gè)重要研究方向,其基本理念是通過(guò)多個(gè)子學(xué)習(xí)器共同解決同一問(wèn)題[5],可以明顯提高泛化能力。集成學(xué)習(xí)有廣義和狹義兩種定義,狹義的集成學(xué)習(xí)是使用多個(gè)同質(zhì)的學(xué)習(xí)器來(lái)解決同一問(wèn)題,而廣義的定義則是將使用多個(gè)不同的學(xué)習(xí)器也歸為此類。廣義的集成學(xué)習(xí)可以將名稱不同但實(shí)際屬于同一類的學(xué)習(xí)器歸屬到集成學(xué)習(xí)框架之下,因此比狹義的集成學(xué)習(xí)更具優(yōu)勢(shì)[6],集成學(xué)習(xí)所涵蓋的范圍也越來(lái)越廣。

集成學(xué)習(xí)的關(guān)鍵點(diǎn)是在給定訓(xùn)練樣本的情況下構(gòu)造出相對(duì)獨(dú)立的、運(yùn)算效果較好的多個(gè)子分類器[7],常用的子分類器構(gòu)造方法有Bagging、Boosting等。

Bagging是由Breiman提出的一種方法,該方法采用可重復(fù)取樣技術(shù)Bootstrap對(duì)訓(xùn)練集進(jìn)行采樣獲得子集,在這種方法中,子學(xué)習(xí)器的差異性是由Bootstrap重復(fù)帶來(lái)的,主要用于不穩(wěn)定的機(jī)器學(xué)習(xí)算法。

Boosting是一種把多個(gè)分類器整合為一個(gè)的方法,可以提高弱分類算法的準(zhǔn)確度。其核心思想是通過(guò)學(xué)習(xí)誤差來(lái)改變子訓(xùn)練集在訓(xùn)練集上的分布,重點(diǎn)學(xué)習(xí)其中誤差較大的部分,即對(duì)誤差較大的部分進(jìn)行重采樣以增大其權(quán)重。這類算法中最受關(guān)注的是AdaBoost算法。

針對(duì)惡意代碼樣本往往由多個(gè)種類混雜構(gòu)成的特點(diǎn),本文采取了DBScan聚類算法對(duì)樣本進(jìn)行聚類,得到按代碼行為分類的多個(gè)子樣本。根據(jù)行為判斷樣本是否為惡意代碼時(shí),主要依賴樣本的注冊(cè)表行為、文件操作、網(wǎng)絡(luò)行為等進(jìn)行判別,所以本文提取了惡意代碼調(diào)用的與這些行為相關(guān)的api函數(shù)形成特征樣本集,再對(duì)樣本集進(jìn)行聚類。

聚類之后,將樣本按類別分別輸入SVM學(xué)習(xí)器進(jìn)行訓(xùn)練,學(xué)習(xí)得到檢測(cè)惡意代碼的模型。

在用待分類樣本進(jìn)行測(cè)試時(shí),首先讀取訓(xùn)練過(guò)程中的聚類結(jié)果,將樣本分到最接近的類別中,然后用對(duì)應(yīng)的訓(xùn)練完的SVM分類器進(jìn)行分類,判斷是否為惡意代碼。

2 算法實(shí)現(xiàn)

2.1 樣本數(shù)據(jù)獲取與預(yù)處理

本文的訓(xùn)練樣本采用CSDMC2010 API sequence corpus,這個(gè)數(shù)據(jù)集用api monitor捕獲了程序運(yùn)行時(shí)調(diào)用的Windows api,選取了與惡意代碼行為密切相關(guān)的Windows api作為樣本特征,如獲取輸入函數(shù)時(shí)需要調(diào)用的LoadLibrary、查詢注冊(cè)表時(shí)調(diào)用的RegQueryValue、創(chuàng)建文件時(shí)調(diào)用的CreateFile、進(jìn)行網(wǎng)絡(luò)通信時(shí)調(diào)用的socket等。這個(gè)數(shù)據(jù)集將惡意代碼標(biāo)記為1,非惡意代碼標(biāo)記為0。如:

(1,LoadLibraryW,HeapAlloc,HeapAlloc,HeapFre e……)

進(jìn)行訓(xùn)練之前,要用int字符替換掉api字符串。測(cè)試集是SoftSnoop捕捉的Windows api調(diào)用特征集,和樣本集用同樣的方式處理。步驟如下:

步驟1:讀取樣本

步驟2:用int類型替換api字符串

步驟3:去除重復(fù)api

處理后的樣本格式如下:(1,7,19,21,66,29,2……)

2.2 檢測(cè)流程

步驟1:讀取訓(xùn)練樣本中的一條數(shù)據(jù)并計(jì)算Jaccard相似度,計(jì)算eps鄰域內(nèi)的點(diǎn)數(shù),若大于minPts則標(biāo)記為核心點(diǎn),否則標(biāo)記為噪聲,建立索引。

步驟2:循環(huán)步驟1至全部樣本都已建立索引

步驟3:新建一個(gè)簇,從索引中讀取一個(gè)未讀核心點(diǎn)加入這個(gè)簇

步驟4:讀取核心點(diǎn)鄰域內(nèi)的點(diǎn)并將其加入核心點(diǎn)所在的簇

步驟5:循環(huán)步驟4至鄰域中沒(méi)有核心點(diǎn)存在

步驟6:循環(huán)步驟3至步驟5,至樣本中所有點(diǎn)都已讀取。

以上為DBScan聚類過(guò)程,輸出按行為聚類的結(jié)果。之后針對(duì)是否為惡意代碼進(jìn)行分類。

步驟7:讀取一類聚類結(jié)果,改寫(xiě)成libsvm要求的格式

步驟8輸入libsvm分類器進(jìn)行訓(xùn)練,得到訓(xùn)練模型。

步驟9:重復(fù)步驟8,至全部類別訓(xùn)練完畢。

2.3 檢測(cè)流程

步驟1:獲取DBScan的聚類結(jié)果

步驟2:讀取一條待檢測(cè)樣本數(shù)據(jù),計(jì)算該數(shù)據(jù)與步驟1中的聚類結(jié)果中的各個(gè)點(diǎn)的Jaccard形似度

步驟3:比較Jaccard相似度,將待檢測(cè)數(shù)據(jù)分到相似度最大的點(diǎn)所在的簇中

步驟4:重復(fù)步驟2至步驟3,直到所有待檢測(cè)數(shù)據(jù)都已分類

步驟5:將數(shù)據(jù)改寫(xiě)成libsvm要求的格式

步驟6:將已分好類的待檢測(cè)數(shù)據(jù)輸入到對(duì)應(yīng)的libsvm分類器中,得到分類結(jié)果

Libsvm所需的數(shù)據(jù)集格式如下:(1 1:7 2:19 3:21……)

3 實(shí)驗(yàn)結(jié)果

本文采用CSDMC2010 API sequence corpus作為訓(xùn)練數(shù)據(jù)集,這是一個(gè)由一系列Windows api調(diào)用跟蹤文件構(gòu)成的數(shù)據(jù)集。這個(gè)數(shù)據(jù)集選取了一些與惡意代碼識(shí)別相關(guān)的api作為特征子集,只給出了調(diào)用的api的名字,忽略了參數(shù)等其他內(nèi)容,但保留了api的調(diào)用順序,并將惡意代碼標(biāo)記為1,非惡意代碼標(biāo)記為0。訓(xùn)練集中共有惡意代碼樣本320個(gè),非惡意代碼68個(gè)。

測(cè)試集是用SoftSnoop捕捉的Windows api調(diào)用序列選取了與訓(xùn)練集相同的特征,包含90個(gè)惡意代碼和71個(gè)非惡意代碼。

本文用SVM對(duì)樣本集的分類結(jié)果作為對(duì)照數(shù)據(jù),用DBScan-SVM集成學(xué)習(xí)分類結(jié)果作為實(shí)驗(yàn)數(shù)據(jù)。實(shí)驗(yàn)結(jié)果如下:

對(duì)訓(xùn)練集進(jìn)行聚類得到兩個(gè)簇,用這兩個(gè)簇的數(shù)據(jù)作為SVM的訓(xùn)練集;將測(cè)試樣本分到這兩個(gè)簇中,作為SVM的測(cè)試集,測(cè)試結(jié)果為:

簇1準(zhǔn)確率:70.0787%(89/127)

簇2準(zhǔn)確率:64.7059%(22/34)

合計(jì):68.9441%(111/161)

對(duì)照組準(zhǔn)確率:57.764%(93/161)

由實(shí)驗(yàn)結(jié)果可知,DBScan-SVM集成學(xué)習(xí)分類效果比SVM分類效果提高了十個(gè)百分點(diǎn)以上,達(dá)到了較好的惡意代碼檢出率。由于DBScan是基于密度的聚類算法,本文采用的樣本數(shù)量較小而包含的惡意代碼類型較多,樣本比較稀疏,所以在樣本數(shù)量加大的情況下,本文的算法有望取得更好的分類效果。

4 結(jié) 論

本文給出了一種基于集成學(xué)習(xí)的惡意代碼檢測(cè)算法,該算法首先使用DBScan聚類算法按行為將數(shù)據(jù)集分成多個(gè)簇,然后分別對(duì)每個(gè)簇進(jìn)行SVM分類,得到惡意代碼檢測(cè)結(jié)果。經(jīng)實(shí)驗(yàn),該算法獲得了較好的檢測(cè)結(jié)果。

[1] ESTER M, KRIEGEL M, PETER H, etal. A density-based algorithm for discovering clusters in large spatial databases with noise[J]. Proceedings of the Second International Conference on Knowledge Discovery and Data Mining. 1996.

[2] 林學(xué)民, 王煒. 集合和字符串的相似度查詢[J]. 計(jì)算機(jī)學(xué)報(bào), 2011, 34(10):1853-1862.

[3] 郭麗娜. 云計(jì)算環(huán)境下的并行SVM算法研究[D]. 南京師范大學(xué), 2014.

[4] 張小康. 基于數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)的惡意代碼檢測(cè)技術(shù)研究[D]. 中國(guó)科學(xué)技術(shù)大學(xué), 2009.

[5] 王敏. 基于集成學(xué)習(xí)的支持向量機(jī)學(xué)習(xí)方法研究[D]. 山西大學(xué), 2010.

[6] 馬冉冉. 集成學(xué)習(xí)算法研究[D]. 山東科技大學(xué), 2010.

[7] 拓守恒. 基于QPSO訓(xùn)練的SVM核函數(shù)集成學(xué)習(xí)研究[J].系統(tǒng)仿真技術(shù), 2010, 06(3): 202-208.

Malicious Code Detection Method Research Based on Ensemble Learning

LI Ying-zhu

(School of CyberSpace Security, Beijing University of Posts and Telecommunications, Beijing 100876, China)

Network times brings life's various walks, also brought explosive growth of malicious code.Report notes that in the fast-growing number and types of malicious code, malicious code type of growth on the effects of malicious code detection is especially important.Malicious code detection using the classification algorithm is now a popular research direction, and various types of malicious code can dramatically cut if the classification results. Given this situation, paper proposed has a based on integrated learning of malicious code detection method, the method first with DBScan algorithm on training sample for poly class, again with poly class get of all cluster training SVM classification device, on unknown sample for detection, first will stay detection sample classification to training get of all cluster, then entered corresponds to SVM classification device for classification, judge whether for malicious code.Experimental results show that the accuracy of this method compared to direct use of SVM classification have fignificantly improved and achieved good results.

Malware detection; Ensemble learning; DBScan; SVM

TP309.5

A

10.3969/j.issn.1003-6970.2016.12.043

李瑩珠(1990-),性別,女,研究生,主要研究領(lǐng)域?yàn)檐浖踩?/p>

猜你喜歡
分類檢測(cè)
“不等式”檢測(cè)題
“一元一次不等式”檢測(cè)題
“一元一次不等式組”檢測(cè)題
分類算一算
垃圾分類的困惑你有嗎
大眾健康(2021年6期)2021-06-08 19:30:06
“幾何圖形”檢測(cè)題
“角”檢測(cè)題
分類討論求坐標(biāo)
數(shù)據(jù)分析中的分類討論
教你一招:數(shù)的分類
主站蜘蛛池模板: 亚洲精品图区| 97人妻精品专区久久久久| 国产凹凸一区在线观看视频| 国产人在线成免费视频| 国产特级毛片aaaaaa| 一区二区自拍| 婷婷在线网站| 成人在线不卡| 99久久无色码中文字幕| 中字无码av在线电影| 毛片在线看网站| 黄色网在线| 精品久久777| 国产免费久久精品99re不卡 | 欧美中文字幕无线码视频| 国产不卡一级毛片视频| 日本91视频| 人妖无码第一页| 黄色网站不卡无码| 国产午夜不卡| aⅴ免费在线观看| 成人字幕网视频在线观看| 九色视频线上播放| 在线视频亚洲欧美| 久久久国产精品无码专区| 67194亚洲无码| 久久国产精品夜色| 日韩在线播放中文字幕| 国产精品自在自线免费观看| 国产激情影院| 国产精品.com| 国产精品三级av及在线观看| 欧洲熟妇精品视频| 97在线免费| 狠狠做深爱婷婷综合一区| 亚洲最黄视频| 中文字幕66页| 亚洲经典在线中文字幕| av在线5g无码天天| 欧美日韩国产综合视频在线观看| 一级毛片免费观看不卡视频| 国产极品美女在线播放| 亚洲综合色婷婷| 国产免费高清无需播放器| 亚洲乱亚洲乱妇24p| 91麻豆精品国产91久久久久| 国产真实乱人视频| 高清不卡一区二区三区香蕉| 老色鬼欧美精品| 亚洲色精品国产一区二区三区| 国产欧美又粗又猛又爽老| 亚洲AⅤ波多系列中文字幕| 欧美日韩国产在线人| 四虎永久在线视频| 亚洲国产欧美目韩成人综合| 国产91透明丝袜美腿在线| 91亚洲视频下载| 国产在线观看人成激情视频| 亚洲不卡影院| 一本一道波多野结衣av黑人在线| 久久一级电影| 婷婷亚洲视频| 在线视频亚洲色图| 欧美一区福利| 国产亚洲欧美在线中文bt天堂| 国产欧美日韩综合一区在线播放| 无码中文AⅤ在线观看| 啪啪永久免费av| 亚洲成人免费看| 久久99国产乱子伦精品免| 婷婷亚洲综合五月天在线| av午夜福利一片免费看| 又黄又爽视频好爽视频| 欧美午夜小视频| 精品午夜国产福利观看| 美女扒开下面流白浆在线试听| 五月婷婷丁香综合| 国产美女一级毛片| 国产91在线免费视频| 久久一本精品久久久ー99| 午夜视频www| 国产麻豆精品久久一二三|