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

一種面向安卓應用的惡意代碼檢測方法與流程

文檔序號:11729690閱讀:799來源:國知局
一種面向安卓應用的惡意代碼檢測方法與流程

本發(fā)明屬于代碼檢測領域,特別涉及一種面向安卓應用的惡意代碼檢測方法。



背景技術:

android系統(tǒng)自發(fā)布以來就以迅猛的漲勢在全球范圍內(nèi)擴張開來,據(jù)idc的數(shù)據(jù)顯示到2015年android在手機操作系統(tǒng)的中市場份額就超過80%以上,全年出貨數(shù)量超過10億部,成為目前應用最廣的智能手機操作系統(tǒng)。由此而發(fā)布的android應用程序也越來越多。

android應用由于操作系統(tǒng)的開放性也由此變得雜亂繁多,仍有很大一部分的用戶認為移動終端的安全并不重要,市場上存在很多管理混亂的第三方移動市場,這些應用上傳了下載缺少監(jiān)管,給android終端安全造成非常嚴重的威脅。

android操作系統(tǒng)的開放性降低了其開發(fā)門檻,大量不安全的惡意應用涌入開發(fā)市場,將正常程序重新破解、加入惡意代碼、添加廣告再打包重新發(fā)布,一些會觸發(fā)網(wǎng)絡連接、隱私信息獲取等行為的正常應用,會被某些惡意應用聯(lián)合利用,惡意的應用程序不僅會導致程序越權操作,電池耗盡攻擊等,還會進行惡意進程的交互,最終導致用戶數(shù)據(jù)的泄漏,對用戶隱私造成極大的危害。

盡管已經(jīng)有專業(yè)的手機用用檢測測試中心,但主要還是依賴人工的內(nèi)容安全審核機制,并利用工具對隱藏的病毒和惡意插件進行全面掃描?;谌斯ず蛙浖ぞ叩膶徍藱C制,無論在檢測效率和可靠性等方面均面臨極大挑戰(zhàn)。

現(xiàn)有的android惡意代碼檢測技術主要分為靜態(tài)檢測和動態(tài)檢測。靜態(tài)檢測方法在不運行應用本身的情況下,對apk源碼進行反編譯,獲取應用程序組件、權限、api等信息,選擇部分信息作為特征屬性,與惡意樣本庫進行對比,由此判斷被檢測應用的安全性。動態(tài)檢測方法在應用程序運行過程中通過攔截可疑的行為來監(jiān)測android本身的各種特征參數(shù),再對比已知的惡意行為可能引起的特征參數(shù)的變化,由此判斷被檢測應用的安全。

綜上所述,靜態(tài)檢測雖然無需運行程序、代碼覆蓋率高、檢測時間短,但是無法準確全面的檢測到惡意代碼行為;動態(tài)檢測雖然更加全面,但是花費時間高,對應用程序本身的運行有很大的影響;需要一種新的安卓應用惡意代碼檢測方法來準確快速的檢測并分類出已有和新的惡意代碼類型,滿足具有開放性特征的日息萬變的安卓系統(tǒng)應用的發(fā)展。



技術實現(xiàn)要素:

本發(fā)明在已有的app惡意代碼庫基礎上,利用樹形結(jié)構將不同應用不同版本進行分類,生成應用程序族,對已有惡意代碼進行分類生成惡意代碼族。選取合適的特征值進行提取,在本模型中使用惡意代碼圖像和opcoden-gram作為特征值。利用隨機森林的方法對提取的特征值進行分析訓練,得到應用中的惡意代碼,建立兩個族群即應用-代碼之間的對應關系分類數(shù)據(jù)庫,對已有及變種的新惡意應用進行檢測。利用隨機森林分析的優(yōu)勢,結(jié)合應用和惡意代碼分類的思想,滿足安卓應用開放性的需求,建立一套完整的從應用到惡意代碼的檢測方法模型。

一種面向安卓應用惡意代碼檢測方法,服務器端通過分析模塊建立應用和惡意代碼之間的明確對應關系的數(shù)據(jù)庫,終端通過網(wǎng)絡服務模塊,上傳良性或惡意應用樣本,服務調(diào)度中心根據(jù)請求利用數(shù)據(jù)服務器中的內(nèi)容對其進行匹配,得到相應的分類檢測結(jié)果。

所述方法包括終端和服務器端,終端主要是用來測試檢測模型,包括一個網(wǎng)絡服務模塊,調(diào)用終端的檢測數(shù)據(jù)庫進行匹配,服務器端主要是分析模塊,服務調(diào)度中心和數(shù)據(jù)服務器組成,用戶終端和服務器端在網(wǎng)絡中進行交互;

所述服務器端是整個檢測方法的核心部分,在建立應用和代碼族群之后,分析模塊首先提取應用的特征值,然后利用算法對提取的特征值進行檢測,生成分類檢測結(jié)果,服務調(diào)度中心將其存入數(shù)據(jù)庫服務器。服務調(diào)度中心主要用來相應終端的請求,并和數(shù)據(jù)庫服務器進行交互。

所述終端主要是對服務器端建立的代碼檢測方法進行測試,核心是一個網(wǎng)絡服務模塊,包含一個應用接收接口,和匹配模塊。在終端輸入相應的應用之后,匹配模塊根據(jù)相關信息和位于服務器端的數(shù)據(jù)庫進行匹配,得出分析檢測結(jié)果。

所述特征值的提取,是指利用在代碼級別的代碼應用上,利用已有的特征值提取的方法,選取特定的特征值,在本模型中使用惡意代碼圖像和opcoden-gram。

所述分析模塊得到應用和惡意代碼之間對應關系的具體過程如下:

步驟1:根據(jù)提供應用的基本信息建立一個應用族,根據(jù)已有惡意代碼分類建立代碼族;

步驟2:提取應用特征值,以此作為分類算法的依據(jù);

步驟3:使用隨機森林算法對應用特征值進行分析,得到應用對應的惡意代碼;

步驟4:根據(jù)應用族和所得的惡意代碼分析結(jié)果,建立應用族和惡意代碼族之間的關系。

所述終端向服務器端發(fā)送代碼檢測請求并得到檢測結(jié)果的具體過程如下:

步驟a:分析模塊得到應用-惡意代碼關系之后,服務調(diào)度中心將其存儲到數(shù)據(jù)庫服務器中;

步驟b:終端通過網(wǎng)絡服務模塊中的應用接收接口上傳應用樣本,向服務器端發(fā)送檢測請求;

步驟c:服務器端接收到終端的檢測請求之后,服務調(diào)度中心會產(chǎn)生響應,根據(jù)終端的請求,向數(shù)據(jù)庫服務器發(fā)出匹配請求,得到一條應用-惡意代碼記錄,并將其傳送給終端;

步驟d:終端收到匹配結(jié)果之后,顯示在終端系統(tǒng)上。

有益效果

本發(fā)明提出了一種面向安卓應用的惡意代碼檢測方法,根據(jù)應用和惡意代碼的基本信息對其進行分類,得到應用族和惡意代碼族。提取應用特征值,用隨機森林算法對提取的特征值進行分析訓練,得到應用中的惡意代碼,建立兩個族群即應用-代碼之間的對應關系分類數(shù)據(jù)庫。利用隨機森林分析的優(yōu)勢,結(jié)合應用和惡意代碼分類的思想,在此方法上建立應用惡意代碼檢測的模型,可以快速的對已有應用的惡意代碼進行分類檢測,并可以對變種的新的惡意應用有一定的分析檢測能力,能夠應對安卓系統(tǒng)應用瞬息萬變的需求,加快惡意應用和代碼檢測的速度,提高對未知惡意應用的應對能力。

附圖說明

圖1是本實施例安卓應用惡意代碼檢測方法的模型架構圖。

圖2是本實施例安卓應用惡意代碼檢測方法的模型流程圖。

具體實施方式

下面將結(jié)合附圖和實施例對本發(fā)明做進一步的說明。

本發(fā)明實施例是基于終端、服務器端及網(wǎng)絡組成的一種安卓應用惡意代碼檢測的模型。該方法的模型架構圖如圖1所示。、終端是一個bs架構的網(wǎng)頁系統(tǒng),可運行在傳統(tǒng)pc、平板或者手機上,如windows、android等。終端核心是一個網(wǎng)絡服務模塊,由應用接收接口和匹配模塊組成。服務器端包含一個服務調(diào)度中心,服務調(diào)度中心根據(jù)終端的服務請求調(diào)用相應的服務技術為其服務,具體是,應用接收接口上傳一個應用樣本并發(fā)送一個請求到服務器,服務調(diào)度中心將其與數(shù)據(jù)服務器進行比對,得到相應的匹配結(jié)果,傳送給匹配模塊。分類數(shù)據(jù)庫中的數(shù)據(jù)是由分析模塊進行分類分析和訓練之后,由服務調(diào)度中心傳送到數(shù)據(jù)庫服務器的。

本發(fā)明提出的安卓應用惡意代碼檢測的方法是:服務器端通過分析模塊建立應用和惡意代碼之間的明確對應關系的數(shù)據(jù)庫,終端通過網(wǎng)絡服務模塊,上傳良性或惡意應用樣本,服務調(diào)度中心根據(jù)請求利用數(shù)據(jù)服務器中的內(nèi)容對其進行匹配,得到相應的分類檢測結(jié)果。該方法的流程如圖2所示,包括以下步驟:

步驟1:利用已有的應用惡意代碼樣本,建立應用族和惡意代碼族,提取應用樣本的特征值,采用隨機森林算法對應用進行分析,最終得到應用和惡意代碼分類之間的對應關系,轉(zhuǎn)步驟2。

本步驟的具體實現(xiàn)方式包括以下步驟:

步驟1.1:根據(jù)提供應用的基本信息建立一個應用族,根據(jù)已有惡意代碼分類建立代碼族;

步驟1.2:提取應用特征值,以此作為分類算法的依據(jù);

步驟1.3:使用隨機森林算法利用應用特征值進行分析,得到應用對應的惡意代碼。

步驟1.4:根據(jù)應用族和所得的惡意代碼分析結(jié)果,建立應用族和惡意代碼族之間的關系;轉(zhuǎn)步驟2。

步驟2:分析模塊得到應用-惡意代碼關系之后,服務調(diào)度中心將其存儲到數(shù)據(jù)庫服務器中,轉(zhuǎn)步驟3。

步驟3:終端通過網(wǎng)絡服務模塊中的應用接收接口上傳應用樣本,向服務器端發(fā)送檢測請求,轉(zhuǎn)步驟4。

步驟4:服務器端接收到終端的檢測請求之后,服務調(diào)度中心會產(chǎn)生響應,根據(jù)終端的請求,向數(shù)據(jù)庫服務器發(fā)出匹配請求,得到一條應用-惡意代碼記錄,并將其傳送給終端,轉(zhuǎn)步驟5。

步驟5:終端收到匹配結(jié)果之后,顯示在終端系統(tǒng)上,轉(zhuǎn)步驟6。

步驟6:檢測結(jié)束。

本發(fā)明實施例中提到的一些技術方法如下:

1.特征值提取

本實例中使用應用程序圖像和opcoden-gram作為特征值。應用程序圖像可以由應用程序的.asm文件來生成,并取其中的像素值作為特征。n-gram是自然語言處理領域的概念,但是它也經(jīng)常用來處理惡意代碼的分析。opcoden-gram就是對指令操作碼字段提取n-gram特征,n可以取值為2,3,4等。

2.分類算法

本實施例中使用到的分類算法是隨機森林,并使用一款免費的,非商業(yè)化基于java環(huán)境下開源的機器學習以及數(shù)據(jù)挖掘軟件weka來進行分析。weka存儲數(shù)據(jù)的格式是arff文件,是一種ascii文本文件。本實施例就是將特征數(shù)據(jù)生成arff格式的文件,利用weka自帶的分類算法進行數(shù)據(jù)訓練與模型測試。

機器學習中分為有監(jiān)督學習與無監(jiān)督學習。有監(jiān)督學習就是根據(jù)訓練集,用學習算法學習出一個模型,然后可以用測試集對模型進行評估準確度和性能。分類算法屬于有監(jiān)督學習,需要先建立模型。

3.數(shù)據(jù)服務器

數(shù)據(jù)服務器中存儲分析檢測得出的應用程序和惡意代碼類別的對應關系列表。每條記錄包含應用程序的基本信息和惡意程序分類基本信息。服務調(diào)度中心要響應終端的請求,則必須在數(shù)據(jù)服務器中存儲相應的應用程序和惡意代碼列表,包含各項可以標識該應用程序和惡意代碼的特征值和屬性的基本信息。便于終端獲取應用和對應惡意代碼以及服務調(diào)度中心檢索及獲得相關檢測信息。

服務器的數(shù)據(jù)庫搭建如下:

3.1選擇合適的數(shù)據(jù)庫服務器并安裝。

3.2執(zhí)行以下創(chuàng)建數(shù)據(jù)庫腳本內(nèi)容,創(chuàng)建應用程序數(shù)據(jù)庫和數(shù)據(jù)表。

3.3將應用程序信息及部署信息插入到app數(shù)據(jù)表中,完成數(shù)據(jù)庫的創(chuàng)建。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
凌海市| 镇赉县| 珲春市| 海口市| 保山市| 靖远县| 依安县| 东莞市| 孝义市| 仁布县| 奈曼旗| 乐陵市| 武宣县| 秭归县| 专栏| 鹰潭市| 枝江市| 冷水江市| 普陀区| 蓬莱市| 玉环县| 增城市| 蕉岭县| 社旗县| 同德县| 黄平县| 兴山县| 大港区| 昆山市| 宁城县| 神池县| 海门市| 邢台市| 张家口市| 淮北市| 册亨县| 莎车县| 个旧市| 萨嘎县| 淳安县| 泗洪县|