• 
    

    
    

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

      Android系統(tǒng)惡意程序檢測技術(shù)研究

      2015-06-15 22:34:03南秦博等
      現(xiàn)代電子技術(shù) 2015年12期
      關(guān)鍵詞:支持向量機(jī)安全問題

      南秦博等

      摘 要: 隨著Android系統(tǒng)的不斷發(fā)展,人們對(duì)該平臺(tái)的安全問題也更為關(guān)注。針對(duì)Android惡意應(yīng)用程序存在的安全隱患,提出一種基于事件的惡意程序檢測技術(shù)。系統(tǒng)采用C/S結(jié)構(gòu),通過手機(jī)客戶端獲取目標(biāo)分析程序的系統(tǒng)調(diào)用序列,提交服務(wù)器端分析處理,分析服務(wù)器預(yù)先運(yùn)行大量的已知惡意程序和良性程序作為訓(xùn)練樣本,利用支持向量機(jī)學(xué)習(xí)算法對(duì)調(diào)用序列流進(jìn)行聚類分類學(xué)習(xí),檢測出與樣本類似特征的惡意程序。實(shí)驗(yàn)測試表明,該技術(shù)對(duì)惡意程序檢出率高,誤報(bào)率低,為Android惡意程序檢測系統(tǒng)的設(shè)計(jì)提供有價(jià)值的參考。

      關(guān)鍵詞: Android; 安全問題; 惡意程序檢測; 支持向量機(jī)

      中圖分類號(hào): TN929.5 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2015)12?0047?04

      Research of malicious program detection technology for Android system

      NAN Qin?bo1 , MU De?jun 1, HOU Yan?yan2

      0 引 言

      Android是Google于2007年11月發(fā)布的基于Linux內(nèi)核的開源手機(jī)操作系統(tǒng)。它包括操作系統(tǒng)、用戶界面和應(yīng)用程序(移動(dòng)電話工作所需的全部軟件),而且不存在任何以往阻礙移動(dòng)產(chǎn)業(yè)創(chuàng)新的專有權(quán)障礙[1]。目前,Android已經(jīng)經(jīng)歷了數(shù)個(gè)版本的更新,市面上采用該系統(tǒng)的移動(dòng)設(shè)備數(shù)量也在飛速增長,它已經(jīng)是一個(gè)強(qiáng)大而成熟的系統(tǒng),從最初的智能手機(jī)領(lǐng)域逐漸進(jìn)入教育、醫(yī)療、汽車、軍事等重要領(lǐng)域。

      隨著Android系統(tǒng)的廣泛應(yīng)用,安全問題的重要性呈現(xiàn)逐步上升趨勢,已成為制約其發(fā)展的重要因素。從2010年8月發(fā)現(xiàn)的首個(gè)Android木馬程序“Trojan?SMS.Android –OS.FakePlayer”,到后來的“Geinimi”、“X臥底”病毒木馬等惡意程序的流行,更加劇了人們的擔(dān)憂。因此,要讓用戶放心地使用Android系統(tǒng),就必須全面分析并著手解決Android系統(tǒng)所面臨的各種安全問題。本文提出一種分析Android程序運(yùn)行觸發(fā)事件的系統(tǒng)調(diào)用序列流,并采用支持向量機(jī)學(xué)習(xí)算法對(duì)調(diào)用序列流進(jìn)行分類的惡意程序檢測方法,可以有效解決此類安全問題。

      1 Android系統(tǒng)安全模型

      1.1 Android系統(tǒng)架構(gòu)

      Android系統(tǒng)采用分層架構(gòu),共分為4層,從高層到低層分別是應(yīng)用程序?qū)樱ˋpplications)、應(yīng)用程序框架層(Application Framework)、系統(tǒng)運(yùn)行庫層(Libraries & Android Runtime)和Linux內(nèi)核層(Linux kernel),Android系統(tǒng)架構(gòu)如圖1所示。

      1.2 Android系統(tǒng)安全機(jī)制

      Android系統(tǒng)擁有多種安全機(jī)制,除繼承Linux系統(tǒng)的安全機(jī)制之外,同時(shí)還有針對(duì)性地增加了多重安全設(shè)計(jì),Android系統(tǒng)架構(gòu)不同層上相關(guān)安全機(jī)制如表1所示。

      2 Android系統(tǒng)安全隱患分析

      雖然Android系統(tǒng)已經(jīng)擁有眾多良好的安全機(jī)制,但也存在著一些安全隱患。目前主要存在以下3個(gè)方面的安全隱患:

      (1) 基于硬件的安全隱患。Android系統(tǒng)運(yùn)行于硬件設(shè)備之上,由于硬件的通用性和擁有系統(tǒng)最高權(quán)限,且在使用中難以升級(jí)和維護(hù),硬件缺陷存在的安全隱患危害很大。另外,移動(dòng)設(shè)備中的SD卡和SIM卡均能脫離移動(dòng)設(shè)備而單獨(dú)使用,也存在隱私泄露的風(fēng)險(xiǎn)。

      (2) 基于Linux內(nèi)核的安全隱患。移動(dòng)設(shè)備往往會(huì)禁用一些內(nèi)核選項(xiàng)用以提高系統(tǒng)有限資源的利用,其中也包括一些安全配置選項(xiàng),Linux每年都有近百個(gè)漏洞被CVE收錄,黑客利用這些內(nèi)核漏洞,獲得系統(tǒng)最高權(quán)限,造成用戶隱私信息泄露。目前,可以通過系統(tǒng)定制SEAndroid(Security?Enhanced Android)對(duì)所有的文件、目錄類資源的訪問進(jìn)行控制,強(qiáng)制性地限制信息的共享和流動(dòng),減輕Linux內(nèi)核的安全隱患[2]。

      (3) 基于應(yīng)用程序的安全隱患。應(yīng)用程序包括Android系統(tǒng)自帶和用戶自行安裝的應(yīng)用程序。由于用戶自行安裝應(yīng)用程序來源多樣,在安裝時(shí),用戶無法辨識(shí)惡意程序和正常程序,而往往選擇信任該程序,忽略相關(guān)的安全提示,授予其所申明的所有權(quán)限,從而大大弱化Android系統(tǒng)核心安全機(jī)制——權(quán)限控制。惡意程序非法獲得特權(quán),利用Linux內(nèi)核漏洞提升權(quán)限,造成隱私信息泄露,非法鏈接網(wǎng)絡(luò)消耗資源,被惡意扣費(fèi)等眾多威脅到用戶安全的隱患。

      3 基于惡意程序檢測的安全技術(shù)研究

      惡意程序是目前Android系統(tǒng)最大的安全威脅[3]。對(duì)惡意程序的檢測比較常用技術(shù)有代碼語義分析法和特征碼分析法。這兩種常用的檢測方法被各大反病毒軟件廠商廣泛使用,他們通過不斷更新惡意程序特征數(shù)據(jù)庫來提高檢出率,但都需要消耗大量的系統(tǒng)資源來進(jìn)行運(yùn)算,而移動(dòng)設(shè)備資源和硬件處理能力有限,手機(jī)使用時(shí)在一定程度上會(huì)影響用戶體驗(yàn)。本文通過對(duì)Android系統(tǒng)安全模型和安全隱患的深入分析和研究,以低資源消耗為目標(biāo),利用Android系統(tǒng)后臺(tái)監(jiān)聽技術(shù)特點(diǎn),獲取目標(biāo)程序的系統(tǒng)調(diào)用序列與特定觸發(fā)事件時(shí)調(diào)用序列進(jìn)行比較分析,研究基于事件的惡意程序檢測方法。

      3.1 系統(tǒng)設(shè)計(jì)

      程序的動(dòng)作最終都以系統(tǒng)調(diào)用的形式實(shí)現(xiàn),使用的系統(tǒng)調(diào)用反映了程序的行為特征,可以作為判斷程序是否惡意的依據(jù)?;谑录膼阂獬绦驒z測方法使用Android系統(tǒng)內(nèi)核提供的接口,獲取目標(biāo)分析程序的系統(tǒng)調(diào)用序列,獲取系統(tǒng)調(diào)用流,使用系統(tǒng)調(diào)用流作為惡意行為匹配的數(shù)據(jù)。

      為減輕Android系統(tǒng)資源的消耗,采用C/S結(jié)構(gòu),客戶端只進(jìn)行系統(tǒng)監(jiān)測、程序運(yùn)行信息捕獲,將復(fù)雜的分析工作交由服務(wù)器端處理,讓分析服務(wù)器進(jìn)行惡意程序檢測判斷。該檢測方法的系統(tǒng)運(yùn)行框架如圖2所示。

      在服務(wù)器端維護(hù)一個(gè)惡意程序調(diào)用序列信息存儲(chǔ)庫。惡意行為的實(shí)現(xiàn)會(huì)使用大量的系統(tǒng)調(diào)用,良性程序也會(huì)包含一部分系統(tǒng)調(diào)用,兩種程序的系統(tǒng)調(diào)用最終會(huì)形成一個(gè)完整的調(diào)用序列。但由于實(shí)現(xiàn)目的的不同,惡意程序和良性程序在系統(tǒng)調(diào)用序列上會(huì)有不同的特征表現(xiàn)。在服務(wù)器端,分析服務(wù)器預(yù)先運(yùn)行大量的已知惡意程序和良性程序,收集必要的調(diào)用序列作為訓(xùn)練樣本,利用機(jī)器學(xué)習(xí)算法對(duì)這些調(diào)用序列進(jìn)行聚類分類學(xué)習(xí),導(dǎo)入APK程序信息存儲(chǔ)庫,供系統(tǒng)對(duì)客戶端目標(biāo)程序進(jìn)行快速判別。

      3.2 數(shù)據(jù)采集

      Android系統(tǒng)有200多種系統(tǒng)調(diào)用事件,檢測方法需要確定哪些事件可能是惡意行為造成的,在此定義觸發(fā)事件列表,記錄的構(gòu)成包括:事件編號(hào),可疑事件名稱,可疑事件的系統(tǒng)調(diào)用模糊序列等,如表2所示。再通過實(shí)驗(yàn)對(duì)其進(jìn)行不斷的校驗(yàn)和修正。

      表2 觸發(fā)事件列表

      程序運(yùn)行將產(chǎn)生大量的系統(tǒng)調(diào)用,系統(tǒng)調(diào)用以流的形式輸出,通過對(duì)系統(tǒng)調(diào)用流與可疑事件序列進(jìn)行快速模糊對(duì)比,尋找可疑的事件。

      3.3 數(shù)據(jù)分析

      分析服務(wù)器要對(duì)惡意程序的系統(tǒng)調(diào)用流進(jìn)行判斷,必須預(yù)先運(yùn)行大量的已知惡意程序和良性程序,收集其調(diào)用序列作為訓(xùn)練樣本,利用機(jī)器學(xué)習(xí)算法對(duì)這些調(diào)用序列進(jìn)行聚類分類學(xué)習(xí)。

      支持向量機(jī)(Support Vector Machines,SVM)是由Vapnik于1995年在統(tǒng)計(jì)學(xué)習(xí)理論基礎(chǔ)上提出的一種新的機(jī)器學(xué)習(xí)方法[4]。它以VC維理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則為基礎(chǔ),其算法是一個(gè)凸二次優(yōu)化問題,能夠保證找到的極值解就是全局最優(yōu)解,在解決非線性及高維模式識(shí)別問題中表現(xiàn)出了許多特有的優(yōu)勢,非常適用于解決小樣本問題等。

      由于支持向量機(jī)具有非常強(qiáng)的分類能力,因此利用支持向量機(jī)來作為分類器,進(jìn)行惡意程序和良性程序的識(shí)別。基于支持向量機(jī)的惡意程序識(shí)別的一般流程如圖3所示。

      (1) 特征的選擇及提取

      特征選擇和提取是支持向量機(jī)模式識(shí)別系統(tǒng)的必要環(huán)節(jié),如果所選取的特征能夠比較全面反映類的本質(zhì)特征,那么分類器就比較容易設(shè)計(jì);否則,分類器設(shè)計(jì)的難度就增加。

      構(gòu)建基于支持向量機(jī)的惡意程序識(shí)別模型,首先需要確定訓(xùn)練樣本。特征提取對(duì)于惡意程序的識(shí)別效果有著重要的影響,因此這是一個(gè)難點(diǎn)和關(guān)鍵問題。本文將程序運(yùn)行時(shí)產(chǎn)生的系統(tǒng)調(diào)用流作為檢測的原始信號(hào),使用前文數(shù)據(jù)采集中觸發(fā)事件對(duì)應(yīng)的模糊序列作為特征信號(hào),對(duì)程序運(yùn)行的特征進(jìn)行提取。

      (2) SVM模式識(shí)別

      SVM模式識(shí)別就是根據(jù)特征信號(hào)、信息存儲(chǔ)庫中的標(biāo)準(zhǔn)模式和某種判別準(zhǔn)則,由提前訓(xùn)練好的支持向量機(jī)模型(支持向量機(jī)分類器)自動(dòng)識(shí)別,確定是否存在惡意程序。

      SVM的最優(yōu)分類函數(shù)為:

      [f(x)=sgni=1nαiyiK(xi,x)+b] (1)

      式中:[αi≥0]為拉格朗日乘子;[K(xi,x)]為核函數(shù),可以構(gòu)造實(shí)現(xiàn)輸入空間不同類型的非線性決策面的學(xué)習(xí)機(jī)器。核函數(shù)[K(xi,x)]的形式可以是:[K(xi,x)=xTix](線性核);[K(xi,x)=exp-x-xi2σ2](徑向基核)。

      3.4 測試分析

      已有研究者收集了1 260個(gè)程序樣本[5],從其中選取40個(gè)樣本作為惡意程序,從Android市場下載60個(gè)良性程序,將這100個(gè)程序作為分析服務(wù)器的訓(xùn)練樣本,選取SVM的核函數(shù)為RBF核函數(shù),其寬度參數(shù)為2.3,規(guī)則化參數(shù)為800,有相似系統(tǒng)調(diào)用流的程序?qū)?huì)聚成一類,100個(gè)訓(xùn)練樣本惡意程序和良性程序的分類結(jié)果如圖4所示。實(shí)驗(yàn)另外選取20個(gè)惡意程序和30個(gè)良性程序在MOTO ME525手機(jī)上安裝進(jìn)行測試,分析服務(wù)器對(duì)程序的系統(tǒng)調(diào)用流與前面100個(gè)訓(xùn)練樣本的分類結(jié)果進(jìn)行比對(duì)判別。經(jīng)過測試:20個(gè)惡意程序,其中有19個(gè)判別正確,1個(gè)判別錯(cuò)誤;30個(gè)良性程序,其中有29個(gè)判別正確,1個(gè)被錯(cuò)判為惡意程序。

      圖4 分類結(jié)果示意

      從實(shí)驗(yàn)結(jié)果來看,提取程序的系統(tǒng)調(diào)用流,使用SVM對(duì)系統(tǒng)調(diào)用流進(jìn)行聚類學(xué)習(xí),對(duì)于解決小樣本的惡意程序識(shí)別具有特別好的識(shí)別效果,誤判問題可以通過大量樣本學(xué)習(xí)來改善,該檢測方法對(duì)惡意程序具有良好的檢測能力。

      4 結(jié) 語

      本文通過對(duì)Android系統(tǒng)安全模型和安全隱患的深入研究分析,提出了基于事件的惡意程序檢測方法,通過實(shí)驗(yàn)驗(yàn)證,該檢測方法對(duì)未知惡意程序具有良好的檢測能力。本文所采用C/S結(jié)構(gòu)設(shè)計(jì),雖然減輕了Android客戶端的系統(tǒng)資源消耗,但檢測必須在服務(wù)器端進(jìn)行,易受網(wǎng)絡(luò)速度限制,用戶等待檢測時(shí)間較長,隨著Android平臺(tái)硬件性能的大幅提升,在以后的檢測系統(tǒng)設(shè)計(jì)中,可將惡意程序檢測功能模塊運(yùn)行在客戶端,適應(yīng)各種類型用戶需求。

      參考文獻(xiàn)

      [1] Anon. What Is Android? [EB/OL]. [2012?03?20]. http:// www.cnblogs.com/activi.

      [2] SHABTAI Asaf, FLEDEL Yuval, ELOVICI Yuval. Securing android?powered mobile devices using SELinux [J]. IEEE Security & Privacy, 2010, 8(3): 36?44.

      [3] ENCK William, ONGTANG MacHigar, MCDANIEL Patrick Understanding android security [J]. IEEE Security & Privacy, 2009, 7(1): 50?57.

      [4] VAPNIK V. N. Statistical learning theory [M]. New York: John Wiley, 1998.

      [5] ZHOU Ya?jin, JIANG Xu?xian. Dissecting Android malware: characterization and evolution [C]// Proceedings of IEEE Symposium on Security and Privacy. Washington DC: IEEE Computer Society, 2012: 95?109.

      [6] SHABTAI Asaf, FLEDEL Yuval, KANONOV Uri, et al. Googleandroid: A comprehensive security assessment [J]. IEEE Security & Privacy, 2010, 8(2): 35?44.

      [7] 廖明華,鄭力明.Android安全機(jī)制分析與解決方案初探[J].科學(xué)技術(shù)與工程,2011(26):6350?6355.

      [8] [美] DARCEY Lauren,CONDER Shane.Android應(yīng)用開發(fā)入門經(jīng)典[M].袁國忠,譯.2版.北京:人民郵電出版社,2012.

      猜你喜歡
      支持向量機(jī)安全問題
      動(dòng)態(tài)場景中的視覺目標(biāo)識(shí)別方法分析
      論提高裝備故障預(yù)測準(zhǔn)確度的方法途徑
      高校計(jì)算機(jī)安全防范措施研究
      基于熵技術(shù)的公共事業(yè)費(fèi)最優(yōu)組合預(yù)測
      有關(guān)計(jì)算機(jī)網(wǎng)絡(luò)安全問題的分析與探討
      輸變電設(shè)備運(yùn)行及安全防范措施
      中國市場(2016年36期)2016-10-19 04:01:46
      淺談煤礦瓦斯的安全管理
      基于支持向量機(jī)的金融數(shù)據(jù)分析研究
      错那县| 南部县| 莲花县| 汕头市| 延安市| 仪征市| 丹东市| 濮阳县| 朔州市| 扬州市| 娱乐| 清涧县| 余干县| 星座| 宣恩县| 金川县| 玉林市| 那曲县| 都匀市| 凤凰县| 色达县| 四川省| 桂林市| 筠连县| 谷城县| 永兴县| 茌平县| 黔江区| 来宾市| 威远县| 沁阳市| 海盐县| 图木舒克市| 兴义市| 梅州市| 临颍县| 安达市| 泽库县| 舒城县| 绵阳市| 察哈|