本系列索引鏈接:
安卓惡意代碼(軟體)檢測2012-2013年論文研究.
- 由于本次篇幅中的論文都比較老,所以本人就沒有細講也沒有進行復現,后續較新的論文我會嘗試復現核心模塊,與此同時歡迎在做相關研究的各位研究者來評論區批評指教并提出你們寶貴的意見!
論文目錄
- 2012:RiskRanker: Scalable and Accurate Zero-day Android Malware Detection
- 一、Abstract
- 1.研究背景
- 2.研究物件
- 3.研究方法
- 4.結論
- 二、Introduction
- 1.Research gap
- 2.采用的方法
- 三、Discussion
- 1.limitations
- 2012:Hey, You, Get Off ofMy Market: Detecting Malicious Apps in Official and Alternative Android Markets
- 一、Abstract
- 1.研究背景
- 2.研究物件
- 3.研究方法
- 4.結論
- 二、Introduction
- 1.Research gap
- 2.采用的方法
- 三、Discussion
- 1.limitations
- 2013:DroidAPIMiner: Mining API-Level Features for Robust Malware Detection in Android
- 一、Abstract
- 1.研究背景
- 2.研究物件
- 3.研究方法
- 4.結論
- 二、Introduction
- 1.Research gap
- 2.采用的方法
- 三、Discussion
- 1.limitations
2012:RiskRanker: Scalable and Accurate Zero-day Android Malware Detection
作者:Michael Grace, Yajin Zhou, Qiang Zhang, Shihong Zou, Xuxian Jiang
一、Abstract
1.研究背景
安卓惡意軟體檢測
2.研究物件
各大安卓應用市場中的0-day惡意apps
3.研究方法
靜態分析檢測策略
4.結論
證明他們方案的有效性和可擴展性,(可略過)
二、Introduction
1.Research gap
現有移動防病毒軟體的被動性使得它不足以識別新的或變異的惡意應用程式,具體來說,此類軟體僅依賴 于對惡意軟體樣本的優先了解,以便提取和部署簽名(signatures)以進行后續檢測,從另一 個角度看,惡意軟體作者可能會產生新的惡意軟體變種,或混淆現有的變種,以逃避檢測,
2.采用的方法
- 在不依賴惡意軟體標本(及其簽名)的情況下,作者將潛在風險分為
三類:高風險、中風險和低風險,高風險應用利用平臺級別的軟體漏洞,在未經用戶適當授權的情況下損害手機完整性,中風險應用雖然不利用軟體漏洞,但可能會導致用戶財務損失或泄露其敏感資訊,低風險應用與中風險相似,但低分風險更溫和,也即它們可以收集設備特定或通用的,一般隨時可用的個人資訊, - 基于此風險分類,評估現有(不受信任的)應用程式的風險,以便進行 0-day 惡意軟體檢測,評估進行
兩階段風險分析,在一級風險分析中,直接識別高風險和中風險類別中的應用,在二級風險分析中,作者通過進一步分析,以發現存在可疑行為的應用, 一階模塊通過直接評估風險來處理未混淆的應用程式,二階模塊捕獲某些行為(例如加密和動態代碼加載),這些行為本身并不重要,但與其他模塊一起可能形成惡意模式,有助于檢測隱形惡意軟體,

三、Discussion
1.limitations
- 作者的root漏洞檢測方案取決于簽名,顯然僅檢測已知的漏洞,并且也可能會錯過加密或混淆的漏洞,他們的原型僅考慮 Javax.Rypto 庫的加密檢測,也就是說阻止不了攻擊者實作自己的應用程式內加密或解密方案,同樣,攻擊者可以將本地代碼不打包到assets或者resource目錄中,而是將這些代碼作為 Dalvik 二進制本身的大型常數陣列,
- 他們的動態 Dalvik 代碼執行方案也有局限性,從長遠來看,這些問題最好的解決方法是將一些動態分析技術(如模糊)整合到系統中,此外,雖然靜態分析可能確定正在進行動態代碼加載,但它不能非常有效地確定正在加載什么動態代碼,
- 他們的中等風險模塊同樣不完美,他們只測驗了 4 種不同的行為,我們的資料流分析并沒有很好地考慮到位于執行路徑之外的代碼,要解決這些問題,最好是根據路徑的語意含義(它們實際的作用)報告路徑,而不是簡單地報告路徑的“名稱”,
- 惡意軟體的搜索并不總是黑白分明的,許多有風險的應用程式會威脅用戶的安全和隱私,但并不一定是惡意軟體,這類資訊泄 露的界限在哪里,以及應用程式需要向用戶透露多少他們的資訊是如何被使用的,都是一個有待解決的問題,
2012:Hey, You, Get Off ofMy Market: Detecting Malicious Apps in Official and Alternative Android Markets
作者:Yajin Zhou Zhi Wang Wu Zhou Xuxian Jiang
一、Abstract
1.研究背景
安卓惡意軟體檢測
2.研究物件
流行的Android市場中的惡意軟體(包括已知的和未知的惡意軟體)
3.研究方法
- 基于
權限的行為足跡方案–>檢測已知的惡意軟體家族的新樣本 - 基于
啟發式的過濾方案–>檢測未知的惡意軟體家族所固有的行為
4.結論
他們方案是可行的,并且不受監管的其他Android市場的感染率遠高于官方Android市場
二、Introduction
1.Research gap
?些報告已經顯示,這些市場中存在惡意應?程式,雖然這些報告提供了關于被發現的惡意軟體的詳細分析,但它們沒有提供現有Android市場整體健康狀況的系統視圖,最近,Enck等?研究了來?官?Android Market 的1100個免費應?,并試圖理解其中?泛的安全相關指標(作為應?整體安全的指標),然?,該研究僅限于少數應?,即22個應?類別中的前50名免費應?,
2.采用的方法
- 為了檢測
已知惡意軟體,作者提出了?種基于權限的?為?跡的可擴展和有效的?案,與傳統的特征碼作為惡意軟體特征的?法不同,根據惡意軟體所要求的固有的Android權限,?先過濾掉不相干的應?程式,然后將剩下的程式與惡意軟體特定的?為?跡進?匹配, - 為了檢測
未知惡意軟體,作者提出了?種基于啟發式的過濾?案,定義了惡意應?程式可能的可疑?為,然后使?它們來檢測可疑應?程式,對于每個檢測到的可疑應?程式,我們進?步動態監控其運?時程序,以確定它是否真的是惡意的,如果應?程式是惡意的,并沒有出現在作者的惡意軟體資料庫中,則可認為認為它是0-day惡意軟體,然后在?成其相應的基于權限的?為?跡,用于檢測集合中的其他樣本,

- 第?個檢測引擎(基于?跡的檢測引擎)是專為檢測已知惡意軟體?定制的,具體來說,每個已知惡意軟體將?先預處理或凈化成所謂的基于權限的?為?跡,每個?跡基本上都包含惡意軟體請求的必要的Android權限,并簡要地總結不正當?為,
- 第?個檢測引擎(基于啟發式檢測引擎)旨在發現以前未報告的惡意軟體,特別是,它識別可能是惡意應?程式的可疑?為,并檢測可能被濫?的某些 Android功能,通過這樣做可以識別可疑的應?程式,然后執?并監控每個應?程式, 以驗證它是否確實在運?時表現出任何惡意?為,如果是這樣,應?程式將被
?動確認,相關的?為?跡將被提取并包含在第?個檢測引擎中,
三、Discussion
1.limitations
- 作者?前的研究只探索了兩個基本的啟發式,以發現零?惡意軟體,還有很多其他的啟發式,可以同樣有效,例如,可以開發啟發式應?程式來捕獲涉及將未經授權的短信發送到某些收費號碼的應?,也可以設計?于檢測由短信遠程控制的機器?的?為,探索這些啟發式捕獲額外的零?惡意軟體仍然是?個有趣的?作,
2013:DroidAPIMiner: Mining API-Level Features for Robust Malware Detection in Android
作者:Yousra Aafer, Wenliang Du, and Heng Yin
一、Abstract
1.研究背景
提供強大而輕量級的安卓惡意軟體分類器
2.研究物件
安卓惡意軟體
3.研究方法
對apps進行深入分析,提取在API級別上的惡意軟體行為的相關功能,并使用生成的功能集評估不同的分類器,
4.結論
研究結果表明,使用KNN分類器,能夠達到高達 99%的準確性,誤報率低至 2.2%,
二、Introduction
1.Research gap
應用程式清單檔案中某個權限的存在并不一定意味著它實際上在代碼中使用,大量的 Android 應用程式請求大量權限,尤其是是關鍵的權限,實際上未在應用程式的代碼本身內使用過,而是廣告包所需的,并且惡意軟體可以在沒有任何許可的情況下執行惡意行為,對于此類問題雖然出現了部分解決方法,但是這些方法在檢測它們所針對的特定漏洞方面是有效的,但它們不能通用來檢測其他惡意活動,
2.采用的方法
- 要從良性應用程式中區分惡意軟體,作者團隊依賴于位元組碼內的API級別資訊,因為它會傳達關于應用程式行為的大量語意,更具體地說,他們專注于
關鍵API呼叫、包級資訊以及引數, - 構建一個大型良性和惡意軟體樣本的語料庫,生成了每個應用程式中使用的 API 集,并進行了頻率分布統計,列出在惡意軟體中出現頻率高于良性軟體中的API呼叫,此外,對于在兩個樣本集中頻繁出現的某些關鍵 API,對惡意軟體 APK 樣本進行了簡單的資料流分析,以識別潛在的危險輸入,生成了常用引數的串列,徹底檢查了它們用于過濾掉危險的引數,并標記了請求它們的所有應用程式,
- 作者的方法分為三個階段:特征提取、特征細化和模型學習與生成,
- 在
特征提取階段,通過靜態檢測收集良性和惡意APK樣本,提取必要的特征,惡意軟體的功能,在選擇特征集時,提取 API 呼叫及其包級資訊, 此外,我們提取應用程式所請求的權限來生成基線模型, - 在
特性細化階段,洗掉由第三方包(如廣告包)授權的 API 呼叫,只包含那些在惡意軟體集中比在良性集中使用更普遍 的API,對于這兩個集合中經常出現的那些 API,執行資料流分析來恢復它們的引數值,并只選擇呼叫危險的API,隨后,對于每個 APK 檔案,我們生成一組特征向量以及相關的類標簽,即惡意或良性, - 在
模型學習和生成階段,我們將具有代表性的向量輸入到標準分類演算法中,通過學習來建立模型,采用不同的分類器:ID5 DT,C4.5 DT,KNN和 SVM來測驗不同的分類器準確性,
- 在
三、Discussion
1.limitations
- 反射:惡意軟體作者可以使用反射很容易地混淆任何危險的 API呼叫,從而避免了對該API的靜態檢測,然而,他們的研究表明,惡意軟體集中的反射 API 比在良性集中更頻繁地使用,這個可以作為分類特征向量的一部分,
- 更多良性呼叫:由于本文的分類器依賴于 API 呼叫的頻率,惡意軟體作者可能會考慮在他們的代碼中引入更多良性 API 呼叫,
- 本文的分類結果表明:與基于權限的特征集相比,使用 API、包和引數級資訊的組合,我們能夠獲得更好的準確率、TPR 和 TNR,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/300269.html
標籤:其他
