[發(fā)明專利]一種基于混合檢測結(jié)果的Android應(yīng)用行為分析方法在審
| 申請?zhí)枺?/td> | 201711026361.3 | 申請日: | 2017-10-26 |
| 公開(公告)號: | CN107832209A | 公開(公告)日: | 2018-03-23 |
| 發(fā)明(設(shè)計)人: | 范文浩;張岱帥;劉元安;吳帆;張洪光 | 申請(專利權(quán))人: | 北京郵電大學(xué) |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06N99/00 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100876 *** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 混合 檢測 結(jié)果 android 應(yīng)用 行為 分析 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及Android應(yīng)用程序分析領(lǐng)域,特別涉及通過動態(tài)手段和靜態(tài)手段混合檢測的Android應(yīng)用程序分析方案。本發(fā)明涉及一種基于動靜態(tài)檢測技術(shù)的Android應(yīng)用程序檢測方案,特別是指通過分析動態(tài)檢測和靜態(tài)檢測得到的應(yīng)用程序行為信息來對應(yīng)用程序進行評估,從而彌補動態(tài)檢測和靜態(tài)檢測的不足。
背景技術(shù)
目前,應(yīng)用程序的檢測主要所依賴的手段是靜態(tài)檢測和動態(tài)檢測兩種手段,因此,以下我們將主要介紹后兩種手段的科研進展以及優(yōu)缺點。
目前動態(tài)檢測技術(shù)大多是通過提取軟件行為的檢測方案來實現(xiàn)的,即通過模擬器運行被檢測軟件,記錄應(yīng)用程序運行時行為信息,并以此分析被測軟件是否存在安全問題。動態(tài)檢測技術(shù)在不用查看應(yīng)用程序結(jié)構(gòu)和特征代碼的情況下,直接實際運行待測應(yīng)用程序,通過某種方式監(jiān)聽?wèi)?yīng)用程序的行為特征并分析判斷應(yīng)用程序是否是惡意程序。
靜態(tài)檢測技術(shù)是指對被測軟件的源程序或者二進制代碼進行掃描,從語法、語義上理解程序的行為,直接分析被檢測程序的特征,尋找可能導(dǎo)致錯誤的異常。目前其主要的檢測方式有二進制程序分析與源代碼分析兩種。二進制程序分析是針對軟件代碼進行審查的檢測技術(shù),該分析技術(shù)通過讀取二進制文件,與已有的惡意行為二進制特征代碼庫進行匹配,通過匹配結(jié)果判斷應(yīng)用程序的安全性。源代碼分析是針對編程語言本身的檢測技術(shù),是指對程序的反編譯代碼進行分析,通過詞法分析、語法分析和靜態(tài)語義分析,檢測程序中潛在的安全漏洞。同時,源代碼分析可被用于污點分析,即將某些敏感數(shù)據(jù)標(biāo)記為污點數(shù)據(jù),并重點檢測分析特殊API調(diào)用以及隱私數(shù)據(jù)的使用和傳遞,通過應(yīng)用程序?qū)ξ埸c數(shù)據(jù)的使用情況判斷應(yīng)用程序的安全性。
動態(tài)檢測技術(shù)的優(yōu)勢是能夠檢測出程序?qū)嶋H運行時的惡意行為,即使是未知的惡意程序也可以被檢測到。因為其檢測的是惡意行為而不是某一段惡意代碼,代碼可以變化,但惡意行為一般不變。但是動態(tài)檢測技術(shù)的缺點也很明顯,比如檢測速度慢,檢測時間長,檢測過程繁瑣復(fù)雜等。因為動態(tài)檢測技術(shù)需要安裝并真實運行應(yīng)用程序才能進行采集數(shù)據(jù),所以動態(tài)檢測技術(shù)可能會由于測試環(huán)境或測試用例等的影響而無法準(zhǔn)確、完善的檢測整個應(yīng)用程序。動態(tài)檢測技術(shù)的另一方面的缺點是其在實際檢測過程中需要運行應(yīng)用程序,該步驟多通過人工或自動化測試實現(xiàn),相對于人工,自動化測試由于測試模型的設(shè)計問題很難做到對應(yīng)用程序的全面測試,而人工測試由于需要大量人力,無法滿足在當(dāng)前應(yīng)用程序數(shù)量日益增多情況下對大量應(yīng)用程序進行檢測的需求。
靜態(tài)檢測技術(shù)的優(yōu)點與動態(tài)檢測技術(shù)正好相反,靜態(tài)檢測技術(shù)可以全面的檢測到整個應(yīng)用程序,包括不容易操作到的部分和需要特殊情況才會調(diào)用的部分。同時,靜態(tài)檢測方案的速度明顯快于動態(tài)檢測方案,并且,靜態(tài)檢測只需要對安裝包進行分析,不需要額外地人工輸入或者自動化輸入。不過靜態(tài)檢測也有其缺點,靜態(tài)檢測技術(shù)由于只能分析安裝包,所以靜態(tài)檢測得到的結(jié)果不一定與實際情況完全相同,由此使得靜態(tài)檢測技術(shù)的錯誤率高于動態(tài)檢測技術(shù),同時靜態(tài)檢測計算對未知應(yīng)用程序和復(fù)雜邏輯關(guān)系的分析能力要遠(yuǎn)遠(yuǎn)差于動態(tài)檢測技術(shù)。
本發(fā)明在以上基礎(chǔ)上,結(jié)合了靜態(tài)檢測技術(shù)和動態(tài)檢測技術(shù),對應(yīng)用程序分析方案進行了修改,以期實現(xiàn)一種結(jié)合動靜態(tài)檢測技術(shù)的Android應(yīng)用程序分析方案。并以此來對動態(tài)檢測方案和靜態(tài)檢測方案進行互補,最終達(dá)到提高應(yīng)用程序檢測能力的目的。
發(fā)明內(nèi)容
(一)要解決的技術(shù)問題
本發(fā)明要解決的技術(shù)問題是:
1、通過動靜態(tài)檢測技術(shù)得到相同類型的數(shù)據(jù);
2、對數(shù)據(jù)進行降維,篩選出主要數(shù)據(jù);
3、設(shè)計機器學(xué)習(xí)方案對數(shù)據(jù)進行分析。
(二)技術(shù)方案
為解決上述技術(shù)問題,本發(fā)明提供了一種基于混合檢測結(jié)果的Android應(yīng)用行為分析方法,包括以下步驟:
步驟一:用過靜態(tài)分析技術(shù)和動態(tài)分析計算得到應(yīng)用程序的行為數(shù)據(jù);
步驟二:通過機器學(xué)習(xí)降維方法對數(shù)據(jù)進行處理;
步驟三:使用處理后的數(shù)據(jù)對機器學(xué)習(xí)算法進行訓(xùn)練學(xué)習(xí);
步驟四:使用步驟三得到的訓(xùn)練結(jié)果對應(yīng)用進行評估。
該專利技術(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/201711026361.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





