• 
    

    
    

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

      ?

      基于改進ID3算法的惡意軟件檢測策略

      2023-09-25 19:32:16謝維
      計算機時代 2023年9期

      謝維

      摘? 要: 當(dāng)前機器學(xué)習(xí)算法應(yīng)用于iOS平臺惡意軟件檢測的研究較少、公開樣本數(shù)據(jù)集獲取難、靜態(tài)檢測誤報率高。因此提出一種改進的ID3信息增益算法的動態(tài)惡意軟件檢測方法。首先創(chuàng)建數(shù)據(jù)集,使用改進的ID3信息增益算法選取前40個API調(diào)用序列組成特征向量并構(gòu)建決策樹,然后構(gòu)建測評指標(biāo)對實驗進行分析和驗證。實驗結(jié)果表明,本文方法具有較好的檢測率,與改進前的算法相比準(zhǔn)確率提高了2.5%,可有效地對惡意軟件進行動態(tài)識別。

      關(guān)鍵詞: iOS平臺; 惡意軟件檢測; ID3算法; 動態(tài)檢測; 創(chuàng)建數(shù)據(jù)集

      中圖分類號:TP181;TP309;TP311.5? ? ? ? ? 文獻標(biāo)識碼:A? ? ? 文章編號:1006-8228(2023)09-32-05

      Malware detection strategy based on improved ID3 algorithm

      Xie Wei

      (School of Information Science and Technology, Zhejiang Sci-Tech University, Hangzhou, Zhejiang 310018, China)

      Abstract: Currently, malware detection on iOS platform suffers from few researches on applying machine learning algorithms, difficulty in acquiring public sample datasets, and high false alarm rate of static detection. Therefore, a dynamic malware detection method based on improved ID3 information gain algorithm is proposed. Firstly, a data set is created, and the top 40 API call sequences are selected by the improved ID3 information gain algorithm to form the feature vector and construct the decision tree. Then, evaluation indexes are constructed to analyze and verify the experiment. Experimental results show that the proposed method has a good detection performance, and the accuracy rate is increased by 2.5% compared with the original algorithm. It can effectively identify malware dynamically.

      Key words: iOS system; malware detection; ID3 algorithm; dynamic detection; create data set

      0 引言

      一直以來,有關(guān)iOS系統(tǒng)惡意軟件檢測的研究較少,因為iOS是閉源系統(tǒng),分析應(yīng)用的行為必然會用到逆向以及插樁技術(shù),這大大增加了研究的難度。根據(jù)Skycure 2022年移動安全報告顯示,iOS的漏洞數(shù)量近年呈逐漸上升趨勢,因此對于iOS惡意軟件檢測的研究有很大價值。

      機器學(xué)習(xí)作為通用數(shù)據(jù)處理技術(shù),在各個領(lǐng)域都得到了廣泛的應(yīng)用。其中監(jiān)督式學(xué)習(xí)采用分類和回歸技術(shù)對模型進行開發(fā)和預(yù)測,在惡意軟件檢測領(lǐng)域研究中取得顯著成效。例如 Moon Dami[1]等人使用良性和惡意文件的標(biāo)記數(shù)據(jù)集進行監(jiān)督學(xué)習(xí),并不斷調(diào)整特征哈希向量的大小,不僅減少了70%的內(nèi)存空間,而且提高了檢測精度。 Urmila T.S.[2]采用機器學(xué)習(xí)和行為特征技術(shù),通過使用多個權(quán)限,將特征合并到預(yù)測模型中,將研究分成四個階段執(zhí)行檢測惡意軟件的相關(guān)程序。Tejaswini Ghate[3]等人建議結(jié)合兩種主要的分類算法來對惡意軟件的存在進行分類,同時探索滿足實驗需求的數(shù)據(jù)集,在同一數(shù)據(jù)集上執(zhí)行邏輯回歸,并加入XG-Boost以提高性能,來達到最好的分類效果。

      本文在現(xiàn)有研究基礎(chǔ)上,結(jié)合iOS系統(tǒng)運行時的特點即方法及屬性類型的確定是在運行時候綁定,提出一種基于改進的ID3信息增益算法[4]的動態(tài)惡意軟件檢測方法,檢測效果顯著。

      1 動態(tài)監(jiān)測系統(tǒng)

      1.1 iOS的安全機制

      圖1是iOS系統(tǒng)安全架構(gòu)模型圖,歸納起來主要有安全啟動策略,代碼簽名,沙盒機制,數(shù)據(jù)加密,地址布局空間隨機化[5]等幾個部分,在安全性能上,iOS系統(tǒng)使用了大量的密碼學(xué)理論和計算機加密技術(shù)[6],這些措施增加了iOS系統(tǒng)的穩(wěn)定性。

      越獄,是用戶為了獲取iOS系統(tǒng)最高權(quán)限的一種技術(shù)手段,并且可對其權(quán)限進行更改。常見的一些脫殼技術(shù)包括dump-decrypted,Clutch等。本文設(shè)計的動態(tài)監(jiān)測系統(tǒng)也應(yīng)用了越獄技術(shù)。

      1.2 系統(tǒng)的設(shè)計

      要對iOS系統(tǒng)進行動態(tài)分析,就要設(shè)計一個動態(tài)監(jiān)測系統(tǒng)來實時獲取程序的運行情況。在越獄的手機上我們可以使用GDB,CYCRIPT等工具來調(diào)試[7]。本監(jiān)測系統(tǒng)不僅可以應(yīng)用在越獄手機也可以用在非越獄手機上。

      本檢測框架基于Frida,它是基于Phython以及JavaScript語言的能夠?qū)OS系統(tǒng)進行Hook的一款強大的調(diào)試框架,在非越獄的手機上插入FridaGadget.dylib即可對設(shè)備進行動態(tài)監(jiān)測。越獄手機在cydia上運行該檢測框架即可。

      本文監(jiān)測原理是在API調(diào)用層和系統(tǒng)層注入一個監(jiān)控層。監(jiān)測框架如圖2所示。

      監(jiān)測系統(tǒng)本文統(tǒng)一叫做EMS,一部分運行在服務(wù)器端,另一部分運行在iOS設(shè)備端,使用Phython語言開發(fā)。服務(wù)器端完成一些基礎(chǔ)的信息配置,比如越獄或非越獄,設(shè)置自定義腳本等等,在iOS設(shè)備端對設(shè)備模擬操作來獲取應(yīng)用程序運行時的API調(diào)用序列。

      2 特征提取

      2.1 利用改進ID3算法篩選高危權(quán)限

      獲取相冊或者視頻等這類的API都可叫做敏感的API,重載的特點很多看似不同的API實質(zhì)一樣,而使用機器學(xué)習(xí)訓(xùn)練模型時特征個數(shù)越多,訓(xùn)練需時間越長,也容易引起特征“維度”災(zāi)難,因此需要降低特征向量的維度。

      2.2 ID3算法介紹

      解決分類問題時,決策樹算法是用得最多,范圍最廣的算法,核心是構(gòu)建一棵分類準(zhǔn)確的決策樹[8]。它具有分類快,簡單易用的特點。本文通過使用信息增益算法對數(shù)據(jù)集中的每一個特征進行計算,從而過濾選擇出分類能力更強的特征,它的定義如下:

      [Ι(S1,S2,…,Sn)=-i=1nP1?log2(Pi)? (1≤i≤n)] ⑴

      式⑴表示樣本。其中,p表示某個樣本出現(xiàn)的概率,I表示數(shù)據(jù)集樣本的期望信息量。

      [Ι(S1,j,S2,j,…,Sn,j)=-i=1nPi,j?log2(Pi,j)? (1≤j≤k)]? ⑵

      式⑵表示某個特征在所有樣本中的期望信息量。

      [Ε(?。?i=1kSjS?Ι(S1,j,S2,j,…,Sn,j)] ⑶

      式⑶表示A特征的信息熵。

      [Gain(Α)=Ι(S1,j,S2,j,…,Sn,j)-Ε(?。 ⑷

      式⑷表示A特征的信息增益。

      雖然該算法優(yōu)點突出,但也有一處明顯不足,即存在多值偏向[9]的問題,會優(yōu)先測試屬性較多的特征,而不是優(yōu)先選擇跟結(jié)果有密切聯(lián)系的特征,基于此,本文對其進行了改進。

      2.3 ID3算法的改進

      2.3.1 信息增益的修正

      針對ID3算法存在多值偏向的問題,本文提出了使用增益率和信息增益兩個衡量標(biāo)準(zhǔn)來共同構(gòu)建ID3決策樹算法,改進公式如下:

      [GR(?。?Gain(Α)K] ⑸

      其中,分母K表示各個屬性的個數(shù),系數(shù)作為修正參數(shù),修正了多值偏向?qū)π畔⒃鲆娴挠绊?。但這個公式結(jié)果可能會有接近0的情況,即常說的過擬合現(xiàn)象。

      2.3.2 屬性閾值

      為了解決過擬合問題提出閾值的解決方法:

      [r=1S1kΕ(?。 ⑹

      其中,r代表閾值,表示數(shù)據(jù)集中所有屬性的平均信息熵,s為數(shù)據(jù)集中的樣本數(shù)量,k表示樣本中特征的數(shù)量,E(A)是式⑶表示的某個特征的信息熵值通過改進的該方法可以訪問到數(shù)據(jù)集中每一個特征屬性。

      2.3.3 平衡系數(shù)

      為了修復(fù)多值偏向以及信息增益補償過度的問題,需要引入平衡系數(shù)α,該系數(shù)規(guī)定,當(dāng)某個特征值信息增益大于它的閾值時,選擇信息增益作為最后的結(jié)果,當(dāng)某個特征的信息增益小于閾值時,使用閾值作為結(jié)果。平衡系數(shù)的計算公式為:

      [α=GR(A)×rGR(A)] ⑺

      該系數(shù)等效于修正后以及屬性閾值r共同作用的結(jié)果,有效地解決了ID3算法自身的缺陷,優(yōu)化后的信息增益算法為:

      [GR=α×Gain(A)] ⑻

      用改進后的信息增益算法選出數(shù)據(jù)集中屬性計算結(jié)果最好的前40位特征,作為本數(shù)據(jù)集的特征向量集。

      2.4 提取高危權(quán)限特征

      特征提取的部分需要用到上述1.2節(jié)設(shè)計的EMS系統(tǒng)來監(jiān)控API的調(diào)用,獲取API調(diào)用序列的同時,濾除冗余部分并保存結(jié)果,使其成為數(shù)據(jù)集的一部分。然后使用改進的ID3算法訓(xùn)練數(shù)據(jù)集,保留前40個信息增益比較大的特征作為最后的特征集,將特征的有無量化為“1”或“0”,“1”代表該特征下的API有調(diào)用,“0”則相反,最后敏感API調(diào)用頻次的動態(tài)特征信息描述如下:

      [Fdanamic=f1,f2,……,f41(0≤fi<∞)]? ⑼

      [f1],[f2]...,[f40]等前40位表示的是調(diào)用的一個API序列,最后一位代表該樣本是惡意的還是良性,惡意用“0”來表示,良性的用“1”表示。

      表1為篩選出的部分敏感API序列。

      3 實驗結(jié)果

      3.1 創(chuàng)建數(shù)據(jù)集

      本實驗整體架構(gòu)如圖3所示。

      未知軟件放入EMS系統(tǒng),拿到運行數(shù)據(jù)作為數(shù)據(jù)集的待測樣本,最后分類器輸出為“0”或者“1”。由于數(shù)據(jù)集獲取困難,本文從App Store 60款iPhone必備App,人氣影視與音樂,人氣攝影與視頻工具等模塊里下載一些常見的App 200款作為白名單,從第三方渠道下載惡意的軟件100款作為黑名單,如圖4所示。

      下載App之前先將手機里所有的非系統(tǒng)軟件按照設(shè)置→通用→iPhone存儲空間→點擊需要卸載的軟件的步驟一步步操作,防止與后續(xù)需要下載的軟件產(chǎn)生交互或數(shù)據(jù)存留造成獲取的實驗數(shù)據(jù)不準(zhǔn)確。軟件下載后即在EMS系統(tǒng)運行,并收集運行的數(shù)據(jù)。運行App的過程中會產(chǎn)生很多的調(diào)用API,有些API明顯跟實驗分類結(jié)果無關(guān),基于此本文設(shè)計了過濾算法,即維氏匹配法,該匹配法滿足將不相干調(diào)用API接口從數(shù)據(jù)庫中濾除。維氏匹配法不僅可以濾除一部分毫不相干的API調(diào)用序列,也可以濾除一些冗余序列。之后對App打標(biāo)為0或1,0代表惡意軟件,1代表良性軟件,并對模型進行訓(xùn)練。

      3.2 評測系統(tǒng)的建立

      為了達到惡意軟件自動檢測的效果,本文設(shè)計了一款A(yù)pp應(yīng)用運行時自動監(jiān)控以及對API序列進行抓取的EMS監(jiān)控系統(tǒng),該監(jiān)測系統(tǒng)的安裝環(huán)境為Windows10,被測手機設(shè)備為iPhone6s,系統(tǒng)的版本為10.1.2,系統(tǒng)的測評標(biāo)準(zhǔn)如表2所示。

      表2中TP表示的是一個惡意軟件被預(yù)測為惡意樣本的數(shù)量,F(xiàn)P表示的是一個良性樣本的被預(yù)測為惡意軟件的數(shù)目,F(xiàn)N表示的是惡意的樣本被預(yù)測為良性的App的數(shù)量,而TN表示的是一個良性的樣本被預(yù)測為良性樣本的量,TRP代表的是當(dāng)前的預(yù)測樣本中真正的惡意樣本總數(shù)占所有樣本的比率。

      3.3 實驗

      本文使用ID3機器學(xué)習(xí)算法以及改進的ID3機器學(xué)習(xí)算法分別對自創(chuàng)建的數(shù)據(jù)集進行實驗,數(shù)據(jù)集分為兩個部分,一部分為將要訓(xùn)練的數(shù)據(jù)集,一部分作為測試集來驗證改進算法的效果,實驗結(jié)果如圖5~圖8所示(縱軸單位:%;橫軸代表樣本數(shù),單位:個)。

      由圖5~圖8可知,隨著樣本數(shù)量的增加分類效果的各個指標(biāo)都穩(wěn)步上升,如樣本數(shù)量從60到300后使用改進的ID3算法精確度提升了3%,而使用未改進的算法也提高了3%,除此之外隨著算法的改進各個分類的指標(biāo)也較于未改進有了明顯的提升,例如召回率,在使用改進算法之后提高了2%。

      最終分類效果對比如表3所示。

      由此可見,本改進方法在iOS平臺惡意軟件檢測上有非常好的效果。

      4 結(jié)論

      本實驗使用改進的ID3算法進行惡意軟件檢測,準(zhǔn)確率達到了92.7%,與改進前的算法相比提高了2.5%,具有很好檢測效果。

      當(dāng)前在iOS平臺上的惡意軟件檢測研究較少且多為靜態(tài),誤報率高,本文自創(chuàng)數(shù)據(jù)集并提出動態(tài)檢測方法,解決了靜態(tài)檢測策略不足的問題。采用了改進ID3算法,提升了特征提取效果,并提升惡意軟件檢測效率以及準(zhǔn)確率。

      本文自創(chuàng)的樣本數(shù)量有限,后續(xù)可進一步擴充樣本的數(shù)量并結(jié)合云端分析平臺進一步提高惡意軟件檢測的準(zhǔn)確率和效率。

      參考文獻(References):

      [1] Moon Damin and Lee JaeKoo and Yoon MyungKeun.Compact feature hashing for machine learning based malware detection[J]. ICT Express,2022,8(1):124-129.

      [2] Urmila T.S.. Machine learning-based malware detection on Android devices using behavioral features[J].Materials Today: Proceedings,2022,62(P7):4659-4664.

      [3] Machine Learning Based Malware Detection: a Boosting Methodology[J].International Journal of Innovative Technology and Exploring Engineering,2020,9(4):2241-2245.

      [4] 王利軍.決策樹ID3算法的優(yōu)化[J].菏澤學(xué)院學(xué)報,2020,42(5):15-19,30.

      [5] 甄恩浩.基于iOS平臺的惡意軟件檢測機制研究[D].四川:電子科技大學(xué),2015.

      [6] 梁澤華.基于iOS平臺應(yīng)用安全檢測及防護技術(shù)的研究[D].四川:電子科技大學(xué),2017.

      [7] 胡亮.iOS應(yīng)用程序漏洞和惡意行為檢測的研究[D].北京:北京郵電大學(xué),2019.

      [8] 朱琳,楊楊.ID3算法的優(yōu)化[J].軟件,2016,37(12):89-92.

      [9] 謝鑫,張賢勇,楊霽琳.鄰域等價關(guān)系誘導(dǎo)的改進ID3決策樹算法[J].計算機應(yīng)用研究,2022,39(1):102-105,112.

      呈贡县| 门源| 绥中县| 印江| 五莲县| 津南区| 法库县| 武宁县| 贡嘎县| 扬州市| 葫芦岛市| 淮阳县| 武宣县| 梧州市| 武陟县| 吉安县| 进贤县| 朔州市| 朝阳区| 奎屯市| 车险| 赫章县| 仲巴县| 丹凤县| 酒泉市| 夏河县| 贡嘎县| 方正县| 务川| 合肥市| 灵武市| 吉木萨尔县| 乌审旗| 龙川县| 右玉县| 依兰县| 金华市| 通江县| 东阳市| 友谊县| 九寨沟县|