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

Android系統信息泄露檢測研究綜述

2017-04-20 07:56:56杰,潘清,王
軟件 2017年3期
關鍵詞:程序分析檢測

強 杰,潘 清,王 飛

(1.裝備學院 信息裝備系,北京 101416;2.裝備學院 研究生管理大隊,北京 101416)

Android系統信息泄露檢測研究綜述

強 杰1,2,潘 清1,王 飛1

(1.裝備學院 信息裝備系,北京 101416;2.裝備學院 研究生管理大隊,北京 101416)

隨著智能手機的廣泛應用,Android系統的得到了大規模的普及,隨之而來的就是Android系統信息泄露的問題。本文從檢測泄露的機制出發,從靜態檢測,動態檢測以及Android本身的安全保護機制出發,詳細介紹了實現方式,最后對未來的Android系統檢測做出了展望。

手機安全;靜態檢測;動態檢測;動態污點跟蹤;訪問控制

0 引言

近些年,Android 手機的普及十分迅速。iiMedia Research發布的數據[]指出,2014上半年 Android手機占有 89.9%中國智能手機市場份額。Strategy Analytics發布的數據[2]指出,2014年第四季度,Android手機占有 83.6%全球智能手機市場份額。Android 手機不僅滿足人們的溝通需求,還可被用于理財、網上購物等日常活動。并且手機內通常存儲著一些有關用戶信息的隱私數據,如短信、通訊錄、地理信息、照片等。如果這些信息泄露,會給用戶帶來嚴重的經濟、精神損失。騰訊移動安全實驗室 2015年第一季度手機安全報告[3]顯示,2015年第一季度Android手機病毒包新增1829188個,相對去年同期,同比增長1200%。即2015年第一季度新增Android病毒包是2014年第一季度的13倍,是 2014年全年新增手機病毒包的1.82倍,其中隱私竊取類病毒占 2.5%的比例,雖然其相比 2014年總體病毒類型大盤中所占比例正在縮小,但該類病毒的“質量”與智能化程度正在提升,正在演變成竊取用戶驗證碼或者竊取用戶短信中的個人隱私的高危病毒,而且還能隨意轉發用戶短信,耗費用戶的話費,甚至還可能造成支付驗證碼被轉發、資金被盜刷等嚴重風險。因此,Android手機隱私數據泄露是一個必須得到關注的問題。

本文針對Android 手機隱私泄露問題進行了研究。首先介紹了Android 手機中的隱私數據源類型,然后介紹了現階段檢測隱私泄露技術以及現有的Android系統現有的保護機制及其缺陷。

1 Android手機隱私源

Android 手機上存儲著和用戶相關的數據,用于不同的功能。本節主要介紹兩種存在的用戶隱私數據類型,隱私數據,也稱為個人識別信息 PII(Personally identifiable information),即應用產生的數據和設備相關的信息,可以用來區分、聯系或定位個人或與他人進行區分的信息:

應用產生的數據:短信,通訊錄,電話通話狀態,通話記錄,日歷,瀏覽器瀏覽記錄,應用緩存,最近訪問記錄,已安裝的應用信息,登陸憑證(用戶名、密碼),認證令牌,音頻,視頻,圖片等。

設備相關的信息:用戶手機號碼,SIM 卡串號(ICC-ID),國際移動用戶識別碼(IMSI),國際移動設備身份碼(IMEI),傳感器數據(如 GPS、加速度傳感器),手機型號,系統版本等。

2 目前檢測隱私泄露的技術

2.1 靜態檢測

靜態檢測是在不執行程序的條件下,通過數據流分析和控制流分析等技術對程序代碼進行掃描,檢測程序是否存在隱私泄露的可能性。

目前 Android應用程序的靜態分析的對象分為兩種情況,一種是將Android應用程序還原為 java源碼進行分析,一種是將 Android應用程序還原為偽代碼。

Android應用隱私泄露的靜態檢測方法分為三個階段:預處理、控制流與數據流分析、分析檢測。流程如圖1所示:

圖1 Android應用隱私泄露靜態檢測流程[4]Fig.1 The static detection process of Android application privacy leak[4]

待檢測應用程序首先通過預處理 Dedexer反編譯轉化成為可以進行分析符號表和數據結構。然后通過控制流、數據流分析,得出被檢測應用程序的控制流圖以及函數調用圖。最后對控制流、數據流分析的結果進行處理和篩選,并和預先定義的規則進行比較,確定是否存在隱私泄露,并生成檢測報告。

預處理:目前大部分 Android應用程序檢測隱私泄露的 App,如 LeakMiner,將應用程序反編譯為 Java代碼進行分析,但是受限于技術原因沒有100%完全還原為 Java代碼,故會造成程序信息缺失,對最終分析結果產生影響。另有一部分Android應用程序檢測泄露的App采用偽代碼進行分析,相比還原為Java代碼的優勢為信息保留更完整,分析結果比前者也更加完善。

控制流與數據流分析:控制流和數據流分析是通過靜態分析將 Android應用程序的代碼轉化為可進行后續分析的數據信息。其中控制流分析包括生成 Android應用程序的過程間控制流圖以及函數調用圖。通過控制流分析,可以得到程序的運行特性,如程序代碼的執行路徑等。數據流分析是對Android應用程序中的數據如何在程序中傳遞進行分析,包括類型推導、常量分析、類層次分析、定義使用鏈構建、反射分析、別名分析等。由于數據流分析結果可能會對控制流分析的結果造成影響,例如通過數據流分析,有些程序點的控制流信息可能會得到更新。對于這些被更新的程序點需要重新進行控制流分析,并在新的控制流分析的結果上再次進行數據流分析。迭代直到控制流分析和數據流分析的結果達到穩定,沒有新的信息被更新,才認為控制流和數據流分析結束,進行下一個檢測步驟。

分析檢測:污染分析是用于分析確認 Android應用程序中是否存在隱私泄露的操作。污染分析把Android應用程序中獲取隱私相關信息的程序點作為污染分析的“源點”,把 Android應用程序的信息泄露點作為污染分析的“錨點”,如果在 Android應用程序的某個程序點,信息的傳遞會得到用戶的確認并中斷,那么認為此程序點為污染分析的“清除點”。依據這些定義信息,對控制流分析和數據流分析的結果進行分析匹配。如果通過分析,存在有某個“錨點”所泄露的信息依賴于某個“源點”所獲取到的隱私信息,且在依賴路徑上沒有任何“清除點”,則認為該“錨點”泄露的信息被“污染”,即存在隱私泄露的可能性。污染分析一般從“錨點”或“源點”開始進行分析。以“錨點”開始進行分析為例,依據數據流分析中的定義使用鏈的結果,去查找“錨點”所泄露的數據會被那些程序點的數據影響。之后再查找這些程序點的數據又會被那些程序點的數據影響。如此遞歸分析,直到找到這些數據的初始化或常量定義。之后對這整個“搜索樹”進行掃描,看是否包含有“源點”。如果存在“源點”,則這個“搜索樹”上“源點”到“錨點”的路徑就是隱私泄露的可能傳播路徑。之后再確定此傳播路徑是否可行,例如是否包含有“清除點”。

2.2 動態檢測

動態檢測技術有傳統的沙箱技術以及動態污點跟蹤技術。

沙箱技術是程序隔離運行機制,廣泛的應用于軟件測試、病毒檢測等領域。沙箱技術在進行隱私泄露的檢測時,需要檢測系統中讀取敏感信息、網絡通信等重要接口。當程序通過這些端口時,給予及時的記錄。通過這種辦法,可以檢測到程序是否讀取了用戶敏感信息和是否通過網絡向外部發送數據。但由于系統檢測的不連續性,檢測到數據缺乏必然的邏輯關系和上下文關聯性,因此存在檢測判定程序是否泄露用戶數據的不準確性。

動態污點跟蹤技術則是連續跟蹤數據流向,彌補了沙箱技術的不連續性的缺陷。主要應用于漏洞挖掘等方面。動態污點跟蹤檢測隱私數據泄露時,把隱私數據作為污點數據,隨后跟蹤其傳播,當檢測到這些污點數據通過網絡、藍牙或者后臺短信等方式發送出去的時,即可判定使用該數據的程序存在隱私泄露。

FlowDroid[5]基于污點跟蹤靜態分析應用中的一個組件內的數據流動。TaintDroid[6]基于污點跟蹤在應用程序執行時跟蹤敏感數據流動,當數據通過網絡接口離開本機時提醒用戶,以此用戶可以保護數據隱私安全。除此之外,還有IccTA[7], TaintChaser, DidFail等不基于不同形式的污點跟蹤檢測。

如上圖2所示,程序A,B中的曲線分別代表程序內運行的進程,實線代表該進程中沒有污點數據,虛線代表存在污點數據,不同虛線表示不同的污點數據。當檢測到程序在讀取用戶隱私信息時,將讀取到的隱私數據標記污點。而當程序對帶有污點的用戶敏感數據進行操作時,能夠對該操作進行相應處理,保證污點能夠跟隨隱私數據傳播下去。當2個程序之間進行通信時,污點也能跟隨數據正常跟蹤下去。例如,圖中程序A中的一個進程(點虛線)將帶有污點的數據發送給程序B中的一個線程后,污點在該線程中能繼續跟蹤著數據傳播下去。當程序把帶有污點的數據通過隱私泄露點發送到外面時, 則實時地記錄該行為。最后分析得到的日志,來判斷程序是否存在隱私泄露。如果該日志中存在程序將污點數據發送出去的記錄,則判定 程序存在隱私泄露的問題。

圖2 動態污點跟蹤技術原理Fig.2 The principle of dynamic stain tracking technology

3 Android系統現有的保護機制及其缺陷

Android操作系統作為一款基于Linux內核設計的源移動終端操作系統,在安全性設計方面,主要沿用了傳統Linux中的訪問控制(Access Control)機制,同時對其進行了增強,創建了一套權限授予機制,對系統資源進行了更細粒度的權限保護。Android將系統資源進行分類,每類資源對應相應的用戶組。同時,Android操作系統制定了許多權限規則,規定何種權限歸屬于何種用戶組,從而形成了一個權限-用戶組-系統資源的映射關系[8-10]。因此只有在擁有特定權限的用戶組中的用戶才能訪問相應的系統資源。例如只有INET用戶組和SYSTEM用戶組中的用戶才擁有創建Socket通信的權限。此外,Android系統在運行時為每個應用程序分配一個獨立的用戶ID,依靠 Linux中的 UID機制以達到隔離效果。Android安全模型是基于沙箱環境下的程序隔離機制,每個程序在自己的進程空間運行,不能影響或修改其它程序的執行序列,該隔離機制通常在Linux內核層實現,其具體的實現方式包括數據的隔離和內存空間的隔離。Android的沙箱隔離機制為程序的執行提供了一個安全的環境,但同時也降低了系統功能性[11-13]。因此為在安全的前提下盡量提升系統功能性,Android引入了共享ID和權限機制。兩個程序可以通過共享ID和聲明權限,共享數據和應用程序組件。共享ID允許程序共享數據和程序組件。多個程序要共享 ID,必須使用相同的數字證書簽名。在實際開發中,開發者可以通過使用相同的私鑰簽名實現共享ID,從而繞過隔離機制的限制,然而由于沒有統一的證書管理機構,開發者只能自行保管私鑰,因此帶來了很大的安全隱患。權限機制的使用非常廣泛,其使用方式包括定義和聲明兩種。其中每個程序在編寫時能定義一組權限,這組權限表示在其它程序獲得授權的情況下,該程序對外提供的部分功能;另外,每個程序還可以聲明一組權限,以獲取訪問其它程序或系統提供的接口的資格。聲明的權限在程序安裝時獲取,若用戶不同意授權,則程序無法成功安裝,并且權限一旦獲取就無法更改。

4 展望與結論

結合靜態檢測方法和動態檢測方法的優缺點,以及現有的 Android保護機制,設計出一種新的檢測方法。該方法結合了目前的靜態和動態檢測方法,并且加入了現有實施的 Android保護機制。其流程圖見圖3:

圖3 檢測流程圖Fig.3 Dection Flow chart

通過該流程圖可以清楚地知道該檢測方法是如何進行檢測信息泄露的。首先獲得應用程序,將其反編譯成為Java文件,然后從中得到Mainfest.xml配置文件,根據 Android現有的安全機制,過濾出超出安裝時權限的信息,如果不存在超出,則進入下一步進行靜態分析檢測,存在超出則反饋該程序存在信息泄露。

下一步進行靜態分析測試,步驟和之前的敘述的一樣,在次不做贅述,靜態分析結束后生成靜態報告。對包含疑似泄露路徑的進行動態分析檢測。進行動態分析檢測步驟和之前敘述一樣,在此不做贅述,最終生成動態分析報告,根據分析報告來判定該程序是否存在信息泄露。

但是,此方法存在的問題是資源占用太大,手機系統資源是非常寶貴的,占用太大的資源會影響用戶的體驗。如果放在本地進行測試,動態驗證就不易實現。所以目前這種解決辦法小范圍的應用在國內的一些 Android商城中,并且還加入了人工驗證的辦法,提高安全性和檢測準確度。因此如何將該方法嵌入到手機 Android系統中,并且盡量少的占用資源,是一個值得今后進行研究的問題。

[1]2014半年中國智能手機市場監測報告[OL].[2014-08-19].http: //www.iimedi a.cn/37560.html.The report of China's smartphone market monitoring in half a 2014[OL].[2014-08-19].http: //www.iimedi a.cn/37560.html.

[2]Android Captures 84% Share of Global Smartphone Shipments in Q3 2014[OL].2014-10-31].http: //blogs.strategyanalytics.com/WSS/?tag=/android.

[3]騰訊移動實驗室2015年第一季度手機安全報告[OL].[2015-5-12].http: //scan.qq.com/security_lab/news_detail_ 310.html.

Tencent mobile laboratory mobile phone security report in the first quarter of 2015 [OL].[2015-5-12].http://scan.qq.com/security_lab/news_detail_310.html.

[4]劉濤, 唐祝壽, 沈備軍.Android應用隱私泄露的自動化檢測[J].計算機應用與軟件, 2015, (3): 297-301.DOI: 10.3969/ j.issn.1000-386x.2015.03.070.

Liu Tao, Tang Zhushou , Shen BeiJun.The application of automatic detection of privacy l-eaks [J].Computer Applications and Software, 2015, (3): 297~301, 316.DOI: 10.3969/ j.issn.1000-386x.2015.03.070.

[5]Arzt S, Rasthofer S, Fritz C, et al.FlowDroid: precise context, flow, field, object-sensitive and lifecycle-aware taint analysis for Android apps[J].Acm Sigplan Notices, 2014, 49(181): 187-195.

[6]Enck W, Gilbert P, Chun B G, et al.TaintDroid: an information-flow tracking system for realtime privacy monitoring on smartphones[C]// Proceedings of the 9th USENIX conference on Operating systems design and implementation.USENIX Association, 2010: 1-6.

[7]LI L, BARTELA, KLEIN J, et al.I know what leaked in your pocket: uncovering privacy leaks on Android Apps with Static TaintAnalysis[R].Luxembourg: TR-SNT-2014-9_978-2-87971-129-4, 2014.

[8]曾立鹍, 唐泉彬, 牛斗, Android 系統應用程序組件安全性分析[J].軟件, 2014, 35(3): 147-151.

[9]黃文雄.面向Android 應用的用戶行為分析方法[J].軟件, 2014, 35(12): 83-87.

[10]吳文煥.Android 應用程序數字簽名機制研究[J].軟件, 2014, 35(2): 109-110.

[11]榮艷冬.Android 軟件權限系統的設計與實現[J].軟件, 2014, 35(2): 50-51.

[12]李淑民.Android 手機隱私泄露研究[J].軟件, 2015, 36(2): 69-72.

[13]邢曉燕, 金洪穎, 田敏.Android 系統 Root 權限獲取與檢測[J].軟件, 2013, 34(12): 208-210.

Android System Information Leak Detection

QIANG Jie1,2, PAN Qing1, WANG Fei1
(1.Department of Information Equipment, Equipment Academy, BeiJing 2, 101416, P.R.China; 2.Company of Postgraduate Management, Equipment Academy, BeiJing 1,101416, P.R.China)

With the widespread use of smart phones, Android system has been a large-scale popularity, however followed by the problem of information leak.This paper is based on the mechanism of detecting leaks; it introduces the implementation methods from static detection, dynamic detection and security protection mechanism of Android system.Finally, we made a prospection on the Android system detection in the future.

Mobile security; Static detection; Dynamic detection; Dynamic stain tracking; Access control

TP309.2

A

10.3969/j.issn.1003-6970.2017.03.030

強杰(1992-),男,碩士研究生,主要研究方向信息安全;潘清(1964-),男,裝備學院教授,主要研究方向信息安全;王飛(1979-),男,裝備學院講師,主要研究方向可信計算。

本文著錄格式:強杰,潘清,王飛.Android系統信息泄露檢測研究綜述[J].軟件,2017,38(3):143-146

猜你喜歡
程序分析檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
隱蔽失效適航要求符合性驗證分析
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
電力系統及其自動化發展趨勢分析
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 欧美午夜网| 亚洲精品中文字幕无乱码| 五月天天天色| 高清精品美女在线播放| 亚洲国产高清精品线久久| 五月天香蕉视频国产亚| 国产素人在线| 88国产经典欧美一区二区三区| 91系列在线观看| 在线观看视频99| 亚洲无线一二三四区男男| 怡红院美国分院一区二区| 国产乱子伦无码精品小说| 午夜国产小视频| 99视频在线免费| 五月激激激综合网色播免费| 四虎成人在线视频| 国产精品分类视频分类一区| 91麻豆精品视频| 国产在线拍偷自揄观看视频网站| 99久久国产综合精品2023| 92午夜福利影院一区二区三区| 免费福利视频网站| 最近最新中文字幕免费的一页| 久久免费看片| 欧美色视频网站| 国产精品私拍在线爆乳| 国产精品熟女亚洲AV麻豆| 久久综合色视频| 日韩免费中文字幕| 久久伊伊香蕉综合精品| 波多野结衣在线se| 国产亚洲一区二区三区在线| 欧美色图第一页| 免费无码AV片在线观看中文| 国产青榴视频| 操国产美女| 国产欧美日韩另类精彩视频| 最新国产精品第1页| 欧洲日本亚洲中文字幕| 手机在线免费不卡一区二| 亚洲综合色婷婷| 91在线丝袜| 久久国产乱子| 久久久无码人妻精品无码| 国产精品网址你懂的| 中文字幕啪啪| 重口调教一区二区视频| 国产成人亚洲欧美激情| 福利国产在线| 中文无码伦av中文字幕| 国产黑丝一区| 亚洲视频在线观看免费视频| 亚洲va在线观看| 性色一区| 欧美人在线一区二区三区| 亚洲精品第1页| 亚洲综合18p| 亚洲女同欧美在线| 中文字幕 日韩 欧美| 伊人色在线视频| 国产欧美日韩va另类在线播放 | 欧美精品啪啪一区二区三区| 思思99热精品在线| 亚洲天堂视频网| 91在线免费公开视频| 日本免费a视频| 国产av色站网站| 欧美亚洲香蕉| 777午夜精品电影免费看| 丰满少妇αⅴ无码区| 丁香五月激情图片| 2019年国产精品自拍不卡| 日韩美毛片| Jizz国产色系免费| 91久久夜色精品国产网站| 日日摸夜夜爽无码| A级毛片高清免费视频就| 91丝袜乱伦| 网友自拍视频精品区| 在线综合亚洲欧美网站| 小说区 亚洲 自拍 另类|