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

一種Android平臺惡意軟件靜態檢測方法

2013-12-26 05:48:54秦中元徐毓青張群芳
東南大學學報(自然科學版) 2013年6期
關鍵詞:分析檢測

秦中元 徐毓青 梁 彪 張群芳 黃 杰

(1東南大學信息安全研究中心,南京 210096)

(2信息網絡安全公安部重點實驗室,上海 201204)

(3 南京三寶科技股份有限公司,南京 210049)

(4南京炮兵學院計算機教研室,南京 211132)

智能手機是移動互聯網的重要載體,隨著移動互聯網的迅速發展,智能手機市場規模也不斷增長.Android系統由于其開源性,任何組織或個人編寫的軟件都可以上傳到“應用商店”中,供用戶下載并安裝使用,因此已經占據全球出貨量75%的智能手機[1].但是,智能手機市場的迅速發展也帶來了與用戶密切相關的惡意軟件問題.

目前國際上對于智能手機惡意軟件檢測的研究所使用的方法主要可分為2類:基于規則的方法和基于異常的檢測方法.

基于規則的方法將權限組合、行為足跡、作者信息等作為判定的規則.例如Enck等[2]定義了各種潛在的危險權限組合作為規則,通過檢查特定的危險權限組合來中止潛在不安全應用的安裝.Zhou等[3]提出了一個基于權限的行為足跡匹配來檢測Android惡意軟件已知家族的樣本,并應用啟發式過濾來檢測未知的Android惡意軟件.Zhou等[4]使用模糊哈希來檢測第三方Android應用商店中的重打包的應用程序(潛在的惡意軟件),并利用指令和程序作者信息來進行檢測.

基于異常的檢測方法選取了權限、系統調用和功耗等作為學習的特征,并利用聚類和分類算法來區分正常和惡意的應用.例如Schmidt等[5]實現了Android異常檢測系統,該系統從Android系統的各個層次獲取系統數據作為檢測依據,并使用Ad-Hoc網絡中的聯合異常檢測算法對數據進行處理.Shabtai等[6-7]提出了基于行為的Android惡意軟件檢測系統Andromaly,測試了CPU消耗、通過Wi-Fi發送的數據包數目、正在運行的進程數目、按鍵以及應用程序啟動等特征來尋找最典型的特征集合,并應用了一些不同的機器學習算法,如Logistic回歸分析(logistic regression)和貝葉斯網絡(Bayesian networks)來對應用程序分類.Zhao等[8]提出了基于行為的惡意軟件檢測框架AntiMalDroid,使用支持向量機算法,動態地記錄行為序列作為特征.

這些檢測方法涉及了靜態分析和動態分析.靜態分析利用程序的靜態語法或結構屬性來判定其惡意性,而動態分析主要通過監視程序的執行來檢測惡意行為.靜態分析與動態分析相比,具有以下優點[5]:

1) 靜態分析允許進行全面分析.靜態分析不受一個程序的特定執行過程約束,并且適用于程序的所有執行過程.相反地,動態分析技術只允許對符合選定的測試案例的行為進行檢查.

2) 結果在執行過程之前被給出,惡意行為難以偽裝.

3) 沒有運行時負擔.靜態分析方法能夠減少成本并且提高性能.盡管使用動態分析能夠提供惡意軟件的綜合觀察,但檢查中容易受到環境部署的影響,人工成本也較高.

基于此,本文對Android平臺上惡意軟件檢測進行了研究,提出一種靜態的綜合檢測方法.對于已檢測過的APK文件,提取MD5值作為簽名,在處理過程中利用MD5值進行快速匹配和判定.對于未檢測過的APK文件,根據對權限和惡意行為總結的規則來進行分析和判定.實驗中成功地從惡意軟件中檢測出了隱私竊取與惡意扣費行為,證明了本系統的有效性.

1 系統設計

1.1 系統框架

本文系統總體結構如圖1所示.該系統主要包括5個模塊,分別為:

1) 已分析程序判斷模塊.該模塊計算被檢測APK包的MD5值,并與已分析程序庫中存儲的MD5值進行比較,如果該MD5值已存在,表明該APK包已檢測過,則跳過檢測分析過程,直接進入結果輸出模塊.

2) 預處理模塊.該模塊實現解壓和反編譯.

3) 權限分析模塊.對解壓和反編譯處理后得到的AndroidManifest文件根據是否存在危險權限進行分析,如果不存在則直接進入結果輸出模塊.

4) 行為分析模塊.根據惡意行為規則庫中定義的惡意行為進行分析.

5) 結果處理模塊.將已分析程序檢測結果存入已分析程序庫,如果被檢測文件具有惡意行為,則提示用戶進行刪除或隔離操作.

圖1 系統模塊圖

1.2 系統處理流程

系統具體處理流程為:

① 用戶計算待檢測APK文件的MD5值,并與已分析程序庫比較.如果該MD5值在已分析程序庫中存在,表明已檢測過,處理結束.

② 將APK包解壓,得到AndroidManifest.xml文件和classes.dex文件.

③ 使用AXMLPrinter2,dex2jar,jd-gui等工具對AndroidManifest.xml文件進行反編譯,并將classes.dex文件轉換成Java文件.

④ 對反編譯后的AndroidManifest.xml文件進行分析.如果不存在危險權限,處理結束.

⑤ 對反編譯得到的Java文件進行行為檢測.如果存在惡意行為,則提示用戶選擇處理操作,執行刪除或隔離文件的操作.

⑥ 將檢測結果存入已分析程序庫,處理結束.

2 惡意軟件檢測

2.1 權限分析

2.1.1 Android權限機制

Android的權限機制限制了一個應用程序能夠執行的特定操作.Android有100多個內置的權限,這些權限控制從撥打電話、拍照、使用網絡到監聽按鍵,甚至是永久禁用手機的操作.為了獲取權限,應用程序必須明確地申請這個權限.Android應用程序需要在AndroidManifest.xml中使用〈uses-permission〉標簽來指定所申請的權限.

2.1.2 危險權限

由于每個Android應用程序都在AndroidManifest.xml文件中明確地申請了其所需要的權限,因此可以利用實現惡意軟件功能所需要的一些危險權限來排除安全的應用程序.

系統所考慮的危險權限包括讀取隱私信息、收發短信、撥打電話、網絡設置等.限于篇幅,表1列出了與獲取隱私信息、收發短信和撥打電話相關的危險權限.

表1 危險權限

以獲取隱私信息和收發短信的危險權限為例,說明對這些危險權限的選取和劃分依據.

1) ACCESS_COARSE_LOCATION權限允許應用程序訪問大概的位置.

2) ACCESS_FINE_LOCATION權限用于訪問精確的位置源.

3) READ_CONTACTS權限允許應用程序讀取用戶手機上存儲的所有聯系人數據.

4) READ_OWNER_DATA權限允許應用程序讀取用戶手機上存儲的手機所有者數據.

5) READ_PHONE_STATE權限允許應用程序訪問設備的手機功能.

6) READ_SMS權限允許惡意軟件讀取用戶手機或SIM卡中存儲的短信.

收發短信危險權限經常被Android惡意軟件利用.一種典型的惡意軟件是在用戶不知情的情況下向固定的增值服務號碼發送訂制扣費業務短信,給用戶帶來額外的費用.為了隱藏這一行為,惡意軟件監視接收到的短信,并且將話費賬單的通知短信自動刪除.因此惡意軟件需要分別申請SEND_SMS權限和RECEIVE_SMS權限.

權限分析根據選取的危險權限對反編譯后的AndroidManifest.xml文件進行掃描,不存在這些危險權限申請的應用程序將無需執行后續的行為分析,被判定為正常.

2.2 行為分析

Android應用程序的主要代碼包括在classes.dex文件中,該文件是源碼編譯后生成的Java字節碼.與AndroidManifest.xml文件相似,本系統對其進行反編譯后再作分析.

中國互聯網協會反網絡病毒聯盟發布的《移動互聯網惡意代碼描述規范》[9]中指出,移動互聯網惡意代碼往往被用于竊取用戶個人隱私信息,非法訂購各類增值業務,造成用戶直接經濟損失.本文系統的行為分析模塊主要針對隱私竊取和惡意扣費來進行分析.

隱私竊取行為竊取的信息包括手機相關信息、地理位置信息等,將隱私信息發送出去的方式主要有短信和網絡;惡意扣費行為主要包括自動發送訂制收費業務短信和攔截服務號碼發送的確認、賬單相關短信.針對這些惡意行為,本系統采用污點傳播分析和語義分析方法.

2.2.1 污點傳播分析

污點傳播分析方法適用于檢測程序是否具有隱私竊取行為.本文考慮的隱私竊取行為的信息對象有2種類別.一種是與手機相關的信息,包括本機電話號碼、IMEI號、IMSI號和ICC-ID.這些內容的獲取分別通過TelephonyManager類的getLine1Number()方法、getDeviceID()方法、getSubscriberId()方法和getSimSerialNumber()方法來實現.因此,對于隱私竊取的惡意行為,將上述方法選取為源函數.隱私竊取惡意行為的另一種信息對象是地理位置信息,包括經度、緯度、基站編號和本地區域代碼(考慮接入網為GSM),其相應的源函數選取為Location類的getLatitude()方法和getLongitude()方法以及GsmCellLocation類的getCid()和getLac()方法.Android與外界交互主要有短信、網絡等途徑.因此,在選取錨點函數(sink函數)時,將與這些交互方式相關的函數設置為錨點函數.對于短信發送隱私信息的方式,選取SmsManager類的發送短信函數sendTextMessage()、sendDataMessage()和sendMultipartMessage()作為錨點函數.對于通過網絡發送隱私數據的方式,由于Android對于HTTP網絡通信提供了httpURLConnection接口和httpclient接口,選取的函數有DataOutputStream 類的writeBytes()和HttpClient的execute()等函數.

對源函數到錨點函數的數據流向的分析判斷,依賴于對程序結構的分析.源節點到目標節點之間的路徑可以通過遍歷控制流圖的基本塊得到.路徑生成與污點傳播算法采用孔德光等[10]提出的算法.

路徑生成算法的輸入為源節點src(源函數)與目標節點tgt(錨點函數),輸出為src到tgt的路徑.首先識別源節點和目標節點所在的基本塊;如果在同一個基本塊內,則直接在基本塊內尋找從源節點到目標節點的路徑;如果源節點和目標節點在同一個函數但不在同一個基本塊中,則尋找該函數內基本塊之間的路徑;如果源節點和目標節點在不同的函數體中,則迭代展開函數調用,尋找不同函數調用間的路徑.

污點傳播過程用于跟蹤污染和未污染數據的變化過程.算法的輸入為當前語句stmt,輸出為標記該條語句中從源數據(source)到目的數據(target)的污點傳播過程.其標記過程如圖2所示,根據當前語句的類型來判定目的數據的污染狀態.

圖2 污點傳播算法

2.2.2 語義分析

根據對惡意扣費應用程序的分析發現,其惡意行為的主要表現有:

1) 申請了收發短信權限.

2) 向特定號碼發送短信.

3) 注冊監聽消息,并屏蔽來自特殊號碼的短信.

因此,針對惡意扣費行為,采用基于特殊字符串和函數的語義分析來進行檢查.

具體地,針對惡意發送訂制服務短信同時攔截運營商回復短信的行為,對其進行基于語義分析的檢測,算法描述如下:

① 檢查AndroidManifest文件中是否申請了android.permission.RECEIVE_SMS接收短信權限和android.permission.SEND_SMS發送短信權限.

② 在程序中對發送短信的API函數調用進行定位,這些函數包括sendTextMessage(),sendDataMessage()和sendMultipartMessage().

③ 對關鍵函數調用的第1個參數(發送信息的目的號碼)進行匹配檢查,看是否為106開頭的數字.

⑤ 在④中相應類的abortBroadcast()函數的上下文中對“10086”,“10000”,“10010”和106開頭的特定號碼進行匹配檢查.

3 實驗結果

本文在處理器為AMD Phenom(tm) Ⅱ X4 970,主頻為3.5 GHz,RAM為4 GB, 操作系統為Windows 7(32位)的計算機上進行了實驗.選取了10個惡意軟件樣本(編號1~10),利用本文的檢測系統對這些應用程序進行分析.

利用本文系統對每個樣本的AndroidManifest文件進行分析,得出每個樣本所申請的危險權限類別,如表2所示.

表2 權限分析結果

由表2可看出:

1) 樣本1,3,4,5,6,9都申請了與短信相關的權限,而且其中除了樣本3以外都同時申請了接收短信和發送短信的權限,行為分析也進一步判定樣本1,4,5,9具有惡意扣費行為,表明收、發短信的權限與惡意扣費行為實現的相關性.

2) 所有樣本都申請了與讀取用戶隱私相關的權限和與網絡相關的權限,表明這2種權限是惡意軟件通常需要利用的.

3) 樣本2,7,8,10申請了與自啟動相關的權限.

對樣本檢測出的惡意行為進行統計分析,如表3所示.

表3 行為分析結果

由表3可看出,在所檢測的10個惡意樣本中,樣本1,4,5,9具有惡意扣費行為.這個結果也與權限申請情況符合,因為這4個樣本都同時申請了接收短信和發送短信的權限.

樣本2,3,6,7,8,10檢測出具有隱私竊取的惡意行為,這6個樣本都竊取了與手機信息相關的隱私,樣本6和8同時還竊取了地理位置信息.

下面對檢測出的一個樣本zsone.apk進行具體分析.

1) 基本信息.名稱為zsone.apk.其MD5值為944cbd53a174dcbb0e1e3d0832cac465.

2) 該軟件申請的危險權限.android.permission.INTERNET,android.permission.ACCESS_COARSE_LOCATION,android.permission.RECEIVE_SMS和android.permission.SEND_SMS.

3) 惡意行為信息.檢測到惡意扣費行為.發送的目標號碼及內容為:10621900,“M6307AHD”;10626213,“aAHD”;106691819,“95pAHD”;10665123085,“58#28AHD”.屏蔽的號碼為:10086,10000,10010,1066133,10655133.

對其進行反編譯得到的代碼中的關鍵代碼如下所示:

private void sendCM()

{SmsManager.getDefault().sendTextMessage(“10621900”,null,”M6307AHD”,PendingIntent.getBroadcast(this.context,0,new Intext(),0),null);}

private void sendCM()

{SmsManager.getDefault().sendTextMessage(“10626213”,null,”aAHD”,PendingIntent.getBroadcast(this.context,0,new Intext(),0),null);}

…}//以上代碼實現了向號碼10621900等發送惡意扣費短信的行為.

try

{String str=ocalSmsMessage.getDisplayOriginatingAddress();

if (("10086".equals(str)) ‖ ("10000".equals(str)) ‖ ("10010".equals(str)) ‖ ("1066133".equals(str)) ‖ ("10655133".equals(str)))

abortBroadcast();

k++;}//以上代碼實現了攔截來自號碼10086等的短信的行為.

通過分析上面的反編譯結果可得出,該樣本可以實現向特定號碼發送訂制扣費服務的短信,并能屏蔽來自特定號碼的短信,使用戶無法收到服務提供者的確認或通知短信,在用戶不知情的情況下造成惡意扣費,與檢測結果相同.

4 結語

本文對現有的智能手機平臺惡意軟件檢測工作進行了總結,提出了一種綜合檢測方法.對于已檢測過的APK文件,提取MD5值作為簽名,在處理過程中利用MD5值進行快速匹配和判定.對于未檢測過的APK文件,根據對權限和惡意行為總結的規則來進行分析和判定.

本文方法與基于簽名的方法相比,具有可以檢測出已知惡意軟件變種和未知惡意軟件的優勢.與基于異常的檢測方法相比,更準確地定義了實際的惡意行為,而且避免了訓練階段的特征選擇問題.

)

[1] IDC. Android marks fourth anniversary since launch with 75.0% market share in third quarter, according to IDC [EB/OL]. (2012-11-01) [2013-01-02]. http://www.idc.com/getdoc.jsp?containerId=prUS23771812.

[2] Enck W, Ongtang M, McDaniel P. On lightweight mobile phone application certification[C]//Proceedingsofthe16thACMConferenceonComputerandCommunicationsSecurity. Chicago, IL, USA, 2009:235-245.

[3] Zhou Yajin, Wang Zhi, Zhou Wu, et al. Hey, you, get off of my market: detecting malicious apps in official and alternative Android markets[C]//Procofthe19thAnnualNetworkandDistributedSystemSecuritySymposium. San Diego, CA, USA: 2012:1-13.

[4] Zhou Wu, Zhou Yajin, Jiang Xuxian, et al. Detecting repackaged smartphone applications in third-party Android marketplaces[C]//ProceedingsoftheSecondACMConferenceonDataandApplicationSecurityandPrivacy. San Antonio, TX, USA, 2012: 317-326.

[5] Schmidt A-D, Bye R, Schmidt H-G, et al. Static analysis of executables for collaborative malware detection on Android[C]//2009IEEEInternationalConferenceonCommunications. Dresden, Germany, 2009:1-5.

[6] Shabtai A, Elovici Y. Applying behavioral detection on Android-based devices[C]//3rdInternationalConferenceonMobileWirelessMiddleware,OperatingSystems,andApplications. Chicago, IL, USA, 2010:235-249.

[7] Shabtai A, Kanonov U, Elovici Y, et al. “Andromaly”: a behavioral malware detection framework for android devices[J].JournalofIntelligentInformationSystems, 2012,38(1):161-190.

[8] Zhao Min, Ge Fangbin, Zhang Tao, et al. AntiMalDroid: an efficient SVM-based malware detection framework for android[C]//2ndInternationalConferenceonInformationComputingandApplications. Qinhuangdao, China, 2011:158-166.

[9] 工業和信息化部. 移動互聯網惡意代碼描述規范[EB/OL]. (2011-05-14) [2013-01-02]. http://wenku.baidu.com/view/2978e18ccc22bcd126ff0c90.html.

[10] 孔德光,鄭烇,帥建梅,等.基于污點分析的源代碼脆弱性檢測技術[J].小型微型計算機系統,2009,30(1):78-82.

Kong Deguang, Zheng Quan, Shuai Jianmei, et al. Source code vulnerability detection technology based on taint analysis[J].JournalofChineseComputerSystems, 2009,30(1):78-82. (in Chinese)

猜你喜歡
分析檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
隱蔽失效適航要求符合性驗證分析
“幾何圖形”檢測題
“角”檢測題
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
電力系統及其自動化發展趨勢分析
小波變換在PCB缺陷檢測中的應用
中西醫結合治療抑郁癥100例分析
主站蜘蛛池模板: 狠狠v日韩v欧美v| 国产9191精品免费观看| 黑色丝袜高跟国产在线91| 一边摸一边做爽的视频17国产| 国产成年女人特黄特色毛片免| 精品成人一区二区三区电影 | 久久精品这里只有国产中文精品| 欧美日韩亚洲国产| 国产精品成人久久| 在线欧美国产| 在线国产欧美| 99在线视频精品| 国产免费黄| 午夜精品区| 国产经典免费播放视频| 99热这里只有精品久久免费| 嫩草国产在线| 免费视频在线2021入口| 91青青视频| 成年人福利视频| 18禁黄无遮挡免费动漫网站| 国产精品污污在线观看网站| 精品人妻无码区在线视频| 亚洲人成在线精品| 国产精品观看视频免费完整版| 四虎永久在线视频| 欧美国产综合色视频| 色噜噜中文网| 国产午夜福利亚洲第一| 国产真实自在自线免费精品| 波多野结衣无码AV在线| 成人字幕网视频在线观看| 亚洲伦理一区二区| 国产人免费人成免费视频| 日韩欧美国产区| 激情综合网激情综合| 色噜噜综合网| 色婷婷亚洲十月十月色天| 日本高清视频在线www色| 亚洲av无码片一区二区三区| 国产精品久久久久久搜索| 精品一区二区三区无码视频无码| 亚洲人在线| 青青草国产精品久久久久| 日韩福利在线观看| 国产亚洲美日韩AV中文字幕无码成人| 午夜精品福利影院| 中文字幕乱码中文乱码51精品| 欧美日韩导航| 国产区精品高清在线观看| 免费视频在线2021入口| 欧美不卡在线视频| 欧美在线中文字幕| 日日碰狠狠添天天爽| 国产迷奸在线看| 久久国产精品电影| 国产永久免费视频m3u8| 亚洲日本www| 她的性爱视频| 亚洲永久免费网站| 99精品视频播放| 国产成人精品2021欧美日韩| 国产原创演绎剧情有字幕的| 国产成人久视频免费| 国内精品自在自线视频香蕉| 国产精品亚洲天堂| 中文字幕在线不卡视频| 97一区二区在线播放| 婷婷午夜天| 伊伊人成亚洲综合人网7777| 国产女人爽到高潮的免费视频| 亚洲人成日本在线观看| 日本在线欧美在线| 久久精品电影| 手机成人午夜在线视频| 亚洲精品午夜天堂网页| 四虎永久在线精品国产免费 | 国产成人精品一区二区不卡| 热这里只有精品国产热门精品| 亚洲综合第一页| 69视频国产| 欧洲极品无码一区二区三区|