[發(fā)明專利]基于API依賴關(guān)系圖的安卓惡意代碼檢測方法有效
| 申請?zhí)枺?/td> | 201710009886.X | 申請日: | 2017-01-06 |
| 公開(公告)號: | CN106874762B | 公開(公告)日: | 2019-09-17 |
| 發(fā)明(設(shè)計)人: | 官全龍;羅偉其;張煥明;張凌燕 | 申請(專利權(quán))人: | 暨南大學(xué) |
| 主分類號: | G06F21/56 | 分類號: | G06F21/56 |
| 代理公司: | 廣州市華學(xué)知識產(chǎn)權(quán)代理有限公司 44245 | 代理人: | 李斌 |
| 地址: | 510632 廣*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 api 依賴 關(guān)系 惡意代碼 檢測 方法 | ||
本發(fā)明公開了一種基于API依賴關(guān)系圖的安卓惡意代碼檢測方法,用于審核軟件開發(fā)者提交的安卓應(yīng)用軟件,檢測軟件是否帶有惡意行為。該方法包括下述步驟:S1、根據(jù)對應(yīng)用軟件的語義分析,生成API依賴關(guān)系圖API?DRG;S2、利用基于聚合的索引方法在API?DRG數(shù)據(jù)庫中去匹配最相似的依賴關(guān)系圖;S3、通過對正常代碼數(shù)據(jù)庫NormalDB和惡意代碼數(shù)據(jù)庫MalwareDB的查詢分別完成異常檢測和簽名檢測。本發(fā)明通過以上創(chuàng)新方法完成安卓惡意代碼分析與檢測的自動化操作,并有效提高惡意代碼檢測和分類的準(zhǔn)確率。
技術(shù)領(lǐng)域
本發(fā)明涉及移動安全的研究領(lǐng)域,特別涉及安卓惡意代碼檢測方法,利用語義認(rèn)知的加權(quán)API依賴關(guān)系圖對安卓惡意代碼進行安全檢測。
背景技術(shù)
蘋果、谷歌移動應(yīng)用市場的App數(shù)量超過250萬,下載量遠(yuǎn)超過800億次。正是移動應(yīng)用市場發(fā)展太迅速,暴露出諸多安全問題。卡巴斯基實驗室(Kaspersky)表示,98.05%的惡意軟件將目標(biāo)瞄準(zhǔn)了Android。這樣需要我們投入越來越多的成本去對新型惡意軟件進行人工分析。因此研發(fā)自動分析惡意代碼的方法具有非常巨大的吸引力。
現(xiàn)有惡意代碼自動檢測和分類方法分為兩大類:基于簽名和基于機器學(xué)習(xí)。基于簽名的方法要在字節(jié)碼和API調(diào)用中找到特定模式,這樣很容易被字節(jié)碼級別的轉(zhuǎn)換攻擊所逃避。基于機器學(xué)習(xí)的方法從應(yīng)用程序行為(例如許可請求和關(guān)鍵API調(diào)用)中提取特性和使用標(biāo)準(zhǔn)機器學(xué)習(xí)算法去執(zhí)行二進制分類。因為所提取的特性是基于程序語法而不是程序語義,所以這種檢測也容易被逃避。
為了解決惡意代碼逃避自動檢測問題,目前技術(shù)是將程序語義提煉成圖形來表示,例如控制流圖、數(shù)據(jù)依賴圖和權(quán)限事件圖。根據(jù)人工制作的規(guī)格說明去檢查軟件的相應(yīng)圖形,從而實現(xiàn)惡意代碼檢測。然而這些檢測軟件趨向于根據(jù)給定的規(guī)格說明去尋找精確的匹配代碼,因此可能被惡意代碼的多態(tài)性所逃避。
因此本領(lǐng)域致力開發(fā)一種能有效對抗字節(jié)碼轉(zhuǎn)換攻擊和零日攻擊的惡意代碼檢測方法,并應(yīng)用在安卓應(yīng)用市場上。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于克服現(xiàn)有技術(shù)的缺點與不足,提供一種基于API依賴關(guān)系圖的安卓惡意代碼檢測方法。
根據(jù)本發(fā)明的一個方面,提供了一種基于API依賴關(guān)系并具有權(quán)值的圖形作為程序語義的方法。首先我們發(fā)現(xiàn)函數(shù)API的入口點,然后安全相關(guān)的調(diào)用參數(shù)進行分析,通過程序流程圖發(fā)現(xiàn)API之間的關(guān)系,構(gòu)建API依賴關(guān)系并具有權(quán)值的圖形。
根據(jù)本發(fā)明的一個方面,我們這些圖形儲存在數(shù)據(jù)庫中,每個圖形代表著程序語義。然后在給定某個軟件的情況下,利用基于聚合的索引,在這數(shù)據(jù)庫中找到與該軟件相應(yīng)關(guān)系圖最相似的方法。
建立正常代碼和惡意代碼的圖形數(shù)據(jù)庫(分別為NormalDB和MalwareDB),異常檢測采用和正常應(yīng)用的圖形數(shù)據(jù)庫NormalDB的圖形相比較,如果該數(shù)據(jù)庫有API圖形是跟給定軟件的關(guān)系圖的相似度分?jǐn)?shù)wgmaxdw(G,G',α)大于設(shè)定的閾值ξ,即可判斷該軟件是惡意代碼。然后再將給定軟件的API關(guān)系圖與惡意代碼的圖形數(shù)據(jù)庫MalwareDB中圖形相比較,在比較中建立相似度的特性矢量,如果在特性矢量中存在相似度分?jǐn)?shù)wgmaxdw(G,G',α)大于ξ的元素,即可判斷與數(shù)據(jù)庫中這個元素相應(yīng)的惡意代碼是同類病毒家庭。
為了達到上述目的,本發(fā)明采用以下技術(shù)方案:
本發(fā)明一種基于API依賴關(guān)系圖的安卓惡意代碼檢測方法,用于審核軟件開發(fā)者提交的安卓應(yīng)用軟件,檢測軟件是否帶有惡意行為,該方法包括下述步驟:
S1、對應(yīng)用軟件的語義進行分析,生成API依賴關(guān)系圖;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于暨南大學(xué),未經(jīng)暨南大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710009886.X/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





