欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于機器學習的安卓惡意軟件動態(tài)檢測方法與流程

文檔序號:12467759閱讀:1606來源:國知局
一種基于機器學習的安卓惡意軟件動態(tài)檢測方法與流程
本發(fā)明涉及惡意軟件動態(tài)檢測技術(shù)、信息安全技術(shù)、機器學習等多種領(lǐng)域,特別是一種基于機器學習的安卓惡意軟件動態(tài)檢測方案。
背景技術(shù)
:Android的快速發(fā)展和急劇擴張,成就了其市場份額上的霸主地位,也使其成為了惡意軟件首要攻擊的目標平臺。同時由于Android的開放性,使得惡意軟件的開發(fā)成本和難度降低,廠家定制的ROM和第三方市場的大量存在也使得惡意軟件的生態(tài)更加復雜。共同作用下,Android惡意軟件的數(shù)量呈現(xiàn)爆炸性增長的態(tài)勢?;ヂ?lián)網(wǎng)協(xié)會總結(jié)了惡意軟件的特征并給出定義,“惡意軟件是指在未明確提示用戶或未經(jīng)用戶許可的情況下,在用戶計算機或其他終端上安裝運行,侵害用戶合法權(quán)益的軟件”。惡意軟件危害很多,輕則無法刪除占用空間,更甚者竊取宿主隱私、消耗用戶系統(tǒng)資源造成卡頓等,有些甚至可以直接造成用戶的經(jīng)濟損失、破壞宿主的硬件。Android系統(tǒng)的運行底層是Linux內(nèi)核,所有的Android應用對系統(tǒng)資源的使用,最終都反映在內(nèi)核的系統(tǒng)調(diào)用上。Android平臺的惡意軟件檢測,按照檢測方法和檢測目標劃分,可以分為動態(tài)檢測、靜態(tài)檢測以及基于云計算的檢測等。所謂靜態(tài)檢測是指在不運行軟件的情況下,將打包好的app安裝文件(.apk)進行解包獲取相應的文件,進而反編譯得到原代碼,檢測惡意代碼片段來確定惡意性。動態(tài)檢測,就是在待測應用在沙盒系統(tǒng)運行中時去收集相關(guān)信息,利用相關(guān)監(jiān)控工具監(jiān)控其是否有聯(lián)網(wǎng)、獲取隱私等行為,進而判別軟件是否有惡意性?;谠朴嬎愕臋z測是針對移動設(shè)備在電量和計算能力方面的局限性,把檢測方案部署到具備海量存儲和大量計算能力的云端服務器上,在被檢測設(shè)備上只保留代理軟件來采集基本信息,檢測結(jié)果通過網(wǎng)絡發(fā)回,從而提高檢測表現(xiàn)。技術(shù)實現(xiàn)要素:基于現(xiàn)有技術(shù),本發(fā)明提出了一種基于機器學習的安卓惡意軟件動態(tài)檢測方法,利用沙盒虛擬機環(huán)境,搜集基于安卓平臺的待測應用的動態(tài)執(zhí)行日志并進行機器學習,根據(jù)機器學習得到的分類模型,實現(xiàn)惡意軟件檢測。本發(fā)明的一種基于機器學習的安卓惡意軟件動態(tài)檢測方法,該方法包括以下步驟:步驟一,從不同來源收集兩個樣本庫,分別組成惡意軟件樣本庫和良性軟件樣本庫;步驟二,將兩個樣本庫中所有的基于安卓平臺的應用軟件依次安裝到沙盒虛擬機環(huán)境中,這些基于安卓平臺的應用軟件作為待測應用;步驟三,使用自動化腳本依次運行安裝在沙盒虛擬機環(huán)境中的待測應用,并模擬常規(guī)操作,同時使用動態(tài)監(jiān)測工具記錄相應的strace日志;步驟四,對上述strace日志進行特征匹配提取,統(tǒng)計342種systemcall每個出現(xiàn)的次數(shù),這樣每個待測應用生成一個與之對應的342維的統(tǒng)計特征向量,再標定良性或惡意的類別;步驟五,使用機器學習算法,在上述342維的特征向量的特征集合上進行訓練,得到可以對未知應用進行分類判別的分類模型;步驟六,生成各個待測應用的對應的strace動態(tài)特征向量,這里是一個由自然數(shù)組成的分別代表對應系統(tǒng)調(diào)用出現(xiàn)次數(shù)的342維的特征向量;步驟七,以strace動態(tài)特征向量作為分類模型的輸入數(shù)據(jù),將此輸入數(shù)據(jù)作為訓練數(shù)據(jù),對每組訓練數(shù)據(jù)定義一個明確的標識及對應的分類結(jié)果,將分類結(jié)果與分類模型標準比較,進而判斷出待測樣本是否是惡意軟件的判斷。與現(xiàn)有技術(shù)相比,本發(fā)明的一種基于機器學習的安卓惡意軟件動態(tài)檢測方法具有以下積極的技術(shù)效果:(1)通用性強、適用范圍廣的特點,沒有如靜態(tài)檢測技術(shù)中面對混淆和加密防護時無法完成反編譯提取源文件和代碼的問題,只要是可以運行的應用,均可以是用該方法實行檢測;(2)可以取得良好的準確率,適于作為各個安卓應用市場的應用審核工具和云端檢測方案的實時云端檢測中樞。附圖說明圖1為惡意軟件檢測流程實施例示意圖圖2為本發(fā)明的一種基于機器學習的安卓惡意軟件動態(tài)檢測方法整體流程圖。具體實施方式下面結(jié)合附圖對本發(fā)明作進一步詳細描述。本發(fā)明的整體思路是采用基于機器學習的動態(tài)檢測方法,首先通過大量樣本進行訓練,得出較好的分類模型,然后在沙盒中運行待檢測的程序,提取起其strace動態(tài)特征,輸入分類模型后得出檢測結(jié)果。如圖1所示,通過以下的具體實施例將本發(fā)明流程詳細描述如下:步驟1,從VirusShare論壇中獲取已經(jīng)標定的惡意程序集M,從安卓官方市場GooglePlay采集正常程序集B,從中各選取300個樣本,組成本發(fā)明的樣本庫;步驟2,開啟運行在Linux系統(tǒng)環(huán)境下的Android虛擬機,使用adbconnect命令連接adb調(diào)試工具,遍歷步驟一中收集到的樣本庫的安裝包文件夾,依次使用adbinstall*.apk指令,將待測應用安裝于沙盒虛擬機上;步驟3,使用腳本工具依次運行步驟二安裝好的待測應用,這里使用的是python腳本和shellscript腳本。對每個待測應用,調(diào)用Monkey自動運行工具,對其進行模仿人類的日常操作,同時調(diào)用strace工具,對該應用啟動的所有運行于Linux內(nèi)核中的進程進行監(jiān)控,獲取相應的strace運行日志,記錄應用對系統(tǒng)函數(shù)(systemcall)的調(diào)用情況,對于一個應用開啟多個進程的情況,將運行日志合并;步驟4,對樣本庫中所有的程序?qū)膕trace日志進行特征匹配提取,統(tǒng)計342種systemcall每種出現(xiàn)的次數(shù),這樣每個樣本生成一個與之對應的342維的統(tǒng)計特征向量,再標定類別。這些系統(tǒng)調(diào)用的類型包括但不限于表1:表1、系統(tǒng)調(diào)用變量實例系統(tǒng)調(diào)用號函數(shù)名入口點0readsys_read1writesys_write2opensys_open3closesys_close4statsys_newstat5fstatsys_newfstat6lstatsys_newlstat7pollsys_poll8lseeksys_lseek9mmapsys_mmap10mprotectsys_mprotect11munmapsys_munmap12brksys_brk13rt_sigactionsys_rt_sigaction15rt_sigreturnstub_rt_sigreturn16ioctlsys_ioctl17pread64sys_pread6418pwrite64sys_pwrite6419readvsys_readv20writevsys_writev………步驟5,基于上述步驟獲得的樣本特征向量集,使用相關(guān)的機器學習分類算法進行訓練,得到最佳的分類模型。在實施中,分別采用臨近算法(kNN)、支持向量機(SVM)、樸素貝葉斯(Bayes)等算法,比較結(jié)果最終選取SVM為最佳算法;步驟6,對于待測軟件,采用步驟2、步驟3和步驟4對其進行strace動態(tài)特征提取,生成其特征向量;步驟7,將待測軟件的特征向量,作為步驟5生成訓練模型的輸入,得到最終的分類結(jié)果,即對該軟件是否為惡意軟件做出判斷。當前第1頁1 2 3 
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
公主岭市| 广南县| 怀宁县| 龙海市| 宁波市| 时尚| 阳原县| 芒康县| 二连浩特市| 九江市| 海安县| 衢州市| 达孜县| 杂多县| 西宁市| 台南市| 彝良县| 阜阳市| 博野县| 龙胜| 桦甸市| 平武县| 莎车县| 静安区| 江达县| 林西县| 宣恩县| 巩留县| 财经| 平和县| 宁安市| 敖汉旗| 康乐县| 德格县| 华池县| 镇平县| 南投市| 乐平市| 灵寿县| 日土县| 鄄城县|