亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android API調(diào)用的惡意軟件行為檢測方法研究?

        2019-03-26 08:44:38盧曉榮劉釗遠(yuǎn)
        計算機與數(shù)字工程 2019年3期
        關(guān)鍵詞:日志應(yīng)用程序增益

        盧曉榮 劉釗遠(yuǎn)

        (西安郵電大學(xué)計算機學(xué)院 西安 710061)

        1 引言

        現(xiàn)今手持移動設(shè)備的運算能力日益增強,搭載智能系統(tǒng)的移動設(shè)備成為日?;顒硬豢苫蛉钡囊徊糠?。因此,手持移動設(shè)備大多都存儲了大量涉及用戶隱私的重要信息,如通訊錄、短信、郵件、文件等,這些信息涵蓋了用戶生活和工作的各個方面。

        互聯(lián)網(wǎng)技術(shù)的發(fā)展給人們帶來了好處,而風(fēng)險也隨之而來。據(jù)統(tǒng)計,2016年全年,360互聯(lián)網(wǎng)安全中心累計截獲Android平臺新增惡意程序樣本1403.3萬個,平均每天新增3.8萬惡意程序樣本。從手機用戶感染惡意程序情況看,360互聯(lián)網(wǎng)安全中心累計監(jiān)測到Android用戶感染惡意程序2.53億,平均每天惡意程序感染量約為70萬人次[1],因此,手機安全問題亟待解決。

        在眾多類型的惡意應(yīng)用中,絕大部分都是在用戶不知情的情況下,通過在后臺訪問相關(guān)的設(shè)備資源如網(wǎng)絡(luò)、短信、聯(lián)系人、位置信息等并對這些資源進(jìn)行操作,達(dá)到其惡意的行為[2]。Android惡意代碼分析研究目前主要有兩種方法,即靜態(tài)分析和動態(tài)檢測。靜態(tài)分析是指通過分析程序代碼來判斷程序行為[3]。Enck 等[4]提出 ded反編譯器,從 An-droid安裝鏡像中反編譯出應(yīng)用程序的Java源代碼。Matsumotos等[5]提出一種靜態(tài)隱私數(shù)據(jù)泄露分析工具,通過分析應(yīng)用程序源代碼找到讀取隱私數(shù)據(jù)的API,然后分析隱私數(shù)據(jù)的傳輸流,從而得到該應(yīng)用程序泄露隱私數(shù)據(jù)的可能性。動態(tài)分析是指在嚴(yán)格控制的環(huán)境下執(zhí)行應(yīng)用程序,盡可能地觸發(fā)軟件的全部行為并記錄,以檢測應(yīng)用程序是否包含惡意行為[6]。Enck等[7]提出TaintDroid采用污點跟蹤技術(shù),將用戶敏感數(shù)據(jù)進(jìn)行“著色”,監(jiān)視敏感數(shù)據(jù)流,分析應(yīng)用程序的敏感數(shù)據(jù)泄露。Dietz等[8]提出Quire用于監(jiān)控混淆代理人攻擊(confused deputy attack),Quire通過跟蹤IPC調(diào)用鏈來防止應(yīng)用程序間權(quán)限的提升,并且對IPC和RPC通信數(shù)據(jù)做輕量級的加密。Rubin Xu等[9]提出了Aurasium,通過重打包應(yīng)用程序,修改smali文件添加監(jiān)控代碼,hook關(guān)鍵系統(tǒng)API并修改應(yīng)用程序入口,從而達(dá)到監(jiān)控應(yīng)用程序的目的。

        此方法缺點是要修改應(yīng)用程序,必須對應(yīng)用程序重新簽名,破壞了應(yīng)用程序的完整性。雖然靜態(tài)分析能夠快速有效地查找已知的惡意樣本代碼,但是無法良好應(yīng)對精良的代碼混淆和重打包技術(shù)。而動態(tài)的分析是通過實際運行軟件,捕捉行為進(jìn)行分析,它可以有效地應(yīng)對代碼混淆技術(shù),更真實地反映軟件意圖。

        即使目前有大量的代碼混淆技術(shù),但是行為在一定程度上會暴露惡意軟件的意圖。而一個惡意軟件實現(xiàn)自己的意圖,需要通過調(diào)用現(xiàn)有的系統(tǒng)API,否則就需要自己再編寫大量的代碼,不只增加了代碼復(fù)雜度,同時還會增加被檢測的幾率[5]。所以Android API調(diào)用是值得分析的軟件行為之一,因此,文中設(shè)計基于動態(tài)檢測的思想,結(jié)合Android API和參數(shù)及參數(shù)取值多特征提取實現(xiàn)惡意軟件檢測,彌補靜態(tài)分析的惡意軟件檢測的不足和解決以Android API為特征檢測率低的問題。

        2 Android惡意軟件動態(tài)檢測

        Android惡意軟件檢測目前主要有兩種方法,即靜態(tài)分析和動態(tài)檢測。關(guān)于Android應(yīng)用軟件的靜態(tài)檢測研究[10~12],大多數(shù)都是通過反匯編技術(shù)得到Android應(yīng)用程序的源碼然后對源碼進(jìn)行分析研究。由于靜態(tài)分析方法自身的局限性,使得許多學(xué)者從事Android應(yīng)用程序的動態(tài)研究,動態(tài)研究主要是通過Android應(yīng)用程序運行過程的行為及系統(tǒng)調(diào)用等方面進(jìn)行研究[13~16]。

        文中將采用動態(tài)檢測的方法,通過對惡意軟件行為的分析,實現(xiàn)惡意軟件的檢測。流程圖如圖1所示。

        圖1 基于Android API調(diào)用的惡意軟件檢測流程圖

        首先在國內(nèi)外軟件分享網(wǎng)站及論壇,收集惡意和正常軟件樣本。其次在虛擬機中,運行收集到的正常和惡意軟件樣本,收集軟件API調(diào)用日志。最后,日志文件作為分析對象,將惡意軟件動態(tài)行為分析轉(zhuǎn)換為對文本的分析。使用文本分析的方法,從收集到的日志文文中件中提取特征,進(jìn)行數(shù)據(jù)預(yù)處理。文中將會提取兩組特征進(jìn)行研究:API和API+參數(shù)+參數(shù)取值。通過擴大對Android API調(diào)用監(jiān)測范圍,探究參數(shù)和參數(shù)取值對實驗的影響。結(jié)合文檔頻率和信息增益進(jìn)行特征選取。對兩組特征分別設(shè)定不同的閾值,選擇不同數(shù)量的特征進(jìn)行實驗。同時選用多種分類算法[17]進(jìn)行實驗,對比分類效果,選定一種比較好的分類算法實現(xiàn)惡意軟件檢測。

        3 惡意軟件動態(tài)檢測方法實現(xiàn)

        基于Android API和參數(shù)及參數(shù)取值多特征提取的惡意軟件檢測。本節(jié)內(nèi)容主要包括數(shù)據(jù)采集和預(yù)處理,特征選擇和分類。

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

        由于知名的官方應(yīng)用網(wǎng)站會對所有發(fā)布的應(yīng)用軟件進(jìn)行嚴(yán)格的審查與測試,所以要想通過官方應(yīng)用市場獲取大量的惡意軟件樣本,幾乎是不可能的。因此只能在部分專門的網(wǎng)站取得,并且取得的樣本數(shù)量是有限的。

        文中收集的惡意軟件樣本,全部是從在線惡意軟件倉庫VirusShare中下載得到,均是較新的樣本,且?guī)в袑I(yè)的測試報告,包括病毒、木馬、蠕蟲、廣告軟件、勒索軟件等,而正常軟件樣本則全部來自于華為應(yīng)用市場。為確保所獲取到的樣本不會影響到最終的實驗結(jié)果,通過VirusTotal網(wǎng)站對所獲取到的軟件樣本進(jìn)行檢測與分類,并最終選定250個惡意軟件樣本和250個正常軟件樣本作為本次實驗的樣本,其中訓(xùn)練樣本包括:130個惡意軟件樣本和120個正常軟件樣本,測試樣本包括:120個惡意軟件樣本和130個正常軟件樣本。

        在動態(tài)惡意軟件檢測的過程當(dāng)中,數(shù)據(jù)收集是十分困難的部分。靜態(tài)的分析可以使用現(xiàn)有已經(jīng)形成的數(shù)據(jù)集,而動態(tài)檢測需要實際運行軟件,相對于靜態(tài)的分析耗時更多。

        文中將使用APIMonitor進(jìn)行自動分析,APIMonitor是一款監(jiān)視和控制應(yīng)用程序和服務(wù)的工具,該工具可以自動取得應(yīng)用程序的Android API調(diào)用信息,所得到的結(jié)果默認(rèn)放入config日志文件下。

        按照上述方法,使用腳本遍歷所有軟件樣本,提取本實驗所需的特征,即軟件運行中的API序列,將這些特征放入一個.arff文件中,作為分類器的輸入。

        3.2 數(shù)據(jù)預(yù)處理

        實驗中考慮的因素主要是API、參數(shù)和參數(shù)的取值,因此在進(jìn)行數(shù)據(jù)預(yù)處理的時候,目標(biāo)就是提取出日志中的API、參數(shù)和參數(shù)取值。

        3.2.1 API字符串提取

        在實驗的過程中首先提取了API,再使用字符串處理提取參數(shù)和參數(shù)的取值。

        我們可以將一個軟件的Android API調(diào)用日志中相關(guān)的API調(diào)用格式抽象為File{API1(arguments1:value,arguments 2:value,……),API2(arguments3:value,arguments4:value,……),……}。

        把每個文件中的API按種類統(tǒng)計出來形成數(shù)據(jù)集,然后再對數(shù)據(jù)集進(jìn)行處理形成API字符串?dāng)?shù)據(jù)庫,這里不考慮API在每個日志中出現(xiàn)的次數(shù),只計算它是否出現(xiàn)在文件中,文中提取出的API特征庫形式如下所示:

        API={API1 3,API2 6,API3 8,API4 5,…},API名字后邊的數(shù)字代表此API一共出現(xiàn)在多少個日志文件中。最后每個API為一行寫入TXT文檔中。API字符串提取流程如圖2所示。

        3.2.2 API參數(shù)及參數(shù)取值字符串提取

        API數(shù)據(jù)提取較為簡單,在處理API+參數(shù)+參數(shù)取值時,處理會更加的復(fù)雜。原始的數(shù)據(jù)集中,每個日志文件都會出現(xiàn)雜亂的字符,要使用多次的字符串處理,分割,連接才形成相應(yīng)字符串,不能從原始的日志文件中獲取。對同一個日志文件,API+參數(shù)+參數(shù)的取值可能會多次出現(xiàn),但是文中不考慮在單個文檔中的頻率,只考慮在該文檔中是否出現(xiàn)。文中提取出的API+參數(shù)+參數(shù)的取值特征庫形式如下所示:

        APIAv={API1A1value14,API1A1value27,API2A2value1 5,API2A3value1 3,…},同樣的,API+參數(shù)+參數(shù)的取值名字后邊的數(shù)字代表此API+參數(shù)+參數(shù)值一共出現(xiàn)在多少個日志文件中。最終統(tǒng)計形成TXT文檔。API參數(shù)及參數(shù)取值字符串提取流程如圖3所示。

        圖2 API字符串提取流程圖

        圖3 API參數(shù)及參數(shù)取值字符串提取流程圖

        3.3 特征選擇

        在數(shù)據(jù)預(yù)處理的步驟中,己經(jīng)從原始的日志文件中提取出了初步的API,API+參數(shù)+參數(shù)取值等字符串?dāng)?shù)據(jù)。而如果直接使用這些特征進(jìn)行實驗,特征的數(shù)目會很大,増加了分類的復(fù)雜度,會降低分類算法的效果。同時,在特征當(dāng)中,很多的特征對分類沒有貢獻(xiàn),反而會對分類造成干擾。所以特征的選擇在文本分類當(dāng)中是十分重要的步驟,特征的選擇好壞會直接影響到分類效果的優(yōu)劣。文檔頻率是最簡單的特征選擇方法,但是選擇出來的特征,只看出現(xiàn)在數(shù)據(jù)集文檔中的頻率是不全面的。而信息增益特征選擇的方法,可以反映特征所帶來的信息量,但是如果對所有的候選特征都進(jìn)行信息增益的計算,會增加計算的復(fù)雜度,降低算法效率。

        文中計劃在特征選擇中,將兩個方法進(jìn)行結(jié)合,首先使用文檔頻率對特征進(jìn)行初步篩選。對第一步處理得到的特征集,再進(jìn)行信息增益的計算,進(jìn)行第二步特征篩選。

        3.3.1 文本頻率特征選擇

        數(shù)據(jù)預(yù)處理階段生成的TXT文件一共是三列,第一列為API,第二列和第三列分別為該API特征出現(xiàn)在惡意軟件和非惡意軟件中的次數(shù)。如果出現(xiàn)在惡意軟件和非惡意軟件中的次數(shù)之和大于輸入的文檔頻率閾值,則保留該特征,否則舍棄該特征,形成新的文檔頻率特征庫。實現(xiàn)第一步特征篩選,初步減少了頻率沒有達(dá)到閾值的特征,減少了下一步的計算量,提高了算法的時間效率。

        3.3.2 信息增益特征選擇

        信息增益來自于香農(nóng)的信息論,使用信息熵進(jìn)行評估。在信息增益中,主要是衡量特征給分類帶來的信息量,帶來信息量越多的特征越重要[18]。計算信息增益,首先要計算信息熵。假設(shè)一共有m個事件{X1,X2…Xm},每個事件出現(xiàn)的概率是{P,且有則有單個事件的信息熵計算公式為

        所有事件的信息熵為

        當(dāng)某一個因素出現(xiàn)之后,會對事件的發(fā)生概率產(chǎn)生影響,即事件的不確定性發(fā)生了改變,信息増益就表示事件的這種不確定性的變化程度。計算信息增益,還需要計算劃分熵。劃分熵的計算公式如下:

        信息增益計算如下:

        根據(jù)每個特征的信息增益值進(jìn)行選擇,設(shè)定閾值,選擇信息增益值滿足該閾值的特征。

        3.4 分類

        在文本分類算法中,評價標(biāo)準(zhǔn)也是十分重要的部分。目前常用的分類算法評價指標(biāo)有識別率、誤判率、精確率、準(zhǔn)確率等。

        文中在進(jìn)行文本分類的過程當(dāng)中主要涉及惡意軟件和非惡意軟件兩類,對于二元分類問題,預(yù)測可能會產(chǎn)生四種相異的結(jié)果,TP(True Positive)表示將非惡意軟件正確分類為真的個數(shù),TN(Ture Negative)表示將惡意軟件正確分類為真的個數(shù),F(xiàn)P(False Positive)表示將非惡意軟件分類為假的個數(shù),F(xiàn)N(False Negative)表示將惡意軟件分類為假的個數(shù)。下面詳細(xì)介紹各個評價標(biāo)準(zhǔn)。

        識別率,就是正確將惡意軟件分類成惡意軟件的比率和正確將非惡意軟件分類成非惡意軟件的比率。比如惡意軟件識別率(真陽性率):

        誤判率,就是對于其他類別的樣本,有多少的概率可以將其分類為本類別的樣本。比如惡意軟件誤判率(假陰性率):

        精準(zhǔn)率,即所有分類為該類的樣本數(shù)量中真正屬于該類的比率。例如惡意軟件的精確率:

        總的準(zhǔn)確率,即所有分類準(zhǔn)確的樣本數(shù)量占總的樣本數(shù)量的比率。計算如下:

        文中將利用上述評價指標(biāo)對測試結(jié)果進(jìn)行評估驗證。

        4 實驗結(jié)果分析

        文中采用動態(tài)檢測分析的方法,構(gòu)建惡意軟件檢測模型。以API作為特征,根據(jù)3.4節(jié)介紹的評價指標(biāo),利用相關(guān)公式進(jìn)行分類評估,結(jié)果如表1、表2所示。

        以API+參數(shù)+參數(shù)的值為特征,利用相關(guān)公式進(jìn)行分類評價,結(jié)果如表3、表4所示。

        表1 API為特征的分類結(jié)果

        表2 API為特征的評估結(jié)果

        表3 API+參數(shù)+參數(shù)的值為特征的分類結(jié)果

        表4 API+參數(shù)+參數(shù)的值為特征的評估結(jié)果

        通過對比表1和表3發(fā)現(xiàn),以API+參數(shù)+參數(shù)的值作為特征比以API作為特征分類的結(jié)果要好,而且通過對比三種分類算法發(fā)現(xiàn)J48的分類結(jié)果最好。

        通過對比表2和表4發(fā)現(xiàn),以API+參數(shù)+參數(shù)的值作為特征的檢測識別率、準(zhǔn)確率等均比以API為特征的要高,并且在選定的三種算法中,J48的分類準(zhǔn)確率最高,說明該分類算法對文本所構(gòu)造特征的分類效果最優(yōu)。

        通過實驗對比結(jié)果可知,API+參數(shù)+參數(shù)的值作為特征的分類效果和檢測準(zhǔn)確率等均比API作為特征的好,表明文中所提出的方案能夠有效地提高惡意軟件檢測的準(zhǔn)確率。

        5 結(jié)語

        文中采用動態(tài)檢測的方法,分別以API和API+參數(shù)+參數(shù)值為特征,使用機器學(xué)習(xí)及數(shù)據(jù)挖掘技術(shù),對250個惡意樣本和250個正常樣本進(jìn)行仿真實驗,實驗結(jié)果表明,API+參數(shù)+參數(shù)值這一特征能夠有效地提高惡意軟件檢測的準(zhǔn)確率。

        文中所提出的方案雖然具備一定的檢測效果,但是由于實驗條件限制,實驗數(shù)據(jù)相對不是很多,不能夠很好地檢測所有的惡意軟件類別,因此,提出一種可針對任意類別惡意軟件的檢測方案至關(guān)重要。

        猜你喜歡
        日志應(yīng)用程序增益
        一名老黨員的工作日志
        華人時刊(2021年13期)2021-11-27 09:19:02
        基于增益調(diào)度與光滑切換的傾轉(zhuǎn)旋翼機最優(yōu)控制
        扶貧日志
        心聲歌刊(2020年4期)2020-09-07 06:37:14
        基于單片機的程控增益放大器設(shè)計
        電子制作(2019年19期)2019-11-23 08:41:36
        刪除Win10中自帶的應(yīng)用程序
        電腦報(2019年12期)2019-09-10 05:08:20
        基于Multisim10和AD603的程控增益放大器仿真研究
        電子制作(2018年19期)2018-11-14 02:37:02
        游學(xué)日志
        一種基于粗集和SVM的Web日志挖掘模型
        自增益電路在激光測距中的應(yīng)用
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        青青草免费在线视频导航| 国产香蕉97碰碰视频va碰碰看| 永久无码在线观看| 蜜臀av人妻一区二区三区| 中文字幕一区久久精品 | 无码欧美毛片一区二区三| 免费的成年私人影院网站| 亚洲人成网站在线播放小说| 日韩精品久久午夜夜伦鲁鲁| 性按摩xxxx在线观看| 一卡二卡三卡视频| 国产精品亚洲综合色区丝瓜| 99久久精品人妻少妇一| 好男人社区影院www| 国内少妇人妻丰满av| 少妇高潮紧爽免费观看| 蜜桃a人妻精品一区二区三区| 国产成人一区二区三区| 亚洲色婷婷免费视频高清在线观看| 亚洲精品一区二区视频| 国产精品内射久久一级二| 国产二级一片内射视频插放| 亚洲VA不卡一区| 国产女主播一区二区三区在线观看| 中文字幕免费在线观看动作大片 | 日本爽快片100色毛片| 国产欧美日韩a片免费软件| 国产经典免费视频在线观看| 四季极品偷拍一区二区三区视频| 亚洲精品久久一区二区三区777| 最新精品亚洲成a人在线观看| 丝袜美腿av免费在线观看| 激情综合婷婷色五月蜜桃| 久久久久国产精品熟女影院| 欧美一级视频在线| 女同三级伦理在线观看| 国偷自产视频一区二区久| 在线观看无码一区二区台湾| 一道本加勒比在线观看| 国产太嫩了在线观看| 在线视频一区色|