• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      面向Android惡意應(yīng)用靜態(tài)檢測(cè)的特征頻數(shù)差異增強(qiáng)算法*

      2020-06-22 12:50:04李向軍魏智翔王科選肖聚鑫
      關(guān)鍵詞:特征選擇分類器靜態(tài)

      李向軍,孔 珂,魏智翔,王科選,肖聚鑫

      (1.南昌大學(xué)軟件學(xué)院,江西 南昌 330047;2.南昌大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系,江西 南昌 330031)

      1 引言

      Android已經(jīng)占據(jù)了智能手機(jī)操作系統(tǒng)的大量市場(chǎng)份額,據(jù)Statcounter統(tǒng)計(jì),2019年8月Android占據(jù)了全球移動(dòng)操作系統(tǒng)市場(chǎng)份額的76.23%[1],至2019年,Google Play應(yīng)用數(shù)量超過(guò)250萬(wàn)[2]。惡意軟件開(kāi)發(fā)者把大量惡意軟件進(jìn)行偽裝上傳至Google Play 或第三方市場(chǎng)。2018全年,360互聯(lián)網(wǎng)安全中心累計(jì)監(jiān)測(cè)移動(dòng)端惡意軟件感染量約為1.1億人次[3]。Android應(yīng)用程序的安全性檢測(cè)已成為網(wǎng)絡(luò)安全領(lǐng)域的熱點(diǎn)研究問(wèn)題之一。

      根據(jù)Android惡意應(yīng)用的特征性質(zhì),檢測(cè)方法可分為靜態(tài)檢測(cè)、動(dòng)態(tài)檢測(cè)和動(dòng)靜混合檢測(cè)[4]。3種檢測(cè)方法中,靜態(tài)檢測(cè)的研究更廣泛。靜態(tài)檢測(cè)是指通過(guò)靜態(tài)特征進(jìn)行惡意應(yīng)用檢測(cè),該方法可以在軟件未安裝之前對(duì)應(yīng)用程序進(jìn)行識(shí)別,提前預(yù)防惡意行為的發(fā)生。靜態(tài)特征通過(guò)對(duì)APK(Android Application Package)反編譯后,通過(guò)相關(guān)文件獲取,相比于動(dòng)態(tài)特征的獲取,較為方便,不浪費(fèi)用戶系統(tǒng)資源。靜態(tài)特征的提取通常會(huì)獲取大量的特征信息,其中大部分為冗余特征,因此特征選擇是十分必要的工作。而傳統(tǒng)的特征選擇算法不完全適用于Android惡意應(yīng)用檢測(cè)的靜態(tài)特征選擇,如無(wú)法去除非典型特征,偏重惡意典型特征,在非平衡數(shù)據(jù)上對(duì)惡意應(yīng)用識(shí)別準(zhǔn)確率不良。

      本文主要貢獻(xiàn):在分析卡方校驗(yàn)、信息增益、FrequenSel等特征選擇算法不足的基礎(chǔ)上,給出了良性特征、惡意特征、良性典型特征、惡意典型特征和非典型特征等定義,提出了一種適用于Android惡意應(yīng)用靜態(tài)檢測(cè)的特征選擇算法——特征頻數(shù)差異增強(qiáng)FDE(Frequency Differential Enhancement)算法。平衡數(shù)據(jù)集和非平衡數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,F(xiàn)DE算法可有效去除靜態(tài)特征中的非典型特征,篩選出更有效特征。同時(shí),引入權(quán)重?fù)p失函數(shù)彌補(bǔ)不平衡數(shù)據(jù)的缺陷,可有效提高惡意應(yīng)用的識(shí)別準(zhǔn)確率。

      2 研究現(xiàn)狀

      目前,Android惡意應(yīng)用檢測(cè)3類方法中,相比于動(dòng)態(tài)檢測(cè)、動(dòng)靜混合檢測(cè)2種方法,靜態(tài)檢測(cè)方法的研究和應(yīng)用更為廣泛。

      靜態(tài)檢測(cè)需要對(duì)APK進(jìn)行反編譯,從各類文件中提取信息,如權(quán)限、API信息等。Felt等[5]評(píng)價(jià)了權(quán)限機(jī)制的可用性,研究得出了惡意應(yīng)用存在過(guò)度敏感權(quán)限申請(qǐng)問(wèn)題。Nix等[6]使用API調(diào)用序列對(duì)惡意應(yīng)用進(jìn)行檢測(cè),在深度置信網(wǎng)絡(luò)上檢測(cè)準(zhǔn)確率達(dá)到95.7%。Mclaughlin等[7]使用卷積神經(jīng)網(wǎng)絡(luò)CNN(Convolutional Neural Network)從原始操作碼序列中學(xué)習(xí)惡意應(yīng)用的特征,召回率達(dá)到96.29%。Yerima等[8]提取權(quán)限信息作為數(shù)據(jù)特征,開(kāi)發(fā)和分析了基于貝葉斯分類的主動(dòng)式機(jī)器學(xué)習(xí)方法,展示了高精度的檢測(cè)能力。Wang等[9]集成了5種分類算法,使用11種類型的靜態(tài)特征識(shí)別良性應(yīng)用和惡意應(yīng)用,準(zhǔn)確率高達(dá)99.39%。Shabtai等[10]使用了APK大小、特征數(shù)量等非主流特征。

      動(dòng)態(tài)檢測(cè)需要對(duì)應(yīng)用進(jìn)行安裝,獲取系統(tǒng)調(diào)用、網(wǎng)絡(luò)流量等信息。早期研究者缺乏對(duì)惡意應(yīng)用行為模式的認(rèn)識(shí),把手機(jī)能量的消耗作為評(píng)判依據(jù)[11]。隨著對(duì)動(dòng)態(tài)信息的研究,研究者獲得了更有代表性的動(dòng)態(tài)特征。Martinelli等[12]在CNN上建立了一個(gè)基于系統(tǒng)調(diào)用的檢測(cè)應(yīng)用程序,準(zhǔn)確率在85%~95%。Vinod等[13]針對(duì)系統(tǒng)調(diào)用研究了數(shù)種動(dòng)態(tài)特征選擇算法。Liang等[14]通過(guò)將系統(tǒng)調(diào)用序列視為文本來(lái)設(shè)計(jì)端到端惡意軟件識(shí)別模型,準(zhǔn)確率達(dá)93.1%,F(xiàn)-1值為86.57%。柯懂湘等[15]使用隨機(jī)森林算法對(duì)行為日志中的惡意行為進(jìn)行識(shí)別與分類,該方法對(duì)惡意行為分類的平均準(zhǔn)確率達(dá)到96.8%。

      動(dòng)靜混合檢測(cè)是指將動(dòng)態(tài)特征和靜態(tài)特征相結(jié)合的檢測(cè)方法。Fang等[16]對(duì)靜態(tài)檢測(cè)的結(jié)果進(jìn)行動(dòng)態(tài)檢測(cè),在XGBoost算法上達(dá)到94.6%的檢測(cè)精度。Alshahrani等[17]把權(quán)限、組件信息、系統(tǒng)調(diào)用進(jìn)行結(jié)合,實(shí)現(xiàn)了可運(yùn)行在用戶設(shè)備上的識(shí)別器,準(zhǔn)確率達(dá)到95%。Xu等[18]將靜態(tài)信息轉(zhuǎn)換為矢量,動(dòng)態(tài)信息轉(zhuǎn)換為圖形特征集,組合構(gòu)建了混合分類器,準(zhǔn)確率達(dá)到93.4%。Vinayakumar等[19]使用基于多種網(wǎng)絡(luò)拓?fù)涞拈L(zhǎng)短期循環(huán)神經(jīng)網(wǎng)絡(luò)對(duì)混合特征進(jìn)行處理,準(zhǔn)確率最高為94.2%。

      基于靜態(tài)特征的Android惡意應(yīng)用檢測(cè)方法使用的特征種類眾多。DREBIN[20]中使用了硬件組件、請(qǐng)求權(quán)限、應(yīng)用程序組件、過(guò)濾意圖、限制API調(diào)用、使用權(quán)限、可疑API調(diào)用、網(wǎng)絡(luò)地址等8種靜態(tài)特征。Zhang等[21]使用了權(quán)限、API、組件、字符串4種特征。Luo等[22]只用了API調(diào)用信息。分析可見(jiàn),多數(shù)基于靜態(tài)特征的應(yīng)用檢測(cè)研究中,權(quán)限和API是最常用的特征。研究者針對(duì)靜態(tài)特征檢測(cè)使用的分類算法各有不同,Wang等[23]使用了支持向量機(jī)、隨機(jī)森林、K最近鄰3種傳統(tǒng)的機(jī)器學(xué)習(xí)算法。Arshad等[24]使用了隨機(jī)森林算法建立了三級(jí)混合惡意軟件檢測(cè)模型。深度學(xué)習(xí)算法也受到很多研究者青睞[25,26]。分類算法種類繁多,針對(duì)不同問(wèn)題有不同的處理效果。

      基于權(quán)限和API的靜態(tài)檢測(cè)中,Android系統(tǒng)要求應(yīng)用權(quán)限信息必須公開(kāi),通過(guò)權(quán)限使用情況,一定程度上可以判斷是否為有惡意行為。權(quán)限特征聲明在AndroidManifest.xml文件中,可以通過(guò)對(duì)APK的反編譯得到。API特征存在于.smali文件中,攻擊者想要實(shí)現(xiàn)某一惡意行為,必須使用相應(yīng)的API,所以API信息在惡意軟件靜態(tài)檢測(cè)中是非常重要的特征。權(quán)限與API信息相比,API信息的數(shù)量遠(yuǎn)遠(yuǎn)大于權(quán)限的數(shù)量,因?yàn)锳PI不僅限于Google提供的,開(kāi)發(fā)者也可以使用自己編寫的API,導(dǎo)致API數(shù)量龐大。API數(shù)量雖多,但大部分的API信息是無(wú)用的,并不具有識(shí)別惡意應(yīng)用的功能。

      靜態(tài)檢測(cè)提取特征信息后,有研究者使用卡方校驗(yàn)、信息增益等傳統(tǒng)方法[27,28]進(jìn)行特征選擇。Zhao等[29]在傳統(tǒng)算法的基礎(chǔ)上提出FrequenSel算法進(jìn)行特征選擇。面對(duì)靜態(tài)特征選擇,這些算法都存在一些不足,如非典型特征排名過(guò)高,偏重惡意典型特征,重復(fù)選擇同一特征。很少有研究者對(duì)Android惡意應(yīng)用檢測(cè)靜態(tài)特征選擇算法進(jìn)行研究,多數(shù)研究者選擇傳統(tǒng)的特征選擇算法或人工特征選擇,部分研究者不進(jìn)行特征選擇。

      3 特征頻數(shù)差異增強(qiáng)算法

      傳統(tǒng)特征選擇算法,如FrequenSel(Fre)[29]、卡方校驗(yàn)Chi(Chi-square test)[30]、信息增益Info(Information divergence)[31]等,應(yīng)用在Android惡意應(yīng)用檢測(cè)領(lǐng)域存在一定的不足。其中,卡方校驗(yàn)和信息增益特征選擇算法在特征分值計(jì)算過(guò)程中會(huì)賦予不利于辨別良性和惡意應(yīng)用的非典型特征高排名。FrequenSel特征選擇算法在特征選擇過(guò)程中注重惡意特征的比例,忽略了特征的原始規(guī)律,并且在選擇良性特征和惡意特征時(shí)會(huì)重復(fù)選擇同一特征。為了彌補(bǔ)以上缺點(diǎn),本文提出一種新的特征選擇算法——特征頻數(shù)差異增強(qiáng)算法FDE。

      FDE算法旨在排除非典型特征,遵循特征的原始規(guī)律進(jìn)行特征選擇。算法從特征最本質(zhì)的角度,即各特征在良性應(yīng)用與惡意應(yīng)用中出現(xiàn)的頻率角度,進(jìn)行分析設(shè)計(jì)。應(yīng)用數(shù)據(jù)集上數(shù)據(jù)的非典型特征和典型特征呈現(xiàn)的特點(diǎn)是:良性典型特征只在良性應(yīng)用中大量出現(xiàn),惡意典型特征只在惡意應(yīng)用中大量出現(xiàn)。非典型特征在良性應(yīng)用和惡意應(yīng)用中大量出現(xiàn),或只少量出現(xiàn)在良性應(yīng)用或惡意應(yīng)用中。因此,以特征在良性應(yīng)用和惡意應(yīng)用中出現(xiàn)的頻數(shù)差異數(shù)和總樣本數(shù)量的比值作為評(píng)價(jià)特征的標(biāo)準(zhǔn),設(shè)計(jì)特征評(píng)價(jià)公式如下所示:

      (1)

      其中,Nm表示包含特征fi的惡意應(yīng)用數(shù)量,Nb表示包含特征fi的良性應(yīng)用數(shù)量,Tm表示惡意應(yīng)用的總數(shù)量,Tb表示良性應(yīng)用的總數(shù)量。

      特征評(píng)價(jià)公式先計(jì)算特征在良性應(yīng)用與惡意應(yīng)用中出現(xiàn)次數(shù)的差值絕對(duì)值,再用差值絕對(duì)值除以總樣本數(shù)。其特點(diǎn)是:(1)可計(jì)算得出每個(gè)特征的分值,每個(gè)特征的分值作為特征選擇的依據(jù)。(2)可有效對(duì)非典型特征進(jìn)行甄別。根據(jù)非典型特征和典型特征的特點(diǎn)分析,通過(guò)式(1)的計(jì)算,非典型特征的S值較小,典型特征的S值較大,因此可有效去除非典型特征,篩選出更有效的特征。同時(shí),該公式是從特征最原始的規(guī)律角度設(shè)計(jì),不會(huì)干預(yù)惡意典型特征所占比例。

      為有效篩選特征,給出如下相關(guān)定義:

      定義1(良性特征) 對(duì)于某個(gè)特征fi,其在良性應(yīng)用中和在惡意應(yīng)用中出現(xiàn)的次數(shù)記為二元組counti=(Nb,Nm),若Nb>Nm,則稱其為良性特征。

      定義2(惡意特征) 對(duì)于某個(gè)特征fi,其在良性應(yīng)用中和在惡意應(yīng)用中出現(xiàn)的次數(shù)記為二元組counti=(Nb,Nm),若Nm>Nb,則稱其為惡意特征。

      定義3(良性典型特征) 若某特征fi為良性特征,即counti=(Nb,Nm),其中Nb>Nm,且滿足:

      (2)

      則稱其為良性典型特征。

      定義4(惡意典型特征) 若某特征fi為惡意特征,即counti=(Nb,Nm),其中Nm>Nb,且滿足:

      (3)

      則稱其為惡意典型特征。

      定義5(非典型特征) 若某特征fi滿足以下2個(gè)條件之一,則稱其為非典型特征。

      (1)counti=(Nb,Nm),且:

      (4)

      即該特征在良性應(yīng)用中出現(xiàn)的次數(shù)較少,在惡意應(yīng)用中出現(xiàn)的次數(shù)幾乎為0,或其在惡意應(yīng)用中出現(xiàn)的次數(shù)較少,在良性應(yīng)用中出現(xiàn)的次數(shù)幾乎為0。

      (2)counti=(Nb,Nm),且:

      (5)

      即該特征在良性應(yīng)用和惡意應(yīng)用中都大量出現(xiàn),但出現(xiàn)的次數(shù)差的絕對(duì)值很小。

      根據(jù)上述定義,特征頻數(shù)差異增強(qiáng)算法FDE的思路為:首先,統(tǒng)計(jì)總樣本數(shù)量以及各特征在良性應(yīng)用和惡意應(yīng)用中出現(xiàn)的次數(shù);然后,按照式(1)計(jì)算每個(gè)特征的S值,并按照定義3~定義5進(jìn)行特征選擇。算法偽代碼如下所示:

      算法1特征頻數(shù)差異增強(qiáng)算法FDE

      輸入:特征集合F,閾值ɑ。

      輸出:新的特征集合F′。

      1.Tm←CountMalware;

      2.Tb←CountBenign;

      3.Fori←1toF.Size()do

      4.Nm←CountInMalware(fi);

      5.Nb←CountInBenign(fi);

      6.S←|Nb-Nm|/(Tb+Tm);

      7.IfS≥αthen

      8.F′←fi;

      9.endif

      10.endfor

      第1~2行統(tǒng)計(jì)惡意樣本和良性樣本數(shù)量;第3~10行執(zhí)行循環(huán),統(tǒng)計(jì)每個(gè)特征在良性應(yīng)用和惡意應(yīng)用出現(xiàn)的次數(shù),然后計(jì)算每一個(gè)特征的S值,根據(jù)定義3~定義5選取符合條件的特征。其中不同的閾值ɑ取值會(huì)產(chǎn)生不同數(shù)量的特征。

      由算法描述可見(jiàn),F(xiàn)DE算法只需統(tǒng)計(jì)每個(gè)特征出現(xiàn)在良性應(yīng)用和惡意應(yīng)用中的數(shù)量,計(jì)算每個(gè)特征的S值,并依據(jù)相關(guān)定義進(jìn)行特征選擇。相比于FrequenSel、卡方校驗(yàn)、信息增益等算法,F(xiàn)DE算法特征評(píng)價(jià)簡(jiǎn)便,特征選擇依據(jù)更加合理,計(jì)算消耗低且時(shí)間代價(jià)呈線性,運(yùn)行時(shí)間增幅與樣本輸入規(guī)模增幅成固定比例。由算法步驟可知,第1~2行執(zhí)行次數(shù)和問(wèn)題規(guī)模無(wú)關(guān),僅執(zhí)行2次,第3~10行執(zhí)行次數(shù)隨問(wèn)題規(guī)模n變化,其執(zhí)行次數(shù)最少為5n,最多為6n。故算法計(jì)算復(fù)雜度僅和樣本數(shù)量相關(guān),算法最好情況和最壞情況的時(shí)間復(fù)雜度均為O(n)。

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

      本文通過(guò)3組實(shí)驗(yàn)來(lái)驗(yàn)證FDE算法的目標(biāo)效果和性能。第1組實(shí)驗(yàn)展示5個(gè)特征使用FDE算法的詳細(xì)計(jì)算過(guò)程和結(jié)果,驗(yàn)證FDE算法是否可達(dá)到有效去除非典型特征的目標(biāo)。第2組實(shí)驗(yàn)是在理想平衡數(shù)據(jù)集上驗(yàn)證不同特征數(shù)量下FDE算法的有效性,以及相比其他特征選擇算法的優(yōu)越性。第3組實(shí)驗(yàn)是在非平衡數(shù)據(jù)集上驗(yàn)證FDE算法選擇特征的有效性,以及相比其他特征選擇算法的優(yōu)越性。其中,為解決正負(fù)樣本不平衡情況下各算法組合對(duì)惡意樣本識(shí)別準(zhǔn)確率較低的問(wèn)題,引入權(quán)重?fù)p失函數(shù),以降低誤報(bào)率。

      4.1 實(shí)驗(yàn)數(shù)據(jù)集與預(yù)處理

      在Google Play應(yīng)用市場(chǎng)下載5 000個(gè)良性應(yīng)用,VirusShare下載5 000個(gè)惡意應(yīng)用,通過(guò)Androidguard反編譯得到AndroidManifest.xml和.smali文件,提取權(quán)限和API調(diào)用信息。10 000個(gè)應(yīng)用構(gòu)成平衡數(shù)據(jù)集,共提取14 610個(gè)特征,按7∶3比例劃分訓(xùn)練集和測(cè)試集。非平衡數(shù)據(jù)集中良性與惡意應(yīng)用比例為5∶1,共提取13 789個(gè)特征,按10∶1劃分訓(xùn)練集和測(cè)試集。原始特征為權(quán)限信息和API信息,需將特征信息數(shù)字化,樣本中如果包含該特征則該欄特征信息為1,否則為0。表1展示了少量權(quán)限信息的特征數(shù)字化。

      Table 1 Examples of individual sample feature digitization 表1 個(gè)別樣本特征數(shù)字化示例

      4.2 評(píng)價(jià)指標(biāo)

      TP(True Positive):將正類預(yù)測(cè)為正類;

      TN(True Negative):將負(fù)類預(yù)測(cè)為負(fù)類;

      FP(False Positive):將負(fù)類預(yù)測(cè)為正類;

      FN(False Negative):將正類預(yù)測(cè)為負(fù)類。

      準(zhǔn)確率:

      (6)

      精確率:

      (7)

      召回率:

      (8)

      誤報(bào)率:

      (9)

      F-1:

      (10)

      均值:

      (11)

      方差:

      (12)

      ROC(Receiver Operating Characteristic)曲線:ROC曲線是以假正率(FPR)和真正率(TPR)為軸的曲線,設(shè)定不同的判定正負(fù)樣本閾值,可以得到不同的TPR和FPR點(diǎn)對(duì)。將一系列點(diǎn)對(duì)連接成平滑的曲線,則為ROC曲線。TPR和FPR的定義見(jiàn)式(8)和式(9),其中TPR=Recall。

      4.3 FDE算法目標(biāo)效果驗(yàn)證

      設(shè)計(jì)FDE算法的目的是為了去除非典型特征,選擇更有效的特征。為驗(yàn)證FDE算法是否達(dá)到設(shè)計(jì)目的,從14 610個(gè)特征中選取5個(gè)特征進(jìn)行計(jì)算和分析。表2展示了5個(gè)特征的特征信息及FDE算法計(jì)算結(jié)果。

      詳細(xì)計(jì)算過(guò)程如下所示:

      步驟1統(tǒng)計(jì)惡意樣本和良性樣本數(shù)量Tm=5000和Tb=5000。

      步驟2分別統(tǒng)計(jì)5個(gè)特征在惡意樣本和良性樣本中出現(xiàn)的次數(shù)Nm和Nb。

      步驟3根據(jù)式(1)計(jì)算5個(gè)特征的S值。

      步驟4根據(jù)特征選擇標(biāo)準(zhǔn),選擇S值大于或等于0.1的特征,5個(gè)特征中有3個(gè)特征的S值大于0.1。

      表2中非典型特征Landroid/net/SSLSessi-onCache和Landroid/graphics/Typeface經(jīng)FDE算法計(jì)算,分值較低,與其他典型特征分值差距較大,排名第4位和第5位,不在選取特征范圍之內(nèi)。后續(xù)使用卡方校驗(yàn)方法對(duì)上述5個(gè)特征進(jìn)行分值計(jì)算,結(jié)果顯示非典型特征Landroid/net/SSLSessionCache分值排名第3位。計(jì)算結(jié)果表明,F(xiàn)DE算法能達(dá)到有效去除非典型特征的目的。

      4.4 平衡數(shù)據(jù)集實(shí)驗(yàn)結(jié)果與分析

      給定平衡數(shù)據(jù)集,將FDE算法中ɑ設(shè)置為不同值,驗(yàn)證不同特征數(shù)量時(shí)FDE算法的有效性,以及相比其他算法的優(yōu)越性。ɑ取值分別為0.1,0.15,0.2和0.25,產(chǎn)生的特征數(shù)量分別為778,566,398和233。將經(jīng)過(guò)特征選擇后的不同數(shù)量特征放入SVM、KNN、CNN、Bayes、決策樹(shù)DT(Decision Tree)5種分類器中進(jìn)行實(shí)驗(yàn)對(duì)比,其中,由于CNN的特性,在平衡數(shù)據(jù)集上有關(guān)CNN實(shí)驗(yàn)結(jié)果皆取500次迭代的平均值作為實(shí)驗(yàn)結(jié)果。各分類器實(shí)驗(yàn)結(jié)果如圖1所示。

      圖1a展示了各分類器準(zhǔn)確率的變化。由圖1a可見(jiàn),隨著特征數(shù)量的增加,多數(shù)分類器的準(zhǔn)確率都呈上升趨勢(shì)。其中,SVM分類器的效果最優(yōu),準(zhǔn)確率最高值達(dá)98%,CNN分類準(zhǔn)確率略低于SVM的,Bayes分類效果最差,準(zhǔn)確率最高值僅為93.30%。DT分類準(zhǔn)確率呈現(xiàn)上下波動(dòng)狀況,與KNN分類準(zhǔn)確率基本接近。

      圖1b展示了各分類器在778個(gè)特征上的ROC曲線(不含CNN算法,原因在于CNN取500次迭代平均值,無(wú)法生成其ROC曲線)。ROC曲線能夠綜合反映一個(gè)分類器的好壞,4種分類器ROC曲線中,最靠近左上方的是SVM的曲線,DT和KNN的曲線基本重合,Bayes的曲線最靠近右下方。實(shí)驗(yàn)結(jié)果表明,5種分類器中最適合FDE特征選擇的是SVM分類器,效果最差的是Bayes分類器。

      Table 2 Instance data and calculation analysis of FDE algorithm表2 實(shí)例數(shù)據(jù)及FDE計(jì)算分析

      Figure 1 Experimental results of FDE algorithm’s effectiveness with different features number圖1 不同特征數(shù)量時(shí)FDE算法的有效性實(shí)驗(yàn)結(jié)果

      為比較FDE算法和其他特征選擇算法的性能差別,選擇卡方校驗(yàn)、信息增益、FrequenSel和FDE算法在SVM、KNN、CNN 3種分類器上進(jìn)行實(shí)驗(yàn)對(duì)比,實(shí)驗(yàn)結(jié)果如圖2所示。由于FrequenSel無(wú)法自主選擇特征數(shù)量,經(jīng)參數(shù)調(diào)整特征數(shù)量最低為930個(gè),將單獨(dú)把FrequenSel選擇的930個(gè)特征和卡方校驗(yàn)、信息增益、FDE等選擇的778個(gè)特征作比較。

      圖2展示的實(shí)驗(yàn)結(jié)果中,SVM+Chi表示為SVM算法結(jié)合卡方校驗(yàn)特征選擇算法所得的實(shí)驗(yàn)結(jié)果,后續(xù)圖表中相關(guān)表示具有同種含義。由圖2a可知,F(xiàn)DE在各特征數(shù)量選擇上的準(zhǔn)確率都優(yōu)于卡方校驗(yàn)和信息增益特征選擇算法的。圖2b和圖2c所示為召回率和F-1值實(shí)驗(yàn)結(jié)果,由于對(duì)CNN的準(zhǔn)確率取500次迭代的平均值,所以無(wú)法得出其具體的召回率和F-1值。在召回率上FDE沒(méi)有表現(xiàn)出絕對(duì)優(yōu)勢(shì),卡方校驗(yàn)與SVM的組合擁有最高的召回率,但在KNN分類器上,F(xiàn)DE的召回率基本優(yōu)于其他2種算法的。在F-1值上,F(xiàn)DE算法與SVM的組合擁有最高值,且各特征數(shù)量上的F-1值優(yōu)于其他特征選擇算法的。

      Figure 2 Experimental results of FDE algorithm with other feature selection algorithms圖2 FDE算法與其他特征選擇算法對(duì)比實(shí)驗(yàn)結(jié)果

      表3給出了FDE算法與FrequenSel、卡方校驗(yàn)、信息增益等算法在SVM、CNN、KNN 3種分類器上的比對(duì)實(shí)驗(yàn)結(jié)果。FrequenSel特征選擇算法在SVM和CNN上的準(zhǔn)確率都是最低的,在KNN上的準(zhǔn)確率高于卡方校驗(yàn)和信息增益的,但低于FDE的。在召回率及F-1值上,F(xiàn)requenSel在KNN上有較好表現(xiàn),但在SVM上均最差。從3種評(píng)價(jià)指標(biāo)的最高數(shù)值來(lái)看,F(xiàn)DE算法優(yōu)于FrequenSel算法。

      同時(shí),為更詳細(xì)地比較各特征選擇算法對(duì)分類的影響,本文從分類概率值角度,驗(yàn)證分析了在SVM分類器上FDE與其他特征選擇算法對(duì)分類概率值的影響。實(shí)驗(yàn)中選取了平衡數(shù)據(jù)測(cè)試集中的1 522個(gè)惡意樣本和1 478個(gè)良性樣本,對(duì)各特征選擇算法在SVM分類器上的分類概率值進(jìn)行了驗(yàn)證分析。首先,選擇表現(xiàn)最優(yōu)異的SVM分類器,然后統(tǒng)計(jì)SVM結(jié)合不同特征選擇算法的分類概率值,計(jì)算出均值和方差。通過(guò)均值分析分類概率值的整體大小,通過(guò)方差分析分類概率值的離散程度。

      表4展示了在SVM分類器上各特征選擇算法對(duì)分類概率值的影響結(jié)果。在良性測(cè)試樣本上SVM+FDE的分類概率值的均值略低于SVM+Chi的,方差略高于SVM+Chi的。在惡意測(cè)試樣本上SVM+FDE的均值最高,方差最小。結(jié)合召回率說(shuō)明SVM+FDE傾向于惡意類別的識(shí)別,SVM+Chi在良性樣本的識(shí)別上效果要略好于SVM+FDE。雖然SVM+Chi在良性測(cè)試樣本上的分類概率值的均值和方差最優(yōu),但在惡意測(cè)試樣本上的分類概率值的均值和方差都是最差的。良性樣本和惡意樣本的分類概率值匯總計(jì)算后得出,SVM+FDE擁有最高的均值和最低的方差,所以SVM+FDE的分類概率值更大、更穩(wěn)定,F(xiàn)DE對(duì)分類的影響效果更好。

      Table 3 Experimental results of FDE algorithm,FrequenSel algorithm,Chi-square test algorithm and Information divergence algorithm on SVM,CNN and KNN 表3 FDE與FrequenSel、卡方校驗(yàn)、信息增益等算法在SVM、KNN、CNN 3種分類器上的比對(duì)實(shí)驗(yàn)結(jié)果

      Table 4 Average value and variance of classify probability values of FDE and other feature selection algorithms on SVM表4 FDE與其他特征選擇算法在SVM上分類概率值的均值和方差

      表5中對(duì)比了SVM+FDE與其他4位研究者文章中的實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果表明,與FDE結(jié)合效果最好的SVM分類器的準(zhǔn)確率、F-1值都高于其他4篇文獻(xiàn)的方法,但在召回率上略有不足。

      小結(jié):(1) 5種分類算法驗(yàn)證實(shí)驗(yàn)上的結(jié)果表明,F(xiàn)DE算法是有效可行的。(2) 與FrequenSel、卡方校驗(yàn)、信息增益等特征選擇算法的對(duì)比實(shí)驗(yàn)結(jié)果說(shuō)明,SVM+FDE擁有最高的準(zhǔn)確率和F-1值,但SVM+Chi的召回率最高。召回率只是單方面地反映對(duì)正樣本的識(shí)別準(zhǔn)確度,但準(zhǔn)確率和F-1值更能綜合反應(yīng)方法的好壞,且FDE算法對(duì)分類概率值的影響較好。這表明FDE算法有效且優(yōu)于其他算法。(3) FDE算法的不足之處為:對(duì)良性樣本的識(shí)別比其他算法略差,即召回率略低。導(dǎo)致這種情況的原因有2種可能:一是FDE算法設(shè)計(jì)的目的是去除非典型特征,選擇有利于識(shí)別惡意應(yīng)用的特征,從而導(dǎo)致對(duì)惡意應(yīng)用識(shí)別效果較好,對(duì)良性應(yīng)用的識(shí)別效果較差。二是由于本文只使用了權(quán)限和API信息作為特征,僅依據(jù)這2種特征可能不能全面地分辨良性應(yīng)用與惡意應(yīng)用。

      Table 5 Comparison of the method in this paper with other methods表5 本文方法與其他方法比較

      4.5 非平衡數(shù)據(jù)集實(shí)驗(yàn)結(jié)果與分析

      為模仿良性應(yīng)用數(shù)量遠(yuǎn)超出惡意應(yīng)用數(shù)量的真實(shí)應(yīng)用軟件環(huán)境,本文在10 000個(gè)應(yīng)用的基礎(chǔ)上,刪除4 000個(gè)惡意應(yīng)用,形成正負(fù)樣本比為5∶1的非平衡數(shù)據(jù)集。重新進(jìn)行特征提取后獲得13 789個(gè)特征,使用FDE算法進(jìn)行特征選擇,共選擇1 062個(gè)特征。與平衡數(shù)據(jù)集選擇的778個(gè)特征作比較,其中有709個(gè)特征重合,權(quán)限類特征重復(fù)率為零。實(shí)驗(yàn)訓(xùn)練集包含3 850個(gè)應(yīng)用,測(cè)試集共2 150個(gè)樣本。

      首先,設(shè)計(jì)實(shí)施了非平衡數(shù)據(jù)上FDE算法特征選擇有效性驗(yàn)證和FDE算法與其他特征選擇算法性能比對(duì)實(shí)驗(yàn)。實(shí)驗(yàn)中,卡方校驗(yàn)、信息增益、FrequenSel皆重新進(jìn)行特征選擇,并分別在SVM和CNN分類器上進(jìn)行實(shí)驗(yàn)比較,實(shí)驗(yàn)結(jié)果如表 6所示,其中所有CNN實(shí)驗(yàn)均運(yùn)行5次,每次迭代150次,每次運(yùn)行結(jié)果取值于最后一次的迭代結(jié)果,統(tǒng)計(jì)5次運(yùn)行的結(jié)果。

      表6中,Accuracy-max為最高準(zhǔn)確率,Accur-acy-aver為平均準(zhǔn)確率,M-Accuracy為惡意樣本識(shí)別準(zhǔn)確率。實(shí)驗(yàn)結(jié)果表明,當(dāng)正負(fù)樣本比例不平衡時(shí),各特征選擇算法效果均有所降低。在CNN實(shí)驗(yàn)中,F(xiàn)DE算法的最高準(zhǔn)確率和平均準(zhǔn)確率最高,最高值為96.56%,平均值為96.35%。且對(duì)惡意樣本識(shí)別效果最好,最高值達(dá)到93.85%,平均值達(dá)到93.72%。在SVM分類器上,F(xiàn)DE算法的效果略低于信息增益特征選擇算法的。同時(shí),對(duì)比了各特征選擇算法進(jìn)行特征提取的時(shí)間,結(jié)果表明,F(xiàn)DE算法的時(shí)間遠(yuǎn)遠(yuǎn)少于卡方校驗(yàn)和信息增益的,略少于FrequenSel的特征提取時(shí)間。以上分析表明,F(xiàn)DE算法在非平衡數(shù)據(jù)集上同樣有效,且相比其他特征選擇算法具有一定的優(yōu)勢(shì)。

      Table 6 Experimental results on unbalanced data sets表6 非平衡數(shù)據(jù)集上實(shí)驗(yàn)結(jié)果

      其次,注意到由于正負(fù)樣本的不平衡,使得各算法組合對(duì)惡意樣本的識(shí)別準(zhǔn)確率明顯低于對(duì)良性樣本的識(shí)別準(zhǔn)確率。由于特征良性或惡意判斷問(wèn)題可理解為二分類問(wèn)題,為解決惡意樣本識(shí)別準(zhǔn)確率低的問(wèn)題,引入權(quán)重?fù)p失函數(shù)。

      以交叉熵函數(shù)作為損失函數(shù),計(jì)算公式如下所示:

      (13)

      考慮到樣本的不平衡性,在損失函數(shù)中賦予不同類別不同的權(quán)重,改進(jìn)式(13)得權(quán)重?fù)p失函數(shù)如下所示:

      (14)

      其中,W0為第1個(gè)類別的權(quán)重,W1為第2個(gè)類別的權(quán)重。若W0值較高,W1值較低,第1類中的樣本被錯(cuò)分時(shí),權(quán)重?fù)p失函數(shù)值比無(wú)權(quán)重的損失函數(shù)值更大,而第2類中的樣本被錯(cuò)分時(shí),對(duì)損失值的影響較小。因此,影響網(wǎng)絡(luò)傾向于學(xué)習(xí)某些類而降低損失值。對(duì)于多分類的問(wèn)題,同樣可以使用這種賦予權(quán)重的方式來(lái)讓網(wǎng)絡(luò)傾向于某些類。

      實(shí)驗(yàn)中,采用FDE+CNN組合的方法驗(yàn)證引入權(quán)重?fù)p失函數(shù)的效果。圖3展示了FDE+CNN組合方法下各權(quán)重誤報(bào)率和準(zhǔn)確率變化情況,其中,良性類別權(quán)重為BW,惡意類別權(quán)重為MW。誤報(bào)率可以反映測(cè)試集中惡意樣本被錯(cuò)分為良性應(yīng)用的比例。

      Figure 3 Weight adjustment experimental results of FDE+CNN combination method圖3 FDE+CNN組合方法的權(quán)重調(diào)整實(shí)驗(yàn)結(jié)果

      由圖3a和圖3b可見(jiàn),隨著迭代次數(shù)的增加,誤報(bào)率呈現(xiàn)先下降后升高的趨勢(shì),且隨著惡意樣本類權(quán)重?cái)?shù)值的增大,誤報(bào)率整體呈下降趨勢(shì),但準(zhǔn)確率呈先上升后下降的趨勢(shì)。這表明惡意類別權(quán)重?cái)?shù)值增大可以減少誤報(bào)率,但權(quán)重超過(guò)一定數(shù)值,會(huì)降低整體準(zhǔn)確率。

      因此,經(jīng)多次權(quán)重參數(shù)調(diào)整,最終權(quán)重取值確定為MW=3,BW=1。此權(quán)重下惡意樣本識(shí)別準(zhǔn)確率為94.31%,整體準(zhǔn)確率為96.37%。相比于表6中未考慮權(quán)重?fù)p失函數(shù)的實(shí)驗(yàn)結(jié)果,惡意樣本識(shí)別準(zhǔn)確率得到提高,整體準(zhǔn)確率和平均值相近,但對(duì)良性樣本的識(shí)別率有所下降。

      該實(shí)驗(yàn)結(jié)果表明:(1)在非平衡數(shù)據(jù)集上FDE算法同樣有效,且相比于其他特征選擇算法,具有整體準(zhǔn)確率高、善于識(shí)別惡意應(yīng)用、特征提取時(shí)間短等特點(diǎn)。(2)針對(duì)非平衡數(shù)據(jù)中惡意應(yīng)用識(shí)別率較低的問(wèn)題,引入權(quán)重?fù)p失函數(shù),賦予惡意應(yīng)用類別高權(quán)重可提高對(duì)惡意應(yīng)用的識(shí)別準(zhǔn)確率。

      5 結(jié)束語(yǔ)

      本文針對(duì)Android惡意應(yīng)用靜態(tài)檢測(cè)提出了一種新的特征選擇算法FDE,其目的是為了解決已有特征選擇算法在檢測(cè)中存在的不足,以篩選出更有效的特征,提高檢測(cè)的準(zhǔn)確率。FDE算法從特征最本質(zhì)的角度篩選有效特征,去除非典型特征,從大量特征中選取少量特征作為分類算法的輸入,減少模型訓(xùn)練時(shí)間與特征提取時(shí)間。理論分析和實(shí)驗(yàn)結(jié)果表明,F(xiàn)DE算法是有效可行的,且相比于其他特征選擇算法具有自身的優(yōu)勢(shì)。但是也反映出,FDE算法還存在需要改進(jìn)完善之處:對(duì)非典型特征做的限定略顯粗糙,可能會(huì)使一些典型特征被限定為非典型特征,且實(shí)驗(yàn)中分類器在召回率上的表現(xiàn)略有不足。未來(lái)值得進(jìn)一步探討的方向有:(1)新特征[35 - 37]或有效特征的組合方法。有研究者發(fā)現(xiàn)僅靠權(quán)限和API信息2種特征并不能全面地檢測(cè)惡意應(yīng)用,可以挖掘更具有代表性的特征進(jìn)行惡意應(yīng)用檢測(cè)。(2)對(duì)抗攻擊的深度學(xué)習(xí)檢測(cè)方法研究。隨著深度學(xué)習(xí)的廣泛應(yīng)用[38],有研究者利用深度學(xué)習(xí)的脆弱性實(shí)現(xiàn)了針對(duì)基于深度學(xué)習(xí)的對(duì)抗攻擊。(3)基于Android的其他惡意行為檢測(cè),如釣魚(yú)網(wǎng)站檢測(cè)[39]等。

      猜你喜歡
      特征選擇分類器靜態(tài)
      靜態(tài)隨機(jī)存儲(chǔ)器在軌自檢算法
      BP-GA光照分類器在車道線識(shí)別中的應(yīng)用
      Kmeans 應(yīng)用與特征選擇
      電子制作(2017年23期)2017-02-02 07:17:06
      加權(quán)空-譜與最近鄰分類器相結(jié)合的高光譜圖像分類
      結(jié)合模糊(C+P)均值聚類和SP-V-支持向量機(jī)的TSK分類器
      聯(lián)合互信息水下目標(biāo)特征選擇算法
      機(jī)床靜態(tài)及動(dòng)態(tài)分析
      具7μA靜態(tài)電流的2A、70V SEPIC/升壓型DC/DC轉(zhuǎn)換器
      基于LLE降維和BP_Adaboost分類器的GIS局部放電模式識(shí)別
      基于特征選擇和RRVPMCD的滾動(dòng)軸承故障診斷方法
      抚顺市| 滨海县| 沽源县| 仲巴县| 祁东县| 和平县| 八宿县| 扎鲁特旗| 仙游县| 高密市| 宣汉县| 五指山市| 咸丰县| 米泉市| 永仁县| 台湾省| 昌黎县| 疏附县| 永宁县| 石棉县| 吴川市| 辰溪县| 广汉市| 淮阳县| 墨玉县| 江华| 佛冈县| 左云县| 贵溪市| 定南县| 长岛县| 石泉县| 黄冈市| 福州市| 延安市| 弋阳县| 石河子市| 竹山县| 斗六市| 密云县| 建阳市|