999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于權(quán)限的Android應(yīng)用風險評估方法

2019-08-01 01:35:23卜同同曹天杰
計算機應(yīng)用 2019年1期

卜同同 曹天杰

摘 要:針對Android權(quán)限機制存在的問題以及傳統(tǒng)的應(yīng)用風險等級評估方法的不足,提出了一種基于權(quán)限的Android應(yīng)用風險評估方法。首先,通過對應(yīng)用程序進行逆向工程分析,提取出應(yīng)用程序聲明的系統(tǒng)權(quán)限、靜態(tài)分析的權(quán)限以及自定義的權(quán)限,和通過動態(tài)檢測獲取應(yīng)用程序執(zhí)行使用到的權(quán)限;然后,從具有惡意傾向的組合權(quán)限、“溢權(quán)”問題和自定義權(quán)限三個方面對應(yīng)用程序進行量性風險評估;最后,采用層次分析法(AHP)計算上述三個方面的權(quán)重,評估應(yīng)用的風險值。對6245個軟件樣本進行訓練,構(gòu)建自定義權(quán)限數(shù)據(jù)集和具有惡意傾向的權(quán)限組合數(shù)據(jù)集。實驗結(jié)果表明,與Androguard相比,所提方法能更精確地評估應(yīng)用軟件的風險值。

關(guān)鍵詞:Android安全;風險評估;應(yīng)用權(quán)限;量性評估;靜態(tài)分析;動態(tài)檢測

中圖分類號: TP309.2

文獻標志碼:A

Abstract: Focusing on the problems existing in Android permission mechanism and poor capability of traditional measurement methods of Android software security, a risk assessment method of Android APP based on permission was proposed. Firstly, the system permissions declared by application, the permissions obtained through static analysis and custom permissions were extracted by reverse-engineering analysis of application. At the same time, the permissions used by executing application were extracted through dynamic detection. Secondly, quantitative risk assessment of applications was performed from three aspects: permission combination of hiding malicious intent, “over-privilege” problem and custom permission vulnerability. Finally, the Analytic Hierarchy Process (AHP) evaluation model was adopted to calculate the weights of three aspects above for estimating risk value of application. In addition, custom permission data set and permissions combination dataset with hiding malicious intent were built by training 6245 software samples collected from application store and VirusShare. The experimental results show that the proposed method can assess risk value of application software more accurately compared with Androguard.

Key words: Android security; risk assessment; application permission; quantitative assessment; static analysis; dynamic detection

0 引言

隨著移動互聯(lián)網(wǎng)的快速發(fā)展,手機逐漸成為用戶連接網(wǎng)絡(luò)和存儲個人信息最重要的設(shè)備,在人們生活中處于越來越重要的地位。根據(jù)國際數(shù)據(jù)公司(International Data Corporation, IDC)的統(tǒng)計[1],智能手機公司在2017年的出貨量為14.6億部,其中約85%的設(shè)備運行Android平臺。與此同時,Android系統(tǒng)的開放性吸引了更多的應(yīng)用程序開發(fā)者;而Android應(yīng)用程序的多樣性同樣吸引了越來越多的用戶開始嘗試并使用Android系統(tǒng)的智能手機,但是這也是信息科技(Information Technology, IT)專家的焦慮之源。由于智能手機中存放著大量高度隱私的個人數(shù)據(jù),故智能手機比PC掌握用戶更多的敏感數(shù)據(jù),吸引了更多的黑客注意,這對于Android生態(tài)系統(tǒng)以及用戶個人數(shù)據(jù)的安全性提出了更高的安全要求。

為了保證護用戶數(shù)據(jù)的安全隱私及系統(tǒng)資源,Android操作系統(tǒng)采用了沙盒機制,在默認情況下,Android應(yīng)用只能訪問有限的系統(tǒng)資源,除此之外,Android OS還采用了權(quán)限機制來限制對敏感資源的訪問。雖然自Android 6.0以來,Android平臺采用了動態(tài)權(quán)限授予機制,允許用戶在安裝應(yīng)用程序以后,可以撤銷或授予應(yīng)用程序敏感權(quán)限進行敏感操作,以保證用戶數(shù)據(jù)的安全和隱私;但是,動態(tài)權(quán)限授予機制依賴于用戶對于Android權(quán)限有充分的認識,并能妥善地管理應(yīng)用權(quán)限這個前提。然而Bagheri等[2]學者的研究表明只有極少的用戶關(guān)注并熟悉Android動態(tài)運行時權(quán)限。此外,非專業(yè)用戶并不知道,在危險權(quán)限組的第一個權(quán)限使用提醒時授予該應(yīng)用此權(quán)限并不再主動撤銷授權(quán)。該應(yīng)用在擁有此項權(quán)限的狀態(tài)下,再申請使用此危險權(quán)限組的其他權(quán)限時,Android系統(tǒng)會在不與用戶交互的情況下直接授權(quán)。Android粗粒度的權(quán)限授予機制、Android應(yīng)用開發(fā)者的過度申請權(quán)限、多個應(yīng)用利用自定義權(quán)限漏洞而提升權(quán)限和第三方應(yīng)用市場不完善的審核機制等,使得Android軟件大量存在“溢權(quán)(over-privilege)”和權(quán)限泄露等問題,從而導致Android應(yīng)用的質(zhì)量良莠不齊。由此可見,Android采用的權(quán)限機制對用戶數(shù)據(jù)安全性進行保護的方法并不能夠達到理想的安全防御效果。為了保護用戶,Android應(yīng)用市場非常需要更好的風險評估方法來定量評估應(yīng)用程序可能帶來的威脅。

1 相關(guān)工作

權(quán)限是Android系統(tǒng)安全模型的第一道防線,能保證應(yīng)用安全地訪問敏感數(shù)據(jù)以及跨應(yīng)用交互。Google[3]提供了關(guān)于正確使用Android權(quán)限模型的建議和最佳做法,但最終依靠應(yīng)用程序開發(fā)人員將其正確用于產(chǎn)品中。

近年來Android權(quán)限機制存在的問題被越來越多的研究學者所關(guān)注。Felt等[4]提出了Android應(yīng)用程序存在“溢權(quán)”現(xiàn)象:很多Android應(yīng)用程序開發(fā)人員為了后續(xù)再開發(fā)或收集用戶偏好信息等原因,在軟件開發(fā)中突破了“最小權(quán)限原則”,在應(yīng)用程序清單文件中申請過多的權(quán)限,使得多達三分之一的應(yīng)用程序存在“溢權(quán)”問題。

張銳等[5]提出了采用卡方檢驗計算各權(quán)限屬性對于分類結(jié)果的影響大小,利用權(quán)限之間以及權(quán)限和惡意傾向的相關(guān)性,去除冗余權(quán)限特征、對權(quán)限屬性聚類,提取具有代表性的權(quán)限特征,并進一步減少冗余后,利用基于不同權(quán)限特征權(quán)重的改進樸素貝葉斯算法進行軟件分類,能夠初步檢測Android應(yīng)用軟件是否有惡意傾向。實驗表明,應(yīng)用的權(quán)限組合才是決定應(yīng)用威脅性的關(guān)鍵。

Google驗證了文獻[6]中提出的嚴重的自定義權(quán)限漏洞,惡意軟件開發(fā)者可以利用這些漏洞來開發(fā)應(yīng)用來獲得對關(guān)鍵平臺和應(yīng)用程序資源的未經(jīng)授權(quán)的訪問。利用這些漏洞,應(yīng)用軟件可以繞過請求用戶授予/拒絕權(quán)限的交互界面而直接獲取高風險的系統(tǒng)資源,并且還可以未經(jīng)授權(quán)訪問其他應(yīng)用程序的受保護組件。這嚴重違反了Android運行時權(quán)限模型中應(yīng)始終保持的一個關(guān)鍵安全原則:沒有用戶交互授權(quán),不應(yīng)授予應(yīng)用任何危險的運行時權(quán)限。Android上自定義的兩種權(quán)限漏洞攻擊為自定義權(quán)提升攻擊和混淆代理攻擊。

權(quán)限信息是檢測Android軟件的關(guān)鍵因素之一。大量研究學者針對權(quán)限存在的問題來評估應(yīng)用程序的隱私風險或安全等級。Hamed等[7]提出了一種主動的面向用戶的方法,讓用戶意識到授予Android應(yīng)用程序權(quán)限所涉及的隱私風險。該模型的參數(shù)是權(quán)限及其相互作用的嚴重性和相對重要性。徐君鋒等[8]通過對Android軟件逆向分析,根據(jù)不同系統(tǒng)權(quán)限安全等級劃分,給定安全范圍內(nèi)的安全系數(shù),并對Android軟件進行初步安全評分;同時結(jié)合Android軟件的認證強度和第三方應(yīng)用市場上的違規(guī)記錄,再綜合度量軟件的最終安全信用指數(shù)。文獻[9]中提出使用靜態(tài)代碼指標作為預(yù)測器,首先對靜態(tài)代碼度量進行初步風險評分,在進一步作數(shù)據(jù)處理確定各個靜態(tài)代碼度量的風險等級,最后選擇合適的靜態(tài)代碼度量來預(yù)測和評估與Android應(yīng)用程序相關(guān)的安全和隱私風險。Android多準則應(yīng)用程序信任評估器(Multi-criteria App Evaluator of TRust for AndrOID, MAETROID)[10]是一個用來評估Android應(yīng)用程序的可信度的框架,可以評估應(yīng)用程序?qū)τ脩粼斐娠L險的概率。在部署時對應(yīng)用程序進行多準則分析,返回一個簡單易懂的應(yīng)用程序風險等級評估,即判斷應(yīng)用程序是可信還是中等風險或高風險,旨在幫助用戶決定是否要安裝新的應(yīng)用程序。該框架以應(yīng)用程序所申請的權(quán)限集合、從市場收集到的應(yīng)用程序質(zhì)量和受歡迎程度作為一組元數(shù)據(jù)。

2 評估方法

目前的研究主要是針對應(yīng)用程序本身的代碼元數(shù)據(jù)數(shù)量進行統(tǒng)計分析,并沒有將自定義權(quán)限漏洞放入應(yīng)用風險評估中。本文針對Android權(quán)限機制存在的問題,提出一種由具有惡意傾向的系統(tǒng)權(quán)限組合檢測評估模塊、系統(tǒng)權(quán)限的“溢權(quán)”的檢測評估模塊和自定義權(quán)限漏洞的檢測評估模塊構(gòu)成的定量應(yīng)用風險評估方法。

2.1 具有惡意傾向的權(quán)限組合檢測評估

應(yīng)用程序可以通過申請組合的權(quán)限來實現(xiàn)對用戶隱私信息的竊取和傳播。例如,APP_M申請了連接網(wǎng)絡(luò)和讀取聯(lián)系人這組權(quán)限,就存在未經(jīng)用戶同意而收集用戶通信錄信息,為進一步的廣告推廣、甚至電話或者短信詐騙助力。文獻[11]的實驗結(jié)果證明,應(yīng)用程序的權(quán)限組合能夠檢測Android應(yīng)用軟件是否有惡意傾向,是判定應(yīng)用程序威脅性的重要因素,但它并沒考慮應(yīng)用本身的用途,只考慮了權(quán)限本身。例如,位置定位權(quán)限對于導航和地圖類應(yīng)用程序是必要權(quán)限,對于健身運動類應(yīng)用是非必要權(quán)限,對于主題壁紙類應(yīng)用是非需權(quán)限。通過對收集的良性應(yīng)用程序進行逆向工程,提取權(quán)限信息樣本,根據(jù)各類應(yīng)用程序的使用概率,將每類單個應(yīng)用權(quán)限分為三個威脅級別。

定義1 根據(jù)單個權(quán)限pi在該類應(yīng)用程序的必要性,其威脅值取為1,3,5中的一個:

T(pi)=1, pi對該類應(yīng)用程序有明顯的必要性3, pi對該類應(yīng)用程序有一定的必要性5, pi對該類應(yīng)用程序有很弱的必要性

在影音播放類中:網(wǎng)絡(luò)連接、訪問網(wǎng)絡(luò)狀態(tài)和寫入外部存儲等權(quán)限明顯很必要;而讀取短信和發(fā)送短信在用戶登錄過程中有一定的必要性;寫短信和使用指紋硬件等權(quán)限在該類應(yīng)用的必要性很弱。在各類應(yīng)用中,權(quán)限的必要性越強,其威脅性越小。采用層次分析法(Analytic Hierarchy Process, AHP)計算單個權(quán)限的威脅值T(pi)。

不同的權(quán)限組合有不同的安全威脅值,根據(jù)有惡意傾向的組合權(quán)限不同的收集來源定義組合權(quán)限的威脅級別。

定義2 權(quán)限組合pci的威脅性級別值為:

T(pci)=1, pci來自相關(guān)文獻的實驗結(jié)果3, pci來自Mal_Per_group5, pci來自典型的利用權(quán)限組合的攻擊

其中,Mal_Per_group的收集在3.1.2節(jié)中詳述。具有惡意傾向的權(quán)限組合檢測算法如下所示。

RRper_group為從應(yīng)用程序請求的權(quán)限組中去除待評估App所屬類常用權(quán)限組的非空真子集的剩余權(quán)限組。該方法根據(jù)式(1)計算該應(yīng)用程序由于使用的權(quán)限的組合帶來的風險。

其中:T(pci)為Mal_Per_group中具有惡意傾向的權(quán)限組和的威脅值,λm代表具有惡意傾向的權(quán)限組合在應(yīng)用風險評估中的權(quán)重。

2.2 “溢權(quán)”檢測評估

手機應(yīng)用軟件管理著大量的用戶個人信息,例如:身份證、地址、通信記錄、短信、郵箱等,這為通過不同方法來分析用戶和操縱這些數(shù)據(jù)獲得利益提供了新的契機。不僅惡意軟件,甚至有些合法軟件也濫用這些信息。例如:Twitter手機軟件在沒得到用戶同意的情況下,將用戶的個人信息公之于眾。在應(yīng)用被允許執(zhí)行敏感操作時,用戶數(shù)據(jù)有可能被修改甚至丟失。

Android應(yīng)用軟件普遍存在著“溢權(quán)”問題。例如,38.5%的學習幫助類應(yīng)用程序為了定向推廣自己的應(yīng)用軟件,而申請危險權(quán)限組PHONE中的READ_PHONE_STATE來讀取用戶手機狀態(tài)。若應(yīng)用程序在清單文件中申請的權(quán)限,不存在于靜態(tài)分析得到的權(quán)限列表中,則該應(yīng)用程序就擁有過度權(quán)限。此時,過度權(quán)限集是申請的權(quán)限集與靜態(tài)分析得到的權(quán)限集的差集;反之,若一個權(quán)限存在靜態(tài)分析得到的權(quán)限中,而不存在應(yīng)用程序在清單文件中申請的權(quán)限時,則稱該權(quán)限為提升權(quán)限;然后,將其與從動態(tài)執(zhí)行獲取的日志文件中提取的動態(tài)權(quán)限列表相比較,兩者的差集記為靜默權(quán)限。

該方法將應(yīng)用程序申請的系統(tǒng)權(quán)限列表記為Rper_list,將靜態(tài)分析的系統(tǒng)權(quán)限列表記為Sper_list,將動態(tài)分析得到的系統(tǒng)權(quán)限列表記為Dper_list。系統(tǒng)權(quán)限的“溢權(quán)”檢測的詳細步驟如算法2所述。

本文提出的風險評估方法根據(jù)式(2)計算由系統(tǒng)權(quán)限的“溢權(quán)”帶來的風險:

其中:T(opi)代表Oper_list中的系統(tǒng)權(quán)限對應(yīng)的保護等級的權(quán)重,λo表示了“溢權(quán)”問題評估應(yīng)用程序安全時的權(quán)重。

2.3 自定義權(quán)限的風險評估

Android提供一組權(quán)限標簽來保護系統(tǒng)和用戶資源。與此同時,Android平臺允許不受信任的第三方應(yīng)用聲明自己的自定義權(quán)限,來限制其他應(yīng)用程序?qū)υ搼?yīng)用程序組件的訪問。簡而言之,Android的權(quán)限模型是通過使用一組名為權(quán)限的安全標簽,規(guī)范對平臺和應(yīng)用程序資源的訪問。為了保護平臺資源(例如,麥克風、互聯(lián)網(wǎng)等),平臺使用由系統(tǒng)本身引入的預(yù)定義權(quán)限集。權(quán)限模型還為平臺提供更細粒度的安全性,以此保護不同應(yīng)用程序或系統(tǒng)組件之間的進程間通信(Inter-Process Communication, IPC),為此Android引入了自定義權(quán)限:這些是應(yīng)用程序定義的權(quán)限,允許開發(fā)人員通過其他應(yīng)用程序控制對其應(yīng)用程序組件的訪問。實際上,在第三方應(yīng)用程序中使用自定義權(quán)限非常常見。根據(jù)本文對各個應(yīng)用市場頂級免費應(yīng)用程序的研究,約72%的應(yīng)用程序定義了自定義權(quán)限。其中30%的自定義權(quán)限的保護等級為Normal,即只要申請了就可以使用,如表1所示。

從表1可以看出,應(yīng)用程序自定義保護等級為Dangerous的權(quán)限較少,而絕大多數(shù)的自定義權(quán)限的保護等級為Signature和Normal。自定義權(quán)限提升攻擊通過在清單文件中聲明保護級別為Signature或Normal的自定義權(quán)限,并將此自定義權(quán)限設(shè)置為系統(tǒng)權(quán)限組的一部分,而Android系統(tǒng)允許第三方開發(fā)者將自定義權(quán)限聲明為系統(tǒng)權(quán)限組的一部分,使應(yīng)用程序可以繞過用戶權(quán)限授予界面,并自動獲取任何危險的系統(tǒng)權(quán)限。故該方法中自定義權(quán)限的保護級別為Signature或Normal的權(quán)重比保護級別為Dangerous和SignatureorSystem大,而在混淆代理攻擊中,攻擊者利用缺乏Android自定義權(quán)限的命名約定,來對一個使用自定義權(quán)限保護組件的受害者應(yīng)用程序發(fā)起攻擊。故該方法對從各大官網(wǎng)收集到應(yīng)用程序的分析,提取應(yīng)用程序的自定義權(quán)限存入自定義權(quán)限數(shù)據(jù)集CPer_set中,對待測試的APP的自定義權(quán)限進行檢查并對CPer_set進行補充。

自定義權(quán)限通過為IPC提供安全性,在支持Android平臺的可重用性方面發(fā)揮了重要作用;因此,對其正確操作的任何威脅都可能導致應(yīng)用程序和平臺本身的安全性受到損害。該模塊主要針對由重名的自定義權(quán)限帶來的混淆代理的可能性進行評估。利用這個自定義權(quán)限漏洞,應(yīng)用可以繞過用戶同意屏幕來授予/拒絕權(quán)限以獲取高風險系統(tǒng)資源,并且還可以未經(jīng)授權(quán)訪問其他應(yīng)用的受保護組件。由于現(xiàn)在Android規(guī)定在同一個物理設(shè)備上,不允許存在兩個應(yīng)用程序定義相同名稱的權(quán)限。為了完成這個攻擊,惡意應(yīng)用程序開發(fā)者需要開發(fā)至少兩個應(yīng)用:

1)定義者攻擊應(yīng)用程序。通過重新使用相同的權(quán)限名稱來欺騙受害者應(yīng)用程序的自定義權(quán)限,并將保護級別更改為危險。

2)用戶攻擊應(yīng)用程序。它只在其清單文件中請求此權(quán)限。

編寫Python腳本cusPermission.py提取收集到的應(yīng)用程序自定義的權(quán)限,存儲為cusPer.set,其存儲結(jié)構(gòu)為[權(quán)限,權(quán)限組,權(quán)限定義應(yīng)用包名稱(權(quán)限等級),申請該權(quán)限的應(yīng)用包名稱];編寫getCusPermission.py,提取待檢測應(yīng)用程序在AndroidManifest.xml文件中定義的權(quán)限列表cusPlist,該部分檢測分為兩個模塊:數(shù)據(jù)集獲取模塊和分析評估模塊。

根據(jù)式(3)計算由自定義權(quán)限漏洞問題帶來的風險:

其中:T(cpi)代表自定義權(quán)限的定義的保護級別的權(quán)重,λc代表自定義權(quán)限問題在評估應(yīng)用程序風險時的權(quán)重。

3 方法實現(xiàn)與結(jié)果分析

3.1 數(shù)據(jù)集收集

本文通過檢測分析806個應(yīng)用市場可下載的安卓應(yīng)用、5439個惡意樣本和Android官方網(wǎng)站發(fā)布的權(quán)限文檔,構(gòu)建各類應(yīng)用程序常用的組合權(quán)限數(shù)據(jù)集、具有惡意傾向的權(quán)限組合數(shù)據(jù)集和Android原生權(quán)限數(shù)據(jù)集。

3.1.1 多類應(yīng)用程序常用的組合權(quán)限數(shù)據(jù)集

編寫Python腳本從百度手機助手、小米應(yīng)用商店和華為應(yīng)用市場爬取下載量較高、獲得官方版認證的、安全優(yōu)質(zhì)的Android應(yīng)用軟件。相對于官方應(yīng)用市場沒有任何說明的評分,高下載量更能代表用戶使用的滿意度較高、權(quán)限使用在用戶的接受范圍之內(nèi)。

該方法共收集了806個不同的安卓應(yīng)用,主要分為以下類別:影音播放(95)、社交通信(76)、學習幫助(39)、新聞閱讀(43)、運動健康(36)、金融理財(80)、游戲娛樂(139)、網(wǎng)上購物(48)、辦公工具(36)、拍攝美化(57)、主題壁紙(52)、地圖導航(24)、旅游購票(22)、生活實用(59)。例如,影音視聽類應(yīng)用常用的權(quán)限組如表2所示。

由于權(quán)限組的存在,若授予了權(quán)限組中任一權(quán)限,該應(yīng)用若申請同一權(quán)限組中的其他權(quán)限,系統(tǒng)不再與用戶交互而直接為該應(yīng)用授予其申請該組內(nèi)的權(quán)限。故該類別的權(quán)限組還需添加STORAGE組中的READ_EXTERNAL_STORAGE危險權(quán)限。

3.1.2 具有惡意傾向的權(quán)限組合數(shù)據(jù)集

本文從VirusShare[12]中獲得的5439個惡意樣本,對其中50個家族成員數(shù)大于10的5048個樣本進行反編譯字節(jié)碼操作,并從其清單文件中提取權(quán)限,將其家族成員都使用的權(quán)限作為權(quán)限集的一個權(quán)限組合。該方法會對數(shù)據(jù)集進行進一步去除冗余、計算權(quán)限組合的權(quán)重,將其存入惡意軟件家族常用權(quán)限組合的數(shù)據(jù)集Mal_Per_group。例如:從相關(guān)安全網(wǎng)站收集相關(guān)的最新的權(quán)限攻擊實例,將其加入到數(shù)據(jù)集Mal_Per_group。例如,Android版本在7.1.2及以下都會受到Cloak&Dagger攻擊的影響,而該攻擊是一種利用權(quán)限不匹配問題來訪問Android設(shè)備的攻擊方法,主要通過獲取SYSTEM_ALERT_WINDOW和BIND_ACCE-SSIBILITY_SERVICE權(quán)限來實施攻擊。故Cloak&Dagger惡意軟件家族的常用權(quán)限組為[SYSTEM_ALERT_WINDOW,BIND_ACCESSIBILITY_SERVICE]。

3.1.3 Android原生權(quán)限

編寫Python腳本對Android官方網(wǎng)站的上發(fā)布的權(quán)限文檔進行分析,統(tǒng)計文檔中的權(quán)限及其級別。目前共有152個原生權(quán)限,包括:38個保護等級為normal的權(quán)限,27個保護等級為dangerous的權(quán)限,10個等級為signature的特殊權(quán)限,19個等級為signature|privileged(同API≤23,signatureOr-System)的權(quán)限,44個不提供給第三方應(yīng)用使用的權(quán)限,此外還有14個權(quán)限在版本更新中不再建議使用的權(quán)限。

3.2 權(quán)限提取

通過靜態(tài)分析,對Android安裝包(Android Package, APK)文件的逆向分析,從清單文件中提取應(yīng)用程序申請的系統(tǒng)權(quán)限Rper_list;靜態(tài)分析smali代碼提取敏感應(yīng)用程序編程接口(Application Programming Interface, API),通過收集的map-ping映射得到對應(yīng)的靜態(tài)權(quán)限列表Sper_list;通過自動運行注入了1000個不同的基于Android的Monkey測試套件的事件,以提取包括被調(diào)用的方法在內(nèi)的運行信息的日志,然后通過分析日志信息,提取動態(tài)權(quán)限列表Dper_list。其具體過程如圖1所示。

3.3 權(quán)重計算

本文采用了層次分析法來計算同一層次影響評估結(jié)果的各因素的權(quán)重。AHP是定性和定量相結(jié)合的分析方法。該方法將復雜的問題層次化,對影響決策目標的判斷因素進行量化分析,是一種層次權(quán)重決策分析方法。

將該方法使用作為指標層的評估因素有:具有惡意傾向的權(quán)限組、系統(tǒng)權(quán)限的“溢權(quán)”、自定義權(quán)限漏洞。

構(gòu)建判斷矩陣,并使用Matlab程序?qū)崿F(xiàn)層次分析方法,計算出具有惡意傾向的權(quán)限組權(quán)重為:λm=0.3255,系統(tǒng)權(quán)限的“溢權(quán)”權(quán)重為:λo=0.2772,自定義權(quán)限漏洞權(quán)重為:λc=0.3973。

3.4 實驗結(jié)果分析

本文所提方法的實驗結(jié)果表明,應(yīng)用程序所需的權(quán)限數(shù)量和自定義的權(quán)限數(shù)量并不是影響風險值分數(shù)的主要因素。從表3可以看出,應(yīng)用com.xiaoyu.rightone申請的權(quán)限數(shù)量少于com.imjingjing.jingjing,但是其風險評分明顯高于com.imjingjing.jingjing。

此外,統(tǒng)計數(shù)據(jù)表明,現(xiàn)存的應(yīng)用都申請了允許訪問網(wǎng)絡(luò)的權(quán)限和訪問網(wǎng)絡(luò)狀態(tài)這兩個權(quán)限。拍攝美化類應(yīng)用除了申請必要的拍攝和讀寫存儲器權(quán)限外,通常還會申請定位和讀取聯(lián)系人權(quán)限;社交通信類的自定義權(quán)限最多,主題壁紙類的自定義權(quán)限與其他應(yīng)用程序自定義權(quán)限重名的最多,且主題壁紙類申請的權(quán)限數(shù)較多故風險值平均較高;直播類應(yīng)用申請的權(quán)限最多,平均風險值最高。

Androguard[13]主要用來進行靜態(tài)分析,提供了很多模塊供分析人員使用,有很多靜態(tài)分析工具都是基于它,其中Androrisk.py模塊用于評估APK文件中潛在的風險。該模塊主要是利用權(quán)限和DEX文件對APK文件進行風險評估,其中將權(quán)限按功能分為:隱私權(quán)限、普通權(quán)限、與收費有關(guān)的權(quán)限、聯(lián)網(wǎng)類的權(quán)限、信息類的權(quán)限、危險權(quán)限、簽名或系統(tǒng)權(quán)限、通話類的權(quán)限、簽名權(quán)限和全球定位系統(tǒng)(Global Positioning System, GPS)權(quán)限,通過Fuzzy算法對應(yīng)用程序風險進行評估。表4展示了兩種方法評估的主要因素及最終評估的風險值,其各列名為應(yīng)用程序在清單文件中申請的系統(tǒng)權(quán)限數(shù)(Number of system Permissions declared in the Manifest file, NPM)、自定義權(quán)限數(shù)(Number of Custom Permissions, NCP)、與別的應(yīng)用程序定義的權(quán)限同名的自定義權(quán)限個數(shù)(Number of Custom permissions with the Same name as those defined by other APPs, NCS這個的縮寫是對應(yīng)表4中的“NSC”嗎?為何表示C的Custom,卻在S的前面?英文全稱正確嗎?請明確。縮寫是對應(yīng)表4中的“NSC”,這兩處都確定為“NCS”。)、使用Androrisk.py模塊得到的風險評估分數(shù)(Risk Assessment Scores using Androrisk.py module, RASA)、本文方法對測試應(yīng)用程序風險評估分數(shù)(Risk assessment Scores using this Quantitative Evaluation method, RSQE)。

Androrisk.py模塊是靜態(tài)檢測中的常用方法,從實驗結(jié)果上看有靜態(tài)檢測本身的局限性,從表4可以看出,其實驗結(jié)果會有較大的誤差;而本文方法相對于Androrisk增加了自定義權(quán)限風險評估和系統(tǒng)“溢權(quán)”風險評估,能夠更精確地評估應(yīng)用程序的風險。

根據(jù)實驗結(jié)果和三個方面潛在的威脅,為了進一步方便用戶理解由于權(quán)限機制造成的風險,可將應(yīng)用程序潛在的風險值劃分為四三個風險等級:待測應(yīng)用程序的風險值為[0,30)區(qū)間,則認為應(yīng)用程序的風險等級為低風險;待測應(yīng)用程序的風險值為[30,70)區(qū)間,則認為應(yīng)用程序的風險等級為中等風險;待測應(yīng)用程序的風險值大于70,則認為應(yīng)用程序的風險等級為高風險。

4 結(jié)語

本文通過提取權(quán)限信息,提出了一種新的基于權(quán)限的Android應(yīng)用程序風險評估方法。針對應(yīng)用市場提供的應(yīng)用程序質(zhì)量參差不齊和風險等級評估的不透明等問題,該方法通過靜態(tài)分析和動態(tài)檢測權(quán)限的使用情況,從系統(tǒng)權(quán)限和自定義權(quán)限帶來的威脅,來定量評估應(yīng)用程序的潛在風險值。實驗驗證,本文的風險評估方法能有效地度量應(yīng)用程序的風險,為進一步分析應(yīng)用程序的安全性提供了參考,但自定義權(quán)限數(shù)據(jù)集還不充分,需要進一步補充完善。

參考文獻 (References)

[1] IDC. Smartphone market share [EB/OL]. (2018-02-20)[2018-03-29]. https://www.idc.com/promo/smartphone-market-share/os.

[2] BAGHERI H, KANG E, MALEK S, et al. A formal approach for detection of security flaws in the Android permission system [J]. Formal Aspects of Computing, 2017, 9: 1-20.

[3] Google. Permissions best practices [EB/OL]. (2018-01-20)[2018-03-26]. https://developer.android.google.cn/training/permissions/best-practice.

[4] FELT A P, CHLN E, HANNA S, et al. Android permissions demystified[C]// CCA2011: Proceedings of the 18th ACM Conference on Computer and Communications Security. New York: ACM, 2011:627-638.

[5] 張銳,楊吉云.基于權(quán)限相關(guān)性的Android惡意軟件檢測[J].計算機應(yīng)用,2014,34(5):1322-1325.(ZHANG R, YANG J Y. Android malware detection based on permission correlation[J]. Journal of Computer Applications,2014, 34(5):1322-1325.)

[6] TUNCAY G S, DEMETRIOU S, GANJU K, et al. Resolving the predicament of Android custom permissions[C]// NDSS 2018: Proceedings of the 2018 Network and Distributed System Security Symposium. Piscataway, NJ: IEEE, 2018:1-16.

[7] HAMED A, AYED H K B. Privacy risk assessment and users awareness for mobile APPs permissions[C]// Proceedings of the 2017 International Symposium on Computer Systems and Applications. Piscataway, NJ: IEEE, 2017:1-8.

[8] 徐君鋒,王嘉捷,朱克雷,等.基于AHP的安卓應(yīng)用安全信用指數(shù)度量方法[J].清華大學學報(自然科學版),2018,58(2):131-136.(XU J F, WANG J J, ZHU K L, et al. Credit index measurement method for Android application security based on AHP[J]. Journal of Tsinghua University (Science and Technology), 2018,58(2):131-136.)

[9] RAHMAN A, PRADHAN P, PARTHO A, et al. Predicting Android application security and privacy risk with static code metrics[C]// Proceedings of the 2017 IEEE/ACM International Conference on Mobile Software Engineering and Systems. Piscataway, NJ: IEEE, 2017:149-153.

[10] DINI G, MARTINELLI F, MATTEUCCI I, et al. Risk analysis of Android applications: a user-centric solution [J]. Future Generation Computer Systems, 2018, 80: 505-518.

[11] TANG W, JIN G, HE J, et al. Extending Android security enforcement with a security distance model[C]// Proceedings of the 2011 International Conference on Internet Technology and Applications. Piscataway, NJ: IEEE, 2011: 1-4.

[12] VXShare. VirusShare[EB/OL]. [2017-10-09]. https://vir-usshare.com.

[13] DESNOS A, GUEGUEN G, BACHMANN S. Androguard package[EB/OL]. [2017-12-29]. http://androguard.readthedocs.io/en/latest/api/androguard.html.

主站蜘蛛池模板: 成人福利在线看| 国产一区免费在线观看| 亚洲五月激情网| 在线观看无码av五月花| 2021亚洲精品不卡a| 亚洲国产AV无码综合原创| 国产美女无遮挡免费视频网站| 亚洲无码精彩视频在线观看| 老司机久久99久久精品播放| 国产精品v欧美| 日韩乱码免费一区二区三区| 日本在线视频免费| 一级毛片免费高清视频| 免费观看亚洲人成网站| 无码AV高清毛片中国一级毛片| 亚洲欧美在线精品一区二区| 夜夜拍夜夜爽| 久久综合色视频| 国产伦精品一区二区三区视频优播| 国产一区二区精品高清在线观看| 成人午夜精品一级毛片| 久久毛片基地| jizz国产视频| 最新国产麻豆aⅴ精品无| 国产成人综合日韩精品无码首页| a级毛片在线免费| 久久综合丝袜长腿丝袜| 欧美精品H在线播放| 中文字幕资源站| 狠狠亚洲婷婷综合色香| 亚洲视频无码| 特级aaaaaaaaa毛片免费视频| AV在线麻免费观看网站| 伊人网址在线| 亚洲第一极品精品无码| 国产女人爽到高潮的免费视频 | 91国内外精品自在线播放| 欧美国产日韩另类| 色男人的天堂久久综合| 扒开粉嫩的小缝隙喷白浆视频| 18禁高潮出水呻吟娇喘蜜芽| 人人澡人人爽欧美一区| 人妻一本久道久久综合久久鬼色| 青青极品在线| 五月婷婷激情四射| 亚洲国产无码有码| 国产成人高清精品免费5388| 欧美在线网| 老司机aⅴ在线精品导航| 欧美日韩激情在线| 2021国产乱人伦在线播放 | 国产成人h在线观看网站站| www.精品国产| 一区二区三区国产精品视频| 欧美笫一页| 欧美h在线观看| 伊人色婷婷| 毛片在线区| 亚洲美女一区| 亚洲午夜福利精品无码| 国产在线91在线电影| 色婷婷亚洲综合五月| 久久情精品国产品免费| 热这里只有精品国产热门精品| 67194成是人免费无码| 99热这里只有精品2| 亚洲首页国产精品丝袜| 亚洲av无码久久无遮挡| 97视频免费在线观看| 精品久久国产综合精麻豆| 国产av剧情无码精品色午夜| 伊人久久久久久久| 国产高清无码第一十页在线观看| 97精品久久久大香线焦| 国产精彩视频在线观看| 亚洲色图欧美一区| 国产福利微拍精品一区二区| 欧美日本在线播放| 精品乱码久久久久久久| 日韩欧美成人高清在线观看| A级全黄试看30分钟小视频| 99re热精品视频国产免费|