• 
    

    
    

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

      基于Android系統(tǒng)的手機(jī)惡意軟件檢測模型

      2016-09-07 05:51:39馬晉楊
      計(jì)算機(jī)測量與控制 2016年1期
      關(guān)鍵詞:調(diào)用數(shù)據(jù)挖掘規(guī)則

      馬晉楊,徐 蕾

      (沈陽航空航天大學(xué) 計(jì)算機(jī)學(xué)院, 沈陽 110136)

      ?

      基于Android系統(tǒng)的手機(jī)惡意軟件檢測模型

      馬晉楊,徐蕾

      (沈陽航空航天大學(xué) 計(jì)算機(jī)學(xué)院, 沈陽110136)

      為提高手機(jī)應(yīng)用軟件的安全性,提出一種基于Android系統(tǒng)的手機(jī)惡意軟件檢測模型;模型利用數(shù)據(jù)挖掘的方法對惡意軟件中的敏感API調(diào)用進(jìn)行數(shù)據(jù)挖掘,進(jìn)而得到惡意軟件檢測規(guī)則;針對檢測規(guī)則在檢測非惡意軟件時(shí),產(chǎn)生較高誤報(bào)率的問題,設(shè)計(jì)了加權(quán)FP-growth關(guān)聯(lián)規(guī)則挖掘算法,算法在數(shù)據(jù)挖掘的兩個(gè)步驟中,對敏感API調(diào)用加權(quán),利用支持度閾值去除一些出現(xiàn)次數(shù)頻繁而權(quán)重小的規(guī)則,降低了非惡意軟件的誤報(bào)率;實(shí)驗(yàn)結(jié)果表明,模型對惡意軟件檢測率達(dá)到81.7%,非惡意軟件的檢錯(cuò)率降低到11.3%。

      Android系統(tǒng);惡意軟件;數(shù)據(jù)挖掘;敏感API;FP-growth算法

      0 引言

      隨著手機(jī)應(yīng)用軟件的日益增多,人們對手機(jī)應(yīng)用安全性的要求愈來愈高。鑒于多種型號(hào)的手機(jī)和平板PC使用Android操作系統(tǒng),針對Android平臺(tái)的惡意軟件檢測得到研究者的廣泛關(guān)注。

      基于Android系統(tǒng)的惡意軟件檢測方法主要有:1)利用軟件獲得的訪問權(quán)限做檢測。文獻(xiàn)[1]運(yùn)用統(tǒng)計(jì)學(xué)知識(shí)給出了權(quán)限風(fēng)險(xiǎn)等級(jí)計(jì)算方法,該方法可以計(jì)算出一組權(quán)限的風(fēng)險(xiǎn)值,并且在應(yīng)用程序安裝時(shí)將風(fēng)險(xiǎn)值呈現(xiàn)給用戶,讓用戶決定是否安裝。文獻(xiàn)[2]通過對權(quán)限配置文件的挖掘分析,發(fā)現(xiàn)軟件使用敏感權(quán)限之間的關(guān)聯(lián)性,并將其作為檢測規(guī)則進(jìn)行惡意軟件檢測。這種方法能夠發(fā)現(xiàn)一些敏感惡意行為,但對軟件的權(quán)限申請要求嚴(yán)格,進(jìn)而限制了具有特殊權(quán)限要求軟件的使用。

      2)利用軟件中對敏感API的調(diào)用進(jìn)行檢測。惡意軟件通常利用API調(diào)用獲取或者操作用戶關(guān)鍵數(shù)據(jù)和系統(tǒng)資源,包括短信、通訊錄、通話記錄等,然后向外部傳送上述數(shù)據(jù)。文獻(xiàn)[3-4]利用分類算法分別對Symbian和Android可執(zhí)行文件中的函數(shù)調(diào)用進(jìn)行分類,進(jìn)而檢測軟件中是否包含惡意代碼,但由于缺乏惡意軟件樣本,檢測效果不易評價(jià)。文獻(xiàn)[5]利用K-means算法區(qū)分基于同一應(yīng)用軟件改寫的惡意代碼和非惡意代碼,該方法只能對同一應(yīng)用軟件不同變種進(jìn)行檢測。文獻(xiàn)[6]設(shè)計(jì)了記錄Android系統(tǒng)中敏感API調(diào)用的日志模塊,實(shí)現(xiàn)在軟件運(yùn)行時(shí)記錄敏感API調(diào)用及輸入/輸出的詳細(xì)信息,文獻(xiàn)沒有涉及對記錄的API進(jìn)行分析的方法及結(jié)果。

      本文通過對敏感API的研究發(fā)現(xiàn),對敏感API的調(diào)用進(jìn)行關(guān)聯(lián)可以有效的檢測出惡意軟件,而且不會(huì)出現(xiàn)上述的一些問題,實(shí)驗(yàn)結(jié)果表明,本文提出的方法對惡意軟件的檢測率達(dá)到了81.7%左右,具有很好的檢測效果。

      1 惡意軟件檢測模型

      本文提出的方法屬于靜態(tài)檢測方法,即對Android系統(tǒng)中運(yùn)行軟件的源文件進(jìn)行分析,得到軟件中敏感API的調(diào)用,利用這些API調(diào)用判斷此軟件是否為惡意軟件。惡意軟件檢測模型首先根據(jù)API調(diào)用在軟件惡意行為中重要程度的不同,運(yùn)用AHP層次分析法對每類敏感API做加權(quán)處理,再利用改進(jìn)后的FP-growth算法對惡意軟件數(shù)據(jù)集做數(shù)據(jù)挖掘,進(jìn)而獲得基于敏感API調(diào)用的惡意軟件檢測關(guān)聯(lián)規(guī)則,用于手機(jī)惡意軟件檢測,模型結(jié)構(gòu)如圖1所示。

      圖1 惡意手機(jī)軟件檢測模型

      1.1敏感API的定義與獲取

      出于安全考慮,Android應(yīng)用軟件在利用系統(tǒng)框架提供的關(guān)鍵性服務(wù)或系統(tǒng)調(diào)用時(shí),需要申請權(quán)限,Android系統(tǒng)中定義了100多種權(quán)限常量,應(yīng)用程序只有獲得了這些權(quán)限,才能在代碼中調(diào)用其對應(yīng)的API,對于這類申請了權(quán)限才能進(jìn)行調(diào)用的API,本文稱之為敏感API。

      Android惡意軟件主要表現(xiàn)為隱私竊取、惡意扣費(fèi)、資費(fèi)消耗、遠(yuǎn)程控制和系統(tǒng)破壞。惡意軟件需要在程序中調(diào)用一些敏感API的組合實(shí)現(xiàn)這些惡意行為,本文通過對惡意軟件數(shù)據(jù)集的分析,去除惡意軟件中很少使用的敏感API,最終確定71個(gè)常見的敏感API調(diào)用用于惡意軟件檢測,并根據(jù)其實(shí)現(xiàn)的功能分成六類,即交互類、系統(tǒng)類、網(wǎng)絡(luò)類、隱私類、吸費(fèi)類、數(shù)據(jù)讀寫類。表1列舉幾種常見的敏感API調(diào)用,為書寫方便省略部分類名及參數(shù)。

      表1 敏感API分類及部分調(diào)用函數(shù)

      論文數(shù)據(jù)挖掘使用的是Yajin Zhou等人[7]收集的惡意軟件數(shù)據(jù)集,該數(shù)據(jù)集中收集了49族1260款惡意軟件。但由于Android系統(tǒng)的更新,一些敏感API的調(diào)用在不同的系統(tǒng)版本中其實(shí)現(xiàn)方法、參數(shù)等已經(jīng)變更,本文根據(jù)Android系統(tǒng)的變化建立多版本的API鏈接關(guān)系,以適應(yīng)不同時(shí)期軟件API調(diào)用的檢測。

      1.2基于AHP層次分析法求敏感API權(quán)值

      實(shí)驗(yàn)發(fā)現(xiàn),直接對惡意軟件數(shù)據(jù)集做數(shù)據(jù)挖掘,將挖掘得到的規(guī)則集用于檢測惡意軟件,產(chǎn)生較高的誤報(bào)率。分析后發(fā)現(xiàn),不同的API的威脅程度是不同的,例如網(wǎng)絡(luò)訪問、讀手機(jī)狀態(tài)、寫SD卡等敏感操作在正常軟件中也頻繁出現(xiàn),如果將這些敏感API組合在一起作為檢測規(guī)則會(huì)出現(xiàn)較大的誤差。為避免上述情況發(fā)生,針對敏感API威脅程度的不同,采用AHP層次分析法對71種敏感API做加權(quán),再對加權(quán)后的數(shù)據(jù)集進(jìn)行挖掘,這樣可以在規(guī)則集中過濾掉一些出現(xiàn)次數(shù)較多但權(quán)重很小的規(guī)則,從而提高預(yù)測的準(zhǔn)確率。

      AHP層次分析法首先要對敏感API建立多級(jí)層次結(jié)構(gòu),本文構(gòu)造兩級(jí)層次結(jié)構(gòu),第一層為敏感API的分類,第二層為每類中的敏感API,構(gòu)成的層次樹如圖2(a)。為獲得權(quán)重值,在層次樹雙親相同的同層節(jié)點(diǎn)中構(gòu)造兩兩判斷矩陣,矩陣中按照這一層各個(gè)節(jié)點(diǎn)之間重要程度進(jìn)行兩兩比較,進(jìn)而將節(jié)點(diǎn)劃分為若干等級(jí),論文采用了常用的5級(jí)定量法,對第一層構(gòu)造的兩兩比較矩陣如圖2(b)所示。

      圖2 敏感API分層結(jié)構(gòu)圖及第一層比較矩陣

      計(jì)算第一層矩陣最大特征根λmax=6.6037以及其對應(yīng)的歸一化特征向量為:

      WT=(0.485 5,0.079 8,0.128 0,0.145 3,0.128 0,0.033 4)

      通過一致性檢驗(yàn),W為歸一化的權(quán)向量,其中的每一項(xiàng)wi(i=1,2,….6) 即為每一類的權(quán)值。運(yùn)用同樣的方法計(jì)算每一類中敏感API相對于上層節(jié)點(diǎn)權(quán)重系數(shù)wi,api,最終每一個(gè)敏感API的權(quán)值為wapi=wi,api*wi,其中wi為此API所在類的權(quán)重值。

      獲得敏感API權(quán)重之后,將數(shù)據(jù)集中軟件的API調(diào)用做加權(quán)處理,再利用FP-growth算法做數(shù)據(jù)挖掘。

      1.3加權(quán)FP-growth關(guān)聯(lián)規(guī)則挖掘

      FP-growth[8]算法因無需多次掃描事務(wù)數(shù)據(jù)庫,在運(yùn)行效率上優(yōu)于Apriori算法,本文利用FP-growth算法進(jìn)行加權(quán)數(shù)據(jù)挖掘。提取惡意軟件訓(xùn)練數(shù)據(jù)集中每個(gè)軟件調(diào)用的敏感API構(gòu)成一項(xiàng)事務(wù)加入到事務(wù)數(shù)據(jù)庫中,設(shè)置API頻度最小篩選閾值F和最小支持度篩選閾值S,加權(quán)FP-growth關(guān)聯(lián)規(guī)則數(shù)據(jù)挖掘算法如下:

      1)掃描事務(wù)數(shù)據(jù)庫,計(jì)算事務(wù)數(shù)據(jù)庫中個(gè)API的出現(xiàn)頻度;計(jì)算API的加權(quán)頻度=API頻度*wapi;刪除API的加權(quán)頻度小于F的API;將API按照加權(quán)頻度遞減排序(這一序列稱為L)。

      2)再次掃描事務(wù)數(shù)據(jù)庫,對于每項(xiàng)事務(wù)表示的軟件調(diào)用API,按照L中的順序重新排序,并將其插入到FP-Tree中。

      3)從FP-Tree中找出頻繁項(xiàng)集。

      4)對第3)步中找出的每項(xiàng)頻繁項(xiàng),計(jì)算頻繁項(xiàng)的加權(quán)支持度。設(shè)某個(gè)頻繁項(xiàng)T中出現(xiàn)的API調(diào)用集合為SAPI;

      T的加權(quán)支持度=max(wapi| api∈SAPI)*T的支持度;其中T的支持度是指利用數(shù)據(jù)挖掘得到的頻繁項(xiàng)支持度,若頻繁項(xiàng)的加權(quán)支持度小于S,則從頻繁項(xiàng)集中刪除該頻繁項(xiàng)。

      上述算法得到的頻繁項(xiàng)集作為惡意軟件的檢測規(guī)則集。利用加權(quán)的方法克服了文獻(xiàn)[2]中只選取極大頻繁項(xiàng)的做法,對一些不是極大頻繁項(xiàng),但同樣重要的規(guī)則也提取出來,加入到最終的檢測集中,進(jìn)而提高了檢測率,降低了誤報(bào)率。

      2 實(shí)驗(yàn)及結(jié)果分析

      為了驗(yàn)證系統(tǒng)的有效性,本文首先把收集的1 260款惡意軟件分為兩部分,其中70%作為數(shù)據(jù)挖掘的樣本數(shù)據(jù),對這部分?jǐn)?shù)據(jù)做挖掘得到惡意軟件檢測規(guī)則集;另外的30%數(shù)據(jù)作為檢測數(shù)據(jù)集,若惡意軟件家族中只有一個(gè)惡意軟件則不放入數(shù)據(jù)挖掘樣本集,直接作為檢測數(shù)據(jù)。實(shí)驗(yàn)中對每種惡意軟件家族選擇了不同的最小頻度閾值和最小支持度閾值,以ADRD軟件家族為例,選取最小頻度閾值為0.8,最小支持度閾值為0.074。用數(shù)據(jù)挖掘樣本做數(shù)據(jù)挖掘共得到75條規(guī)則,應(yīng)用這些規(guī)則對檢測數(shù)據(jù)集進(jìn)行檢測,檢測結(jié)果如表2所示。

      表2 Android系統(tǒng)惡意軟件檢測實(shí)驗(yàn)結(jié)果

      利用數(shù)據(jù)挖掘得到的規(guī)則對404個(gè)惡意軟件做檢測,檢測出330個(gè)惡意軟件,檢測率為81.7%;分析實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),由于在小樣本數(shù)據(jù)(某種惡意軟件家族只有幾個(gè)惡意軟件樣本)中,用于數(shù)據(jù)挖掘的樣本較少,導(dǎo)致部分小樣本惡意軟件家族的檢測率較低;再有就是部分惡意軟件調(diào)用的敏感API權(quán)重過小,行為與正常軟件行為接近,導(dǎo)致此類軟件的檢測率低。

      本文的加權(quán)數(shù)據(jù)挖掘方法主要去除了一些出現(xiàn)次數(shù)頻繁而權(quán)重小的規(guī)則,進(jìn)而降低了非惡意軟件的檢錯(cuò)率。為驗(yàn)證提出方法在非惡意軟件中的檢錯(cuò)率,從百度官方Android市場下載各類Android應(yīng)用軟件115個(gè),其中包括常用的軟件集合,如社交軟件、游戲軟件、Android讀書軟件、辦公軟件,最終檢測結(jié)果是13個(gè)軟件報(bào)出異常,誤報(bào)率為11.3%;分析發(fā)現(xiàn),誤報(bào)軟件大多是社交類軟件,這類軟件調(diào)用的敏感API多,組合也極其敏感。若在數(shù)據(jù)挖掘過程中不做加權(quán),利用得到的規(guī)則檢測115個(gè)非惡意軟件,報(bào)出43個(gè)軟件異常,誤判率達(dá)到了37.4%。

      3 結(jié)束語

      為提高基于Android系統(tǒng)的手機(jī)安全性,本文提出一種檢測Android系統(tǒng)手機(jī)惡意軟件的方法;論文定義了敏感API調(diào)用及其分類,利用惡意軟件樣本數(shù)據(jù)集對其軟件中的敏感API調(diào)用進(jìn)行數(shù)據(jù)挖掘,進(jìn)而得到惡意軟件檢測規(guī)則;針對挖掘規(guī)則檢測非惡意軟件時(shí),產(chǎn)生較高誤報(bào)率的問題,提出了加權(quán)FP-growth關(guān)聯(lián)規(guī)則挖掘算法。實(shí)驗(yàn)結(jié)果表明,本方法的惡意軟件檢測率達(dá)到81.7%,非惡意軟件的檢錯(cuò)率降低到11.3%,獲得了很好的檢測效果。

      方法獲得的敏感API加權(quán)系數(shù)是根據(jù)主觀判斷不同類API的重要程度,給出的判定矩陣計(jì)算得到的,使得敏感API的權(quán)重系數(shù)是人為確定的,進(jìn)一步的工作可利用數(shù)據(jù)集中的數(shù)據(jù)采用機(jī)器學(xué)習(xí)方法得出權(quán)重值。

      [1]Sangho Lee,Da Young Ju.Assessment of malicious applications using permissions and enhanced user interfaces on Android[A].(ISI’13): Intelligence and Security Informatics, 2013 IEEE International Conference on.[C].IEEE,2013:270-S270.

      [2]楊歡, 張玉清, 胡予濮,等.基于權(quán)限頻繁模式挖掘算法的 Android 惡意應(yīng)用檢測方法[J].通信學(xué)報(bào),2013,34(Z1):106-S115.[3]Schmidt Aubrey-Derrick,Clausen Jan Hendrik,Cam-Tepe Ahmet,et al.Detection Symbian os malware through static function call analysis[A]. (Malware 2009):Proceedings of the 4th IEEE International Conference on Malicious and Unwanted Software[C]. Montreal,Canada,2009:15-S22.[4]Schmidt Aubrey-Derrick,Bye Rainer,Schmidt Hans-Gunther,et al.Static analysis of executables for collaborative malware detection on Android[A]. (ICC’09):Proceedings of the 2009 IEEE International Conference on Communications[C].Dresden,Germany,2009:631-S635.

      [5]Iker Burguea,Urko Zurutuza,Simin Nadjmtehrani.Crowdroid:Behavior-based malware detection system for Android[A].(SPSM-’11):Proceedings of the ACM CSS workshop on Security and Privacy in Smartphones and Mobile Devices[C].Chicago. USA.2011:15-S26.

      [6]呂曉慶,鄒仕洪.基于smali的Android軟件敏感API調(diào)用日志模塊嵌入系統(tǒng)[J].科技論文在線.2012

      [7]Zhou Y J, Jiang X X. Dissecting Android malware: characterization and evolution[A]. Proceedings of the 33rd IEEE Symposium on Security and Privacy[C]. Oakland, USA, 2012. 95-S109.

      [8]Han J W,P J,Y Y W.Mining frequent patterns without candidate generation:a frequent pattern tree approach[J].Data Mining and Knowledge Discovery ,2004,8(1):53-S87.

      Mobile Malware Detection Model Based on Android System

      Ma Jinyang, Xu Lei

      (School of Computer, Shenyang Aerospace University, Shenyang110136, China)

      In order to improve the security of mobile application software based on Android system , a mobile malware detection model is proposed. The model manipulates sensitive API call via data mining to obtain detection rules.To reduce the false positive rate when the rule is used to detect the non malware. a weighted FP-growth association rule mining algorithm is proposed. Based on weighting the sensitive API call, we employ a support threshold to eliminate the rules which preserve small weight and occur with high frequency. The experiments show that the model achevied a detection rate of 81.7% for malwares, and reduced the false positive rate to 11.3%.

      Android system; malicious software; data mining ; sensitive API ; FP-growth algorithm

      2015-06-29;

      2015-08-25。

      馬晉楊(1991-),男,江蘇南通人,碩士研究生,主要從事網(wǎng)絡(luò)與信息安全方向的研究。

      徐蕾(1964-),女,上海人,教授,碩士研究生導(dǎo)師,主要從事網(wǎng)絡(luò)與信息安全方向的研究。

      1671-4598(2016)01-0156-03

      10.16526/j.cnki.11-4762/tp.2016.01.043

      TP309.5

      A

      猜你喜歡
      調(diào)用數(shù)據(jù)挖掘規(guī)則
      撐竿跳規(guī)則的制定
      數(shù)獨(dú)的規(guī)則和演變
      探討人工智能與數(shù)據(jù)挖掘發(fā)展趨勢
      核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
      LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
      讓規(guī)則不規(guī)則
      Coco薇(2017年11期)2018-01-03 20:59:57
      基于并行計(jì)算的大數(shù)據(jù)挖掘在電網(wǎng)中的應(yīng)用
      電力與能源(2017年6期)2017-05-14 06:19:37
      TPP反腐敗規(guī)則對我國的啟示
      基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
      一種基于Hadoop的大數(shù)據(jù)挖掘云服務(wù)及應(yīng)用
      巴林左旗| 东丰县| 江西省| 武平县| 黔江区| 中山市| 同江市| 含山县| 托克逊县| 三台县| 平山县| 永昌县| 阿坝县| 龙胜| 伊金霍洛旗| 济源市| 龙游县| 宝应县| 长乐市| 拉萨市| 城步| 珲春市| 许昌县| 同心县| 沧源| 阿合奇县| 安阳市| 子洲县| 弥渡县| 石家庄市| 浏阳市| 余庆县| 开原市| 伊金霍洛旗| 连云港市| 修武县| 达孜县| 盐津县| 渭南市| 伊宁市| 定安县|