《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 一種改進(jìn)的面向移動數(shù)據(jù)安全檢測的文本分類模型
一種改進(jìn)的面向移動數(shù)據(jù)安全檢測的文本分類模型
2017年微型機(jī)與應(yīng)用第8期
馮曉榮,林軍,麥松濤
工業(yè)和信息化部電子第五研究所 軟件質(zhì)量工程研究中心,廣東 廣州 510610
摘要: 隨著移動互聯(lián)網(wǎng)應(yīng)用的不斷普及,移動終端承載了大量的數(shù)據(jù)交互業(yè)務(wù)與應(yīng)用,移動數(shù)據(jù)的安全問題日益凸顯?;贑4.5決策樹算法對移動數(shù)據(jù)進(jìn)行文本分類檢測,實(shí)現(xiàn)惡意代碼分析。傳統(tǒng)的C4.5文本分類模型中,測試屬性選擇未考慮屬性之間的影響,因此提出了一種改進(jìn)的基于Boosting算法的C4.5決策樹文本分類模型。該模型在衡量被測屬性最優(yōu)弱假設(shè)的重要性時,引入Boosting的權(quán)重系數(shù),每次迭代計(jì)算結(jié)束后,自適應(yīng)調(diào)整權(quán)重值,在降低特征子集屬性冗余度的同時,提高了分類模型的魯棒性。實(shí)驗(yàn)結(jié)果表明,改進(jìn)的文本分類模型在檢測率和分類準(zhǔn)確率上均有一定程度的提高。
Abstract:
Key words :

  馮曉榮,林軍,麥松濤

  (工業(yè)和信息化部電子第五研究所 軟件質(zhì)量工程研究中心,廣東 廣州 510610)

        摘要:隨著移動互聯(lián)網(wǎng)應(yīng)用的不斷普及,移動終端承載了大量的數(shù)據(jù)交互業(yè)務(wù)與應(yīng)用,移動數(shù)據(jù)的安全問題日益凸顯?;?a class="innerlink" href="http://ihrv.cn/tags/C4.5決策樹" title="C4.5決策樹" target="_blank">C4.5決策樹算法對移動數(shù)據(jù)進(jìn)行文本分類檢測,實(shí)現(xiàn)惡意代碼分析。傳統(tǒng)的C4.5文本分類模型中,測試屬性選擇未考慮屬性之間的影響,因此提出了一種改進(jìn)的基于Boosting算法的C4.5決策樹文本分類模型。該模型在衡量被測屬性最優(yōu)弱假設(shè)的重要性時,引入Boosting的權(quán)重系數(shù),每次迭代計(jì)算結(jié)束后,自適應(yīng)調(diào)整權(quán)重值,在降低特征子集屬性冗余度的同時,提高了分類模型的魯棒性。實(shí)驗(yàn)結(jié)果表明,改進(jìn)的文本分類模型在檢測率和分類準(zhǔn)確率上均有一定程度的提高。

  關(guān)鍵詞:惡意代碼;文本分類;C4.5決策樹;Boosting算法

  中圖分類號:TP311文獻(xiàn)標(biāo)識碼:ADOI: 10.19358/j.issn.1674-7720.2017.08.001

  引用格式:馮曉榮,林軍,麥松濤.一種改進(jìn)的面向移動數(shù)據(jù)安全檢測的文本分類模型[J].微型機(jī)與應(yīng)用,2017,36(8):1-4.

0引言

  *基金項(xiàng)目:廣東省省級科技計(jì)劃項(xiàng)目(2015A030401023)近年來,隨著移動互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)技術(shù)的迅猛發(fā)展,全球數(shù)據(jù)量呈現(xiàn)爆發(fā)式增長。由于移動終端承載了大量的數(shù)據(jù)交互業(yè)務(wù)與應(yīng)用,移動數(shù)據(jù)的安全問題日益凸顯,移動終端設(shè)備也成為攻擊者的主要目標(biāo)之一。如何在海量數(shù)據(jù)中對安全威脅進(jìn)行快速識別與分類,成為當(dāng)前信息安全研究亟待解決的問題。

  移動終端是大量互聯(lián)應(yīng)用與服務(wù)的承載體,目前主要通過對移動終端設(shè)備安全能力檢測及移動應(yīng)用程序的惡意行為檢測來實(shí)現(xiàn)數(shù)據(jù)安全保障。然而,這些安全防護(hù)方法都存在較大的局限性,基于移動終端設(shè)備的安全能力檢測一般局限于移動終端系統(tǒng)本身,而移動應(yīng)用程序的檢測主要采用病毒庫的特征匹配,需要隨時更新病毒庫,無法滿足移動大數(shù)據(jù)應(yīng)用的多樣性和實(shí)時動態(tài)特性。

  在移動互聯(lián)網(wǎng)應(yīng)用背景下,針對移動數(shù)據(jù)應(yīng)用的主要攻擊是面向移動終端設(shè)備,包括竊取移動終端上的信息、遠(yuǎn)程控制移動設(shè)備等,其中,大量惡意攻擊行為通過HTTP請求實(shí)現(xiàn)。例如,在移動終端通過HTTP訪問請求注入SQL語句惡意代碼,實(shí)現(xiàn)DNS欺騙、ARP欺騙,竊取用戶敏感信息。在服務(wù)器端通過HTTP傳遞請求內(nèi)容的方式將用戶敏感信息上傳至服務(wù)器,泄露大量隱私數(shù)據(jù)。

  在大數(shù)據(jù)應(yīng)用環(huán)境下移動終端數(shù)據(jù)的信息安全檢測中,機(jī)器學(xué)習(xí)主要應(yīng)用于解決數(shù)據(jù)分類問題、知識表示及規(guī)則提取、搜索問題和增強(qiáng)學(xué)習(xí)等方面。其中,利用機(jī)器學(xué)習(xí)技術(shù)解決數(shù)據(jù)的分類,區(qū)分異常數(shù)據(jù)和正常數(shù)據(jù),為移動大數(shù)據(jù)的分析提供前提條件。

  本文根據(jù)已有的參考文獻(xiàn)中提出的主流文本分類算法的特征[1],結(jié)合移動數(shù)據(jù)的特性,綜合考慮各種算法在移動數(shù)據(jù)分析中的優(yōu)缺點(diǎn)和局限性,提出了一種基于AdaBoost思想的改進(jìn)型C4.5決策樹文本分類模型,通過對HTTP請求數(shù)據(jù)的特征屬性進(jìn)行選擇、特征向量化,形成訓(xùn)練樣本和測試樣本,輸入到分類算法中進(jìn)行模型訓(xùn)練、文本分類和結(jié)果驗(yàn)證,從查準(zhǔn)率、誤檢率和準(zhǔn)確率三個方面進(jìn)行比較分析,為今后的文本分析研究提供理論基礎(chǔ)。

1C4.5決策樹算法

  1.1特征提取

  在機(jī)器識別分類算法實(shí)現(xiàn)中,數(shù)據(jù)特征向量化是前提條件。對于一個特征集F={f1,f2…,fn},描述特征子集的二進(jìn)制向量為S={S1,S2…,Sn},其中Si∈{0,1},i=1,2,…,n。Si=1表示第i個特征被選擇,Si=0表示第i 個特征未被選擇[2]。由于特征集中包含很多冗余特征與不相關(guān)特征,導(dǎo)致數(shù)據(jù)屬性的維度增加,提高了數(shù)據(jù)計(jì)算的時間復(fù)雜度和空間復(fù)雜度,降低了分類模型的泛化能力。通過過濾的方法進(jìn)行特征選擇,選擇出與類別相關(guān)性最大且具有最小冗余特征的子集,從而達(dá)到最優(yōu)分類效果。

  1.2C4.5決策樹基本原理

  基于機(jī)器學(xué)習(xí)的文本分類方法是將數(shù)據(jù)根據(jù)預(yù)先定義的類別,按照一定的規(guī)則進(jìn)行自動化分類,實(shí)現(xiàn)數(shù)據(jù)挖掘。在移動互聯(lián)網(wǎng)環(huán)境下,使用文本分類算法對移動數(shù)據(jù)進(jìn)行安全檢測,將移動終端本身及移動應(yīng)用的安全威脅進(jìn)行有效分類,能夠自適應(yīng)地學(xué)習(xí)正常數(shù)據(jù)和異常數(shù)據(jù)行為模式,從而涵蓋更大的安全檢測范圍,具有重要的研究意義。

  在機(jī)器學(xué)習(xí)中,決策樹作為一個分類預(yù)測模型,代表對象屬性與對象值之間的映射關(guān)系。樹中的每個節(jié)點(diǎn)代表某個對象,每個分叉路徑代表某個可能的屬性值,每個葉節(jié)點(diǎn)對應(yīng)從根節(jié)點(diǎn)到該葉節(jié)點(diǎn)所經(jīng)歷的路徑所表示的對象值,基于數(shù)據(jù)產(chǎn)生決策樹的機(jī)器學(xué)習(xí)方法依托于分類、訓(xùn)練上的預(yù)測樹,根據(jù)已知預(yù)測歸類未知數(shù)據(jù)。決策樹是一種多級分類的思想,目前已有的算法包括ID3、C4.5、CART算法等[3]。ID3是決策樹基礎(chǔ)算法,自頂向下地貪婪搜索遍歷可能的決策樹空間構(gòu)造決策樹,使用統(tǒng)計(jì)測試確定每一個實(shí)例單獨(dú)分類訓(xùn)練樣例的能力,分類能力最好的屬性作為判定樹根節(jié)點(diǎn)的測試屬性?;贑4.5決策樹算法建立在ID3算法的基礎(chǔ)上,用信息增益率選擇特征屬性,解決多值偏向問題。在樹構(gòu)造過程中進(jìn)行剪枝,完成對連續(xù)屬性的離散化處理以及對不完整屬性的處理能力和產(chǎn)生規(guī)則等功能。

  根據(jù)已有的ID3算法,基于信息增益的基本原理,C4.5算法通過計(jì)算信息增益率,選取信息增益比最高的屬性作為樣本的測試屬性,創(chuàng)建一個節(jié)點(diǎn)并為每個屬性創(chuàng)建分支劃分樣本[4]。

2改進(jìn)的安全檢測文本分類模型

  2.1C4.5決策樹改進(jìn)算法

  C4.5決策樹算法根據(jù)信息增益率選擇屬性,從一個無次序、無規(guī)則的實(shí)例中歸納一組采用樹形結(jié)構(gòu)表示的分類規(guī)則。信息增益率為信息增益和分割信息量的比值,信息增益越大,則類屬性對該屬性的依賴性越大,因此,該屬性作為測試屬性的期望值越大。

  假設(shè)以屬性A的值為基準(zhǔn)對樣本分割,訓(xùn)練數(shù)據(jù)D用分裂信息SplitInfo作為初始信息量劃分成對應(yīng)于屬性A的有m個輸出的m個劃分信息。屬性A具有n個不同的取值{a1,a2,…,an},如果用屬性A將樣本集S劃分為{S1,S2,…,Sn}共n個子集,則屬性A對S進(jìn)行劃分的信息增益率為:

  @FU]I0J971)1G4{O6AQ}][Y.png

  最佳屬性子集能夠?qū)Ψ诸愵A(yù)測產(chǎn)生最好的效果,子集中的屬性與類屬性關(guān)聯(lián)度最大,同時屬性之間的冗余度相對較小。C4.5算法考慮了屬性與類屬性的關(guān)聯(lián)度,但是屬性之間的關(guān)系尚未考慮。特別是對于數(shù)據(jù)屬性及其取值較多的情況,不同屬性之間可能存在一定的聯(lián)系,若屬性之間的關(guān)聯(lián)度過高,屬性的冗余度過大,則會影響屬性子集的有效性,導(dǎo)致系統(tǒng)魯棒性較差。

  在該改進(jìn)的算法模型中,將屬性與其他屬性之間的關(guān)聯(lián)度引入屬性A的信息增益率度量。屬性A與其他屬性之間的信息增益如式(3)所示:

  21KOIV@2AU65@BD__XBX6`9.png

  其中,Gain(AF)為其他屬性對屬性A的信息增益之和,表示屬性A與其他屬性的關(guān)聯(lián)度;F是不包含屬性A的非類屬性集合;f是非類屬性且f∈F。式(4)表示其他屬性對屬性A的信息增益平均值。

  }1JKV0S{4O7@WV4T$[]2]GR.png

  在已有的信息增益率的基礎(chǔ)上,通過引入其他屬性對被選屬性信息增益的均值,降低其他屬性與備選屬性之間的冗余度。改進(jìn)后的信息增益率如式(5)所示,其中,w是權(quán)重系數(shù)。

  MNDQD7WP`S7RV1$L3PBJ%5G.png

  在改進(jìn)的信息增益率計(jì)算過程中,若備選屬性A與其他屬性的關(guān)聯(lián)度較差,其他屬性對屬性A的信息增益平均值較低,該屬性的信息增益率會增加,則被選定作為類屬性的子屬性的可能性會更大。

  對于權(quán)重系數(shù)w,在形成的初始訓(xùn)練序列后,基于AdaBoost思想,對每個訓(xùn)練樣本賦予相同的初始權(quán)重,在迭代遞歸過程中動態(tài)調(diào)整權(quán)重系數(shù),根據(jù)權(quán)重系數(shù)構(gòu)造訓(xùn)練集。權(quán)重系數(shù)w衡量備選屬性最優(yōu)弱假設(shè)的重要性,在每次迭代計(jì)算結(jié)束后,對分類錯誤的樣本增加權(quán)重,使得在下一次迭代中更關(guān)注分類錯誤的樣本,利用不同的訓(xùn)練集構(gòu)造多個分類模型,通過綜合打分得到優(yōu)化的分類結(jié)果。在降低特征子集屬性冗余度的同時,提高了分類模型的魯棒性。

  權(quán)重系數(shù)的確定及樣本訓(xùn)練過程如下:

  輸入:訓(xùn)練數(shù)據(jù)集T,樣本數(shù)n,迭代次數(shù)m;

  輸出:決策樹序列G(x);

  訓(xùn)練流程如下:

  訓(xùn)練序列為 Ti,權(quán)重系數(shù)Dm表示在第m輪迭代開始前訓(xùn)練數(shù)據(jù)的概率分布,wmi表示第i個樣本的權(quán)值,∑Ni=1wmi=1。

  (1)初始化訓(xùn)練數(shù)據(jù)的權(quán)重:

  D1={w11,w12,…,w1N}(6)

  其中,

  w1i=1N,i=1,2,…,N(7)

 ?。?)對于m=1,2,…,M,使用具有權(quán)值分布Dm的訓(xùn)練數(shù)據(jù)集基于改進(jìn)的C4.5決策樹進(jìn)行學(xué)習(xí),得到弱分類器。

 ?。?)計(jì)算Gm(Ti)在訓(xùn)練數(shù)據(jù)集上的分類誤差率:

  0{HTO}~I]NC244%95RS~ZQ8.png

 ?。?)更新訓(xùn)練數(shù)據(jù)的權(quán)值分布:

  D)ZD%DVN}Q@AF`VSCHBANEK.png

  (6)將m個弱分類器進(jìn)行線性組合,得到最終分類器:

  KGK4KDRD8~M7K50{EZ5]4MW.png

  2.2改進(jìn)的安全檢測文本分類模型

001.jpg

  針對HTTP請求的移動數(shù)據(jù)安全檢測文本分類模型如圖1所示,檢測流程包括以下幾個步驟:

  (1)以每個請求數(shù)據(jù)包為文本單位,將已分類的數(shù)據(jù)集分為訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù);

  (2)數(shù)據(jù)特征選擇及數(shù)據(jù)特征向量化,轉(zhuǎn)化為可供機(jī)器學(xué)習(xí)的訓(xùn)練樣本和測試樣本;

  (3)利用訓(xùn)練數(shù)據(jù)集對改進(jìn)的文本分類算法模型進(jìn)行訓(xùn)練,建立分類模型,輸入測試數(shù)據(jù),輸出檢測數(shù)據(jù)類別。

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

  3.1實(shí)驗(yàn)數(shù)據(jù)集

  文中采用HTTP請求進(jìn)行模型驗(yàn)證分析。在移動互聯(lián)網(wǎng)應(yīng)用環(huán)境中,通過HTTP請求實(shí)現(xiàn)Web攻擊是一種常見的攻擊方式,包括SQL注入、跨站腳本攻擊、Cookie篡改等惡意行為特征[56]。HTTP請求分為正常和異常兩個類別,根據(jù)HTTP請求的數(shù)據(jù)格式和惡意特征分析,從數(shù)據(jù)結(jié)構(gòu)、長度、字符等方面提取大量特征,使用基于相關(guān)的屬性選擇算法(CFS)對基礎(chǔ)數(shù)據(jù)進(jìn)行屬性選擇,再使用本文提出的改進(jìn)的文本分類算法選擇屬性子集,對實(shí)驗(yàn)數(shù)據(jù)集進(jìn)行分類,比較分類結(jié)果的正確率。

  原始數(shù)據(jù)為CSIC2010的原始數(shù)據(jù)包,保留有效TCP數(shù)據(jù)包,過濾得到HTTP請求數(shù)據(jù)。HTTP請求格式包含請求方法URL協(xié)議/版本、請求頭(Request Header)、請求正文等數(shù)據(jù)。將HTTP結(jié)構(gòu)化數(shù)據(jù)部分保存為特征文本,同時,將請求內(nèi)容、path和Cookie等半結(jié)構(gòu)化的內(nèi)容進(jìn)行結(jié)構(gòu)化處理。已有研究基礎(chǔ)表明,請求內(nèi)容、訪問路徑和Cookie一般是惡意特征集中表現(xiàn)位置[7]。參考KDDCUP1999數(shù)據(jù)集在安全檢測方面的特征要求[8],選取長度、鍵值對數(shù)等有效信息保存為結(jié)構(gòu)化文本數(shù)據(jù)。為了提高分類效率,首先對文本數(shù)據(jù)進(jìn)行屬性選擇,屬性集搜索算法選用Bestfirst Search,屬性集評估算法選用CFS,提取HTTP請求的15個特征描述數(shù)據(jù)內(nèi)容。具體特征如表1所示。

002.jpg

        3.2評估策略

  將數(shù)據(jù)包劃分為正常數(shù)據(jù)和惡意數(shù)據(jù)兩類,數(shù)據(jù)向量特征化之后將目標(biāo)數(shù)據(jù)輸入到分類算法中進(jìn)行模型訓(xùn)練、分類測試和準(zhǔn)確率驗(yàn)證。實(shí)驗(yàn)平臺使用WEKA,迭代次數(shù)設(shè)為10次,建立10棵決策樹,采用10折交叉驗(yàn)證。

  文本分類結(jié)果使用信息檢索中的查準(zhǔn)率(TP)、誤檢率(FP)和分類準(zhǔn)確率(ACC)來衡量改進(jìn)算法的效果[9]。

  其中:

  查準(zhǔn)率=正確分類的HTTP惡意請求個數(shù)/HTTP惡意請求總數(shù)

  誤檢率=正常HTTP請求被誤判為惡意請求的個數(shù)/正常HTTP請求總數(shù)

  分類準(zhǔn)確率=正確分類的樣本數(shù)/所有測試樣本數(shù)

  3.3結(jié)果分析

  實(shí)驗(yàn)數(shù)據(jù)采用CSIC2010數(shù)據(jù)集,選取36 878條正常HTTP請求和24 668條包含惡意代碼的異常HTTP請求。通過Bestfirst Search屬性集搜索算法和CFS屬性集評估算法,提取HTTP請求的15個特征描述數(shù)據(jù)內(nèi)容。在選擇的15個屬性集上分別選用C4.5決策樹算法和改進(jìn)的C4.5決策樹算法訓(xùn)練樣本數(shù)據(jù),建立分類模型。

  3.3.1小規(guī)模樣本測試

  為驗(yàn)證文中提出的改進(jìn)算法的分類效率,首先進(jìn)行小批量實(shí)驗(yàn)數(shù)據(jù)驗(yàn)證,選擇樣本數(shù)據(jù)集包含正常HTTP請求500個,異常HTTP請求500個。分類結(jié)果如表2所示。

003.jpg

  表2結(jié)果顯示,基于AdaBoost思想的C4.5決策樹分類模型適用于HTTP惡意請求檢測,針對于傳統(tǒng)的C4.5檢測算法,檢測率和分類準(zhǔn)確率指標(biāo)均有所改善,其中,查準(zhǔn)率提高了1.9%,誤檢率降低了3.8%,分類準(zhǔn)確率提高了2.9%。由于改進(jìn)模型中增加了Boosting自適應(yīng)調(diào)整權(quán)值系數(shù)過程,導(dǎo)致分類時間增加了12.2 ms。

  3.3.2總體樣本測試

  采用上述方法選取所有異常樣本和正常樣本HTTP請求的屬性值,輸入算法模型,對比C4.5算法和改進(jìn)后的C4.5算法在數(shù)據(jù)集上的分類準(zhǔn)確率,結(jié)果如表3所示。

004.jpg

  表3結(jié)果顯示,改進(jìn)的C4.5文本分類模型查準(zhǔn)率提高了1.6%,誤檢率降低了0.8%,分類準(zhǔn)確率提高了1.7%,分類時間增加了45 ms。在保證分類時間影響較小的前提下提高了分類準(zhǔn)確度。

4結(jié)論

  針對移動數(shù)據(jù)HTTP請求的惡意代碼特征,本文分析了傳統(tǒng)C4.5算法未考慮屬性間影響、屬性間冗余度較大、從而導(dǎo)致算法復(fù)雜度較高的問題,提出了一種基于AdaBoost算法的C4.5文本分類模型,并對模型進(jìn)行優(yōu)化和改進(jìn)。通過對文本數(shù)據(jù)的特征屬性進(jìn)行選擇并通過特征向量化形成訓(xùn)練樣本和測試樣本,輸入到分類算法中進(jìn)行模型訓(xùn)練、文本分類和結(jié)果驗(yàn)證,從查準(zhǔn)率、誤檢率和準(zhǔn)確率三個方面進(jìn)行比較分析。實(shí)驗(yàn)結(jié)果證明,改進(jìn)的C4.5算法具有較好的分類效果,對今后移動數(shù)據(jù)安全檢測研究中分類算法的選取具有一定的理論研究和應(yīng)用價值。

參考文獻(xiàn)

  [1] 張福永,齊德昱,胡鏡林. 基于C4.5決策樹的嵌入型惡意代碼檢測方法[J]. 華南理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,39(5):68-72.

  [2] 陳祎荻,秦玉平, 基于機(jī)器學(xué)習(xí)的文本分類方法綜述[J]. 渤海大學(xué)學(xué)報(bào)(自然科學(xué)版), 2010,31(2): 201-205.

 ?。?] 潘峰,基于C5.0決策樹算法的考試結(jié)果預(yù)測研究[J].微型機(jī)與應(yīng)用, 2016,35(8):72-74.

 ?。?] 程駿,王健.面向移動數(shù)據(jù)安全檢測的文本分類算法比較研究[J]. 無線互聯(lián)科技, 2015(24):115-118.

 ?。?] 魏浩,丁要軍.一種基于屬性相關(guān)的C4.5決策樹改進(jìn)算法[J], 中北大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,35(4):402-406.

 ?。?] SCHULTZ M G, ESKIN E, ZADOK E, et al. Data mining methods for detection of new malicious executables[C].IEEE Symposium on Security and Privacy,2001:3849.

 ?。?] LA POLLA M, MARTINELLI F, SAGANDURRA D. A survey on security for mobile devices[J]. Communications Surveys & Tutorials, IEEE,2013,15(1):446471.

  [8] STOLFO S J,Wang Ke,Li Weijen.Towards stealthy malware detection[M].Malware detection.Heidelberg:SpringerVerlag,2007:231249.

 ?。?] GARCIA S,FERNANDEZ A,HERRERA F. Enchancing the effectiveness and interpretability of decision tree and rule induction classifiers with evolutionary training set selection over imbalanced problems [J]. Applied Soft Computing,2009,9(4):1304-1314.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。