亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Android智能終端安全綜述

        2016-07-18 11:49:54許艷萍馬兆豐王中華鈕心忻楊義先
        通信學(xué)報(bào) 2016年5期
        關(guān)鍵詞:檢測

        許艷萍,馬兆豐,王中華,鈕心忻,楊義先

        ?

        Android智能終端安全綜述

        許艷萍1,馬兆豐1,王中華2,鈕心忻1,楊義先1

        (1. 北京郵電大學(xué)信息安全中心,北京 100876;2. 國家計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心,北京 100029)

        針對(duì)Android智能終端安全問題,構(gòu)建Android智能終端安全分層體系。首先從遠(yuǎn)程防盜、生物身份驗(yàn)證和硬件安全模塊方面闡述了Android設(shè)備安全的安全威脅及保護(hù)措施,然后從無線安全網(wǎng)絡(luò)、病毒傳播查殺和防釣魚攻擊說明了Android網(wǎng)絡(luò)安全的隱患及防范,之后從內(nèi)核安全、本地庫運(yùn)行時(shí)環(huán)境安全和應(yīng)用框架安全角度介紹了Android操作系統(tǒng)安全的研究內(nèi)容,接著從靜態(tài)檢測和應(yīng)用行為動(dòng)態(tài)檢測、應(yīng)用加固和應(yīng)用評(píng)估方面展示了Android應(yīng)用安全的研究成果,接下來著眼于數(shù)據(jù)本身總結(jié)了Android數(shù)據(jù)的追蹤、加密和備份等安全保護(hù)技術(shù),最后結(jié)合實(shí)際需求展望了Android安全未來在安全增強(qiáng)框架、智能應(yīng)用行為分析等方向的發(fā)展。

        Android;設(shè)備安全;網(wǎng)絡(luò)安全;系統(tǒng)安全;應(yīng)用安全;數(shù)據(jù)安全

        1 引言

        Android系統(tǒng)是2007年Google公司發(fā)布的基于Linux內(nèi)核的開源操作系統(tǒng),主要應(yīng)用于智能手機(jī)、平板Pad、智能手表等智能終端。自發(fā)布以來,系統(tǒng)的開源特性廣受智能設(shè)備廠商及開發(fā)人員的推崇,廣泛應(yīng)用于金融、政府、交通、教育、軍事、汽車、家居、能源等重要領(lǐng)域。IDC調(diào)研顯示,2015年Android智能手機(jī)的出貨量達(dá)到14.3億部,占全球智能手機(jī)市場份額的82%。

        360互聯(lián)網(wǎng)安全中心發(fā)布《2015年手機(jī)安全狀況報(bào)告》[1]顯示,2015全年截獲的Android平臺(tái)新增惡意程序樣本為1 874萬個(gè),較2013年,2014年分別增加了27.9倍和5.7倍,累計(jì)約3.7億人次Android用戶感染到惡意程。根據(jù)危害結(jié)果將Android病毒分5大類:移動(dòng)支付(60%)、資費(fèi)消耗(14%)、隱私竊取(20%)、遠(yuǎn)程控制(2%)、黑客工具(4%)[2]。Android病毒最常做出的前3位惡意行為是資費(fèi)泄露隱私、權(quán)限提升、流量消耗[3,4],智能終端安全正面臨著嚴(yán)峻的考驗(yàn)。

        由于Android平臺(tái)開放的生態(tài),每一個(gè)Android設(shè)備中安裝的軟件可能來自于Google、手機(jī)開發(fā)商、芯片廠商和不同應(yīng)用開發(fā)者等,軟件組件很難遵從統(tǒng)一的開發(fā)、測試、審計(jì)標(biāo)準(zhǔn),因而質(zhì)量參差不齊。對(duì)惡意攻擊者和安全研究者來說,卻是一個(gè)很好的研究目標(biāo)。

        參照信息安全技術(shù)體系設(shè)計(jì)原則[5],將Android智能終端安全層次劃分為設(shè)備安全層、網(wǎng)絡(luò)安全層、系統(tǒng)安全層、應(yīng)用安全層和數(shù)據(jù)安全層,每層針對(duì)受到的威脅采取相應(yīng)的安全防護(hù)措施[6~9],從而達(dá)到5個(gè)安全目標(biāo):保密性、完整性、可用性、可控性和不可否認(rèn)性。Android智能終端安全分層體系如圖1所示。

        設(shè)備安全層。Android終端設(shè)備是應(yīng)用和數(shù)據(jù)的載體,主要研究設(shè)備丟失情況下的遠(yuǎn)程防盜、基于生物特征的身份驗(yàn)證和硬件安全模塊內(nèi)容。Android設(shè)備中存儲(chǔ)了大量的個(gè)人隱私數(shù)據(jù),如短信、通訊錄、照片等[3],如果在設(shè)備丟失或者繞過身份驗(yàn)證被非法人員操作的情況下,隱私數(shù)據(jù)很容易被竊取?;赬MPP的協(xié)議遠(yuǎn)程對(duì)終端設(shè)備下發(fā)指令控制設(shè)備[10];基于指紋、人臉、虹膜等人體生物特征的身份驗(yàn)證拒絕非法終端用戶登錄,打造安全的設(shè)備環(huán)境;采用硬件安全模塊,基于硬件實(shí)現(xiàn)高性能安全加密和身份驗(yàn)證等功能。

        網(wǎng)絡(luò)安全層。Android智能終端互聯(lián)互通,形成無線通信網(wǎng)絡(luò),主要研究無線安全網(wǎng)絡(luò)、病毒傳播查殺和防釣魚攻擊等。Android智能設(shè)備通過采用安全無線路由器、加密VPN服務(wù)[11]等方式,構(gòu)建安全網(wǎng)絡(luò)接入環(huán)境,保障數(shù)據(jù)安全傳輸;Android病毒以短信、彩信、二維碼、偽裝應(yīng)用安裝等方式傳播擴(kuò)散,通過特征識(shí)別,利用云計(jì)算、大數(shù)據(jù)技術(shù)智能化地檢測病毒是阻斷病毒傳播擴(kuò)散的有效方式[12,13];釣魚攻擊是移動(dòng)互聯(lián)網(wǎng)面臨的重大威脅,檢測方式包括黑名單、異常檢測和機(jī)器學(xué)習(xí)智能檢測等。

        系統(tǒng)安全層。針對(duì)Android智能終端操作系統(tǒng),按照系統(tǒng)層次研究內(nèi)核安全、本地庫和運(yùn)行時(shí)環(huán)境安全、應(yīng)用程序框架安全。通過內(nèi)核增強(qiáng)[14]、漏洞挖掘[15]、內(nèi)存防泄漏、系統(tǒng)防ROOT方式保護(hù)內(nèi)核安全;通過安全沙箱機(jī)制、ART機(jī)制、組件間安全通信保障本地庫和運(yùn)行時(shí)環(huán)境安全;通過權(quán)限機(jī)制和簽名機(jī)制保障應(yīng)用程序框架安全。

        應(yīng)用安全層。針對(duì)運(yùn)行在Android智能終端上的應(yīng)用安全,主要研究惡意應(yīng)用靜態(tài)檢測、惡意應(yīng)用動(dòng)態(tài)檢測、應(yīng)用安全加固和應(yīng)用安全評(píng)估。靜態(tài)檢測研究應(yīng)用逆向工程、特征提取、機(jī)器學(xué)習(xí)智能檢測、重打包檢測等內(nèi)容;動(dòng)態(tài)檢測主要研究動(dòng)態(tài)行為獲??;應(yīng)用安全加固可采用代碼混淆、應(yīng)用加殼、防反編譯[16]等方式。通過建立評(píng)估體系和評(píng)估標(biāo)準(zhǔn),評(píng)估惡意應(yīng)用給系統(tǒng)和數(shù)據(jù)帶來的風(fēng)險(xiǎn)[4,17]。

        數(shù)據(jù)安全層。保護(hù)Android終端設(shè)備存儲(chǔ)上的數(shù)據(jù)安全,研究數(shù)據(jù)偽造及跟蹤[18,19]、加密[20]、云備份、數(shù)字版權(quán)保護(hù)、安全支付等內(nèi)容。隱私數(shù)據(jù)是Android終端設(shè)備上最具有核心價(jià)值的部分,保護(hù)設(shè)備、網(wǎng)絡(luò)、系統(tǒng)、應(yīng)用的安全,終極目的是保護(hù)數(shù)據(jù)的機(jī)密性、完整性和可用性,通過偽造及跟蹤、加密、云備份、數(shù)字版權(quán)保護(hù)、安全支付等保護(hù)方式,直接保護(hù)隱私數(shù)據(jù)的安全性。

        鑒于Android廣泛的市場應(yīng)用,學(xué)術(shù)界的專家學(xué)者對(duì)其安全機(jī)制進(jìn)行了諸多研究,主要圍繞權(quán)限增強(qiáng)管理、應(yīng)用安全分析、隱私數(shù)據(jù)防泄露等方面,并取得顯著成果。本文在廣泛閱讀文獻(xiàn)的基礎(chǔ)上,總結(jié)了Android平臺(tái)在設(shè)備安全、網(wǎng)絡(luò)安全、系統(tǒng)安全、應(yīng)用安全和數(shù)據(jù)安全方面的研究成果,并根據(jù)當(dāng)前研究工作的不足展望了幾點(diǎn)未來的研究方向。

        2 Android移動(dòng)終端設(shè)備安全

        2.1 遠(yuǎn)程防盜

        實(shí)現(xiàn)Android智能終端遠(yuǎn)程控制的方式有基于HTTP協(xié)議的遠(yuǎn)程數(shù)據(jù)傳輸、基于RDP協(xié)議的遠(yuǎn)程桌面控制[21]、基于XMPP的即時(shí)消息推送[10]等。

        基于XMPP協(xié)議的遠(yuǎn)程防盜是當(dāng)前比較流行的終端設(shè)備保護(hù)方式,XMPP協(xié)議具有超強(qiáng)的可擴(kuò)展特性,服務(wù)端和智能終端可約定通信指令[22]。應(yīng)用時(shí),首先將用戶信息和設(shè)備信息注冊到控制端,制定保護(hù)策略,如數(shù)據(jù)備份和刪除、遠(yuǎn)程鎖定、遠(yuǎn)程定位等。一旦終端設(shè)備丟失,通過控制端下發(fā)指令對(duì)終端設(shè)備定位、對(duì)屏幕遠(yuǎn)程鎖定、更換SIM卡鎖定設(shè)備、刪除短信和通訊錄等隱私數(shù)據(jù)等,減少因設(shè)備丟失造成的損失。目前,主流的智能終端廠商都提供對(duì)終端遠(yuǎn)程防盜的服務(wù)。

        遠(yuǎn)程防盜已經(jīng)成為終端安全的標(biāo)配功能之一,其優(yōu)點(diǎn)是即使終端不在身邊,只要確定身份合法也能夠方便地實(shí)施操作,尤其是在設(shè)備丟失的情況下,遠(yuǎn)程定位、遠(yuǎn)程刪除和鎖定對(duì)于找回手機(jī)、保護(hù)隱私有重大意義,但對(duì)于網(wǎng)絡(luò)的要求很高,一旦設(shè)備離線,便不能發(fā)送控制指令,而通過短信發(fā)送指令是另一種有效的途徑。

        2.2 生物身份驗(yàn)證

        人體的生物特征往往具有唯一性,如指紋、掌紋、聲音、虹膜、人臉、步態(tài)、脈搏、運(yùn)動(dòng)特征等,科技界已經(jīng)逐漸將這些特征作為身份識(shí)別和驗(yàn)證的重要手段[23]。Android SDK從1.0版本中就已經(jīng)集成了簡單的人臉識(shí)別功能,而OpenCV開發(fā)包集成了更專業(yè)、快速、高級(jí)的人臉識(shí)別算法。自2013年7月芬蘭 Uniqul公司首次推出基于臉部識(shí)別系統(tǒng)的支付平臺(tái),目前互聯(lián)網(wǎng)金融企業(yè)正在研究將人臉支付運(yùn)用于Android支付系統(tǒng)。

        目前有很多Android終端設(shè)備搭載了指紋識(shí)別技術(shù),利用指紋識(shí)別傳感器及指紋模式支持指紋鎖,作為安全工具、硬件平臺(tái)和操作系統(tǒng)三方支持的安全模式,不僅簡便了解鎖的過程,還把非法用戶阻擋在外。但是這種防護(hù)手段已被黑客攻陷,他們發(fā)現(xiàn)了指紋識(shí)別框架下的漏洞,輕松地繞過指紋識(shí)別器,從而執(zhí)行任何操作,而且還能夠直接拷貝用戶的指紋信息,在更大范圍內(nèi)威脅用戶的個(gè)人信息安全和隱私內(nèi)容。在此情況下催生出了更高級(jí)、更安全的身份驗(yàn)證方式——眼球識(shí)別技術(shù)。目前這種技術(shù)的安全性還沒被突破,眼球樣本信息不能被復(fù)制,但在識(shí)別范圍和識(shí)別準(zhǔn)確率方面還需要進(jìn)一步改進(jìn)。另外,Google正在測試?yán)糜脩舻膭?dòng)作震動(dòng)或者任意活動(dòng)手機(jī),將動(dòng)作幅度或者頻率作為鎖屏和解鎖的方式,從進(jìn)展來看,這是項(xiàng)極具挑戰(zhàn)性的工作。

        從發(fā)展趨勢上看,利用人體生物特征作為唯一的識(shí)別標(biāo)識(shí),是Android智能終端領(lǐng)域經(jīng)久不衰的應(yīng)用研究,在識(shí)別校準(zhǔn)和準(zhǔn)確率方面還需要提高,而其性能在大數(shù)據(jù)方面也在不斷探索。

        2.3 硬件安全模塊

        出于對(duì)移動(dòng)終端中隱私數(shù)據(jù)提供集中的安全保護(hù)考慮,智能終端廠商設(shè)計(jì)并實(shí)施了硬件安全模塊(HSM, hardware security modules),直接連接到系統(tǒng)總線上,基于硬件實(shí)現(xiàn)高性能密碼和密鑰管理功能,提供的服務(wù)包括安全存儲(chǔ)、安全加密、身份驗(yàn)證等。嵌入式安全技術(shù)供應(yīng)商Discretix公司研發(fā)的CryptoCell安全模塊具備PKI引擎、對(duì)稱引擎、散列引擎、隨機(jī)數(shù)發(fā)生器、安全密鑰和完整性驗(yàn)證等6個(gè)可配置的功能模塊,加速執(zhí)行各種驗(yàn)證和加密功能,對(duì)整個(gè)智能終端設(shè)備的發(fā)展將產(chǎn)生積極的影響。在國內(nèi),華為作為手機(jī)終端的領(lǐng)跑者,通過硬件安全模塊與麒麟操作系統(tǒng)協(xié)作,徹底杜絕刷機(jī)解密等操作的可能性。

        硬件安全模塊在保證數(shù)據(jù)保護(hù)、安全支付等方面更專業(yè),效果更明顯,隨著智能終端對(duì)安全愈加重視,必將成為重要的保護(hù)方式。

        3 Android移動(dòng)終端網(wǎng)絡(luò)安全

        3.1 無線安全網(wǎng)絡(luò)

        Android智能終端通過GPRS、無線Wi-Fi接入網(wǎng)絡(luò)可滿足用戶隨時(shí)隨地上網(wǎng)的需求。無論使用哪種方式,開放的網(wǎng)絡(luò)環(huán)境中,用戶執(zhí)行登錄賬號(hào)、支付等敏感操作時(shí),易遭到黑客攻擊導(dǎo)致隱私泄露,常用的攻擊方式有嗅探、釣魚攻擊、中間人攻擊、惡意DNS篡改、遠(yuǎn)程執(zhí)行、XSS跨站腳本、電磁信號(hào)干擾等[24]。

        Ma等[25]針對(duì)商業(yè)Wi-Fi網(wǎng)絡(luò)提出混合式的惡意網(wǎng)絡(luò)接入點(diǎn)檢測方案,主要采用無線掃描和集中流量監(jiān)控方式發(fā)現(xiàn)惡意AP,并且保護(hù)網(wǎng)絡(luò)免受惡意AP的侵害,優(yōu)點(diǎn)是不需要專門的硬件并且適用于任何網(wǎng)絡(luò)標(biāo)準(zhǔn)。

        無線路由器通常采用WPA/WPA2加密的方式保障密碼的安全性,但是通過多次逆運(yùn)算之后,這種加密能夠被破解,需要探索另外的方式保證無線口令的安全性?,F(xiàn)在的手機(jī)安全防護(hù)軟件也集成了安全監(jiān)測功能,防范DNS、ARP、虛假Wi-Fi、加密及釣魚等攻擊。

        Wang等[26]針對(duì)Wi-Fi驅(qū)動(dòng)的Fuzzing測試框架,通過構(gòu)建數(shù)據(jù)分組實(shí)施針對(duì)Wi-Fi通信的攻擊,這種框架不僅能發(fā)現(xiàn)已知攻擊,在發(fā)現(xiàn)未知攻擊方面也效果顯著。

        針對(duì)Wi-Fi竊聽問題,可采用加密的VPN服務(wù),將所有傳輸流量都進(jìn)行加密,無論通信鏈路是否安全,都能保證數(shù)據(jù)的安全[11]。

        3.2 病毒傳播查殺

        自2010年來,每年都爆發(fā)多次手機(jī)病毒危機(jī),在移動(dòng)互聯(lián)網(wǎng)絡(luò)上迅速傳播,波及范圍廣泛,十分具有破壞性。每個(gè)季度網(wǎng)絡(luò)安全公司都會(huì)發(fā)布Android手機(jī)安全報(bào)告,通報(bào)當(dāng)前手機(jī)病毒及手機(jī)感染病毒的情況等。將Android病毒按照危害特征劃分為多個(gè)家族:AnserverBot、BaseBridge、DroidKungFu、DroidDream、FakePlayer、Geinimi、GoldDream、GingerMaster、Zsone、SndApps等[3,27]。Android病毒按照危害行為劃分為木馬類、后門類、蠕蟲類、僵尸網(wǎng)絡(luò)類、間諜竊取類、欺騙類等[3]。手機(jī)病毒利用通訊錄群發(fā)短信、彩信、電子郵件和掃描驗(yàn)證碼、二維碼方式擴(kuò)散傳播,造成隱私數(shù)據(jù)泄露、資費(fèi)消耗、破壞系統(tǒng)等后果。

        病毒具有逐利性,發(fā)展技術(shù)和種類總是層出不窮,但是反病毒技術(shù)的發(fā)展只能僅僅追逐于病毒更新的速度,往往反病毒技術(shù)只能應(yīng)對(duì)已知的病毒,對(duì)于未知的病毒,專家正著眼于利用云計(jì)算、大數(shù)據(jù)資源基于機(jī)器學(xué)習(xí)、深度學(xué)習(xí)算法等方式,自動(dòng)化、智能化地根據(jù)行為特征對(duì)其進(jìn)行查殺,并按照其執(zhí)行的操作將其劃分到不同的種類[27,28]。

        3.3 防釣魚攻擊

        手機(jī)終端綁定銀行、支付和社交等賬戶,容易遭受不法分子的覬覦,他們往往通過網(wǎng)頁釣魚、短信釣魚、應(yīng)用釣魚、郵件釣魚等誘惑用戶[29],2015全年360手機(jī)安全防護(hù)軟件共攔截各類釣魚網(wǎng)站攻擊48億次[1]。

        釣魚網(wǎng)站攻擊檢測和防范成為當(dāng)務(wù)之急,常用的方法有黑名單、異常檢測和機(jī)器學(xué)習(xí)智能檢測等。Bottazzi等[30]提出釣魚檢測框架MP-Shield,分析URL鏈接,集成了基于公共黑名單的瀏覽器檢測插件,同時(shí)實(shí)現(xiàn)了機(jī)器學(xué)習(xí)檢測引擎,包含J48、SMO、BayesNet、IBK和SGD算法,確保手機(jī)終端免受0Day釣魚攻擊。

        Wu等[31]提出輕量級(jí)檢測工具M(jìn)obiFish,檢測手機(jī)Web網(wǎng)頁、應(yīng)用和登錄賬戶上遭遇的釣魚攻擊。MobiFish應(yīng)用OCR技術(shù)提取截屏中的文本信息,通過文本中聲稱的身份信息與網(wǎng)頁URL和APP中實(shí)際的身份信息比較,給出釣魚警示,而不像其他方法那樣,分析HTML源碼、IP地址、搜索引擎[32],或者采用機(jī)器學(xué)習(xí)算法[33]證明該方法能有效檢測和防范釣魚攻擊。

        受到利益的驅(qū)使,釣魚網(wǎng)站層出不窮,廣大終端用戶應(yīng)當(dāng)使用主流的安全防護(hù)軟件,它們基本涵蓋了已知的釣魚網(wǎng)站黑名單,能夠很好地?cái)r截非法釣魚鏈接。同時(shí),用戶應(yīng)提高警惕,不受誘惑,不點(diǎn)擊未知鏈接,并且不泄露身份信息和財(cái)產(chǎn)賬戶信息等。

        4 Android系統(tǒng)安全

        4.1 Android系統(tǒng)內(nèi)核安全

        4.1.1 內(nèi)核增強(qiáng)

        Android系統(tǒng)內(nèi)核的安全威脅一方面繼承自Linux系統(tǒng)漏洞,另一方面源于Android平臺(tái)本身不完善。在Android系統(tǒng)內(nèi)核訪問控制增強(qiáng)研究方面,Shabtai等[34]提出將強(qiáng)制訪問控制子系統(tǒng)SELinux植入到Android平臺(tái)中,以限制應(yīng)用對(duì)系統(tǒng)資源的訪問,增強(qiáng)Android系統(tǒng)安全,是首次提出的高效低耗的系統(tǒng)增強(qiáng)方案。Smalley等[35]實(shí)現(xiàn)了基于SELinux內(nèi)核開發(fā)一套MAC中間件擴(kuò)展Android權(quán)限模型,隔離應(yīng)用間的數(shù)據(jù)交互。

        實(shí)際應(yīng)用上,從Android 4.3以來,正式引入基于MAC的SELinux安全機(jī)制,稱為SEAndroid,用來強(qiáng)化操作系統(tǒng)對(duì)應(yīng)用的訪問控制,起到類似沙箱的執(zhí)行隔離效果,阻止惡意應(yīng)用對(duì)系統(tǒng)或其他應(yīng)用的攻擊,還有效地減弱內(nèi)核層出現(xiàn)漏洞時(shí)產(chǎn)生的威脅。

        4.1.2 漏洞挖掘

        任何系統(tǒng)在邏輯設(shè)計(jì)和實(shí)現(xiàn)上都存在缺陷或者錯(cuò)誤,Android系統(tǒng)亦不例外,2015年,Google成立了Android Security Rewards項(xiàng)目,用于獎(jiǎng)勵(lì)A(yù)ndroid系統(tǒng)漏洞發(fā)現(xiàn)者。歷年共公布600多條系統(tǒng)漏洞,覆蓋到內(nèi)核層、Native層、框架層及應(yīng)用層,包括內(nèi)存溢出、權(quán)限提升、組件交互、硬件資源調(diào)配等各個(gè)方面[36]。

        傳統(tǒng)的漏洞挖掘方式分為主動(dòng)方式和被動(dòng)方式,主動(dòng)挖掘方式分為人工挖掘、靜態(tài)挖掘和動(dòng)態(tài)挖掘,被動(dòng)挖掘方式分為攻擊分析和補(bǔ)丁分析[37]。Android平臺(tái)的漏洞主要分為常規(guī)漏洞和權(quán)限提升漏洞,通過分析邏輯規(guī)則的合理性,編寫Fuzz測試用例,構(gòu)建漏洞知識(shí)庫是一種有效的漏洞發(fā)掘方式。

        Zhang等[37]提出Android平臺(tái)漏洞挖掘4層模型,針對(duì)攻擊樣本、攻擊方法、修復(fù)補(bǔ)丁,分析漏洞存在的可能性,利用Fuzz測試方法和攻擊挖掘方法,有效地挖掘出系統(tǒng)漏洞、應(yīng)用漏洞、權(quán)限提升漏洞等。

        比較嚴(yán)重的Android系統(tǒng)漏洞執(zhí)行方便、涉及范圍廣、無需主動(dòng)觸發(fā)、隱蔽性強(qiáng),一旦被黑客利用,造成的損失不可估量。對(duì)于Android系統(tǒng)本身來說,漏洞挖掘是個(gè)持續(xù)的過程,漏洞挖掘得越徹底,系統(tǒng)將修補(bǔ)得越完善。

        4.1.3 內(nèi)存防泄漏

        Android系統(tǒng)每個(gè)版本中都存在內(nèi)存泄漏問題,即應(yīng)用進(jìn)程中一些對(duì)象沒有使用價(jià)值了,但還占據(jù)著內(nèi)存空間,拒絕被GC回收,導(dǎo)致實(shí)際可使用內(nèi)存變小,系統(tǒng)運(yùn)行越來越慢,用戶體驗(yàn)越來越差。內(nèi)存泄漏產(chǎn)生的原因有類的靜態(tài)變量持有大數(shù)據(jù)對(duì)象、資源對(duì)象使用后未關(guān)閉、注冊對(duì)象未反注冊、集合中不用的對(duì)象沒清理、Handler臨時(shí)性等[38]。使用DDMS、MAT工具可查看內(nèi)存使用情況。

        Shahriar等[39]在研究資源對(duì)象導(dǎo)致內(nèi)存泄漏的情況時(shí),編寫Fuzz測試用例,研究應(yīng)用bitmap and imageview、event listener、animation activity、static object、AdView object等對(duì)象時(shí)是否產(chǎn)生內(nèi)存泄漏。而針對(duì)context、內(nèi)部類、數(shù)據(jù)庫操作等其他行為是防內(nèi)存泄漏需要進(jìn)行的進(jìn)一步深入研究。

        4.1.4 系統(tǒng)防ROOT

        Android系統(tǒng)刷機(jī)是將刷機(jī)包中的系統(tǒng)文件寫入ROM存儲(chǔ)區(qū),替換原生系統(tǒng)文件,再次啟動(dòng)時(shí),從ROM中載入最新替換過的系統(tǒng)文件。本質(zhì)就是系統(tǒng)文件的覆蓋和替換操作,會(huì)破壞原有系統(tǒng)的權(quán)限機(jī)制,而來源各異的刷機(jī)包中可能集成了大量的惡意軟件或病毒,留下隱患,因而刷機(jī)要謹(jǐn)慎[40]。

        另一種破壞終端安全機(jī)制的方式是對(duì)終端ROOT,利用操作系統(tǒng)漏洞獲取最高的ROOT管理權(quán)限,任意訪問和修改所有的文件。這種方式的優(yōu)點(diǎn)是用戶可以完全控制終端,缺點(diǎn)是黑客也能夠利用病毒輕而易舉獲得ROOT權(quán)限,導(dǎo)致終端完全暴露出來,可能產(chǎn)生嚴(yán)重后果。Android 5.0版本采用增強(qiáng)SELinux后,常用的ROOT方案已行不通,必須通過刷內(nèi)核的方式,這需要解鎖bootloader,而一旦鎖定bootloader,能夠?qū)崿F(xiàn)防ROOT破解。

        4.2 本地庫和運(yùn)行時(shí)環(huán)境安全

        4.2.1 安全沙箱機(jī)制

        Android 4.4以前的運(yùn)行時(shí)環(huán)境為應(yīng)用程序的正常運(yùn)行提供了核心鏈接庫和Dalvik虛擬環(huán)境,采用沙箱機(jī)制隔離各應(yīng)用程序之間的運(yùn)行環(huán)境。每個(gè)應(yīng)用作為一個(gè)Dalvik虛擬機(jī)實(shí)例獨(dú)立地運(yùn)行在一個(gè)進(jìn)程內(nèi),Android系統(tǒng)為每個(gè)應(yīng)用分配一個(gè)UID,保證應(yīng)用的文件、數(shù)據(jù)相互獨(dú)立存儲(chǔ)。通過設(shè)置sharedUserID,使多個(gè)應(yīng)用程序具備相同的UID,從而共享數(shù)據(jù)和權(quán)限。

        這方面的安全問題主要集中在應(yīng)用之間利用IPC突破沙箱隔離,導(dǎo)致權(quán)限提升、信息泄露、惡意攻擊等。權(quán)限提升是一種很嚴(yán)重的威脅,使未申請(qǐng)權(quán)限的應(yīng)用執(zhí)行授權(quán)操作[41,42],破壞了程序安全運(yùn)行環(huán)境,因而對(duì)Android應(yīng)用沙箱的安全防護(hù)一定程度上體現(xiàn)在對(duì)權(quán)限提升漏洞的檢測和修復(fù),對(duì)權(quán)限提升攻擊的檢測和防護(hù)將在4.3.1節(jié)進(jìn)行詳細(xì)介紹。

        4.2.2 ART機(jī)制

        Android 5.0運(yùn)行時(shí)環(huán)境采用ART機(jī)制,只在應(yīng)用安裝時(shí)進(jìn)行一次預(yù)編譯,將程序語言轉(zhuǎn)化為機(jī)器語言代碼存儲(chǔ)在本地,而Dalvik虛擬機(jī)機(jī)制在應(yīng)用每次編譯時(shí)都要編譯,每次程序運(yùn)行時(shí)都將程序語言轉(zhuǎn)換為機(jī)器語言。因此ART機(jī)制使應(yīng)用的啟動(dòng)和執(zhí)行更加迅速,效率也更高,但是在應(yīng)用安裝時(shí)耗費(fèi)更多時(shí)間預(yù)編譯,運(yùn)行時(shí)占有更多內(nèi)存。如何優(yōu)化ART機(jī)制產(chǎn)生的內(nèi)存問題需要不斷深入研究。

        Demertzis等[43]提出SAME,在ART虛擬機(jī)中分析應(yīng)用程序的類,采用基于BBO的多層感知器,并行運(yùn)行粒子群優(yōu)化(PSO)、蟻群優(yōu)化(ACO)和遺傳算法(GA)等算法,以區(qū)分應(yīng)用是否是惡意。

        4.2.3 組件間安全通信

        Android應(yīng)用由Activity、Service、Broadcast Receiver和Content Provider 4類組件組成,組件之間通過Intent進(jìn)行交互,隱式Intent容易引發(fā)惡意調(diào)用、惡意發(fā)送廣播、activity劫持、惡意service啟動(dòng)等[44]問題。這方面的研究方案主要集中在基于上下文感知環(huán)境構(gòu)建組件調(diào)用圖檢測數(shù)據(jù)泄露的路徑。

        Enck等[45]指出組件間通信缺少對(duì)信息流的監(jiān)控,存在信息泄露的風(fēng)險(xiǎn)。傅建明等[46]針對(duì)國內(nèi)流行的應(yīng)用程序研究采用靜態(tài)分析方法構(gòu)建其CFG(控制流程圖)、FCG (函數(shù)調(diào)用圖)和CCG(組件調(diào)用圖)主要檢測隱式Intent可能引發(fā)組件劫持、信息泄露和組件的權(quán)限泄露問題。

        確保組件間安全通信可采取的措施有最小化組件暴露、設(shè)置組件訪問權(quán)限、檢查暴露組件的代碼等。

        4.3 應(yīng)用程序框架安全

        4.3.1 權(quán)限機(jī)制

        1) 保護(hù)ROOT權(quán)限

        ROOT是Android平臺(tái)中唯一的超級(jí)用戶,管控所有系統(tǒng)資源,據(jù)iiMedia Research統(tǒng)計(jì),近30%的用戶對(duì)自己的手機(jī)終端ROOT,利用獲取的ROOT權(quán)限卸載預(yù)裝的應(yīng)用程序,再安裝第三方軟件管理權(quán)限、系統(tǒng)文件等,這無疑為病毒非法入侵打開了方便之門。

        Android 4.4之前,用戶無法自主管理應(yīng)用程序的使用權(quán)限,除非使用第三方軟件,而Android 4.4之后,Android原生系統(tǒng)集成了SuperUser權(quán)限管理程序,這對(duì)Android權(quán)限管理具有里程碑式的意義。

        ROOT權(quán)限對(duì)于系統(tǒng)資源的安全保護(hù)具有很重要的作用,輕易不要對(duì)終端設(shè)備ROOT,而在未破解ROOT的情況下,如何更深層次地調(diào)配系統(tǒng)資源并保護(hù)系統(tǒng)安全穩(wěn)定地運(yùn)行是需要考慮的。

        2) 應(yīng)用程序權(quán)限增強(qiáng)管理

        Android 4.3以前的原生系統(tǒng)對(duì)權(quán)限的管理是粗粒度的,即應(yīng)用在安裝時(shí),權(quán)限之間的關(guān)聯(lián)關(guān)系沒有明確告知用戶,用戶設(shè)置全接受或全否定應(yīng)用申請(qǐng)的權(quán)限;在應(yīng)用運(yùn)行過程中對(duì)權(quán)限的使用零監(jiān)控。Google開發(fā)文檔提供了詳細(xì)的開發(fā)資料,卻對(duì)權(quán)限的使用說明涉及較少[47],這導(dǎo)致開發(fā)者對(duì)權(quán)限申請(qǐng)過度。權(quán)限的使用貫穿應(yīng)用程序的全生命周期,在應(yīng)用的開發(fā)、安裝和應(yīng)用過程中都占據(jù)重要地位,Android權(quán)限機(jī)制實(shí)現(xiàn)如圖2所示。

        ①權(quán)限提升監(jiān)測和防護(hù)

        應(yīng)用運(yùn)行時(shí),一些應(yīng)用在自身沒有申請(qǐng)權(quán)限的情況下,通過其他應(yīng)用獲取權(quán)限進(jìn)而獲得訪問資源的資格,這種行為稱為權(quán)限提升。Schlegel等[48]提出一種手機(jī)木馬Soundcomber,本身不具有操作音頻的權(quán)限,卻通過其他應(yīng)用的權(quán)限獲取音頻數(shù)據(jù),這是利用Android系統(tǒng)隱蔽通道的典型例子。Davi等[41]展示了在沒有短信權(quán)限的情況下如何發(fā)送短信。Grace等[49]提出權(quán)限提升檢測工具Woodpecker,檢測出有些軟件不遵守權(quán)限機(jī)制,將保護(hù)隱私數(shù)據(jù)的權(quán)限暴露給其他應(yīng)用。

        在權(quán)限提升防護(hù)方面,研究成果包括Saint[50]、XMAndroid[51]、Quire[52]、IPC Inspection[47]、CHEX[53]、DroidAlarm[54]等。權(quán)限管理增強(qiáng)框架Saint[51],對(duì)應(yīng)用APK文件增加權(quán)限和策略信息,安裝時(shí)規(guī)定具體權(quán)限被授予給其他應(yīng)用的情況,運(yùn)行時(shí)檢查組件間的通信,一旦應(yīng)用之間權(quán)限驗(yàn)證失敗,就無法交互。安全監(jiān)控框架XMAndroid[52],利用Android系統(tǒng)的隱蔽通信通道,構(gòu)建無向圖,動(dòng)態(tài)監(jiān)視應(yīng)用之間的權(quán)限使用情況,通過設(shè)置安全策略,阻斷應(yīng)用之間利用間接獲得的權(quán)限執(zhí)行未經(jīng)授權(quán)的操作。各方案比較如表1所示。

        表1 權(quán)限提升監(jiān)測和防護(hù)方案比較

        抗混淆副攻擊系統(tǒng)Quire[53],跟蹤IPC和RPC的調(diào)用鏈,每個(gè)應(yīng)用向被調(diào)用者傳播其調(diào)用鏈的上下文以驗(yàn)證權(quán)限是否符合,并驗(yàn)證接收到的數(shù)據(jù)是否可信,如果不符合則拒絕。防跨應(yīng)用越權(quán)操作的IPC Inspection機(jī)制[47],通過分析IPC傳遞事件信息和權(quán)限信息,將被調(diào)用應(yīng)用的有效權(quán)限減少為調(diào)用與被調(diào)用應(yīng)用權(quán)限的交集,防止應(yīng)用發(fā)起混淆代理人攻擊導(dǎo)致惡意入侵。同Quire一樣,IPC Inspection也無法檢測所有的通過隱蔽通道傳輸?shù)男畔⒘鳌?/p>

        組件漏洞檢測方式CHEX[54],靜態(tài)分析應(yīng)用的數(shù)據(jù)流檢測應(yīng)用是否存在權(quán)限泄露、未授權(quán)數(shù)據(jù)訪問、Intent欺騙等問題,檢測應(yīng)用是否存在組件劫持漏洞,對(duì)Android系統(tǒng)開銷低。

        權(quán)限提升發(fā)現(xiàn)工具DroidAlarm[55],靜態(tài)提取惡意應(yīng)用的所有公開接口及聲明敏感權(quán)限信息,采用數(shù)據(jù)流跟蹤算法發(fā)現(xiàn)權(quán)限提升問題。

        權(quán)限提升攻擊檢測的方式有多種,主要都是通過監(jiān)控應(yīng)用間的權(quán)限使用情況,發(fā)現(xiàn)越權(quán)非法訪問資源的威脅。就靜態(tài)檢測方式而言,如果應(yīng)用受加殼、混淆保護(hù)等,將無法有效檢測;而動(dòng)態(tài)檢測能夠?qū)崟r(shí)檢測應(yīng)用進(jìn)程間的通信,是比較有效的檢測方式。

        ②權(quán)限模型擴(kuò)展和增強(qiáng)

        對(duì)原生Android權(quán)限框架進(jìn)行擴(kuò)展,應(yīng)用安裝時(shí),設(shè)置策略檢測權(quán)限并修改權(quán)限申請(qǐng),應(yīng)用運(yùn)行時(shí),跟蹤并操作權(quán)限使用情況,從各方面增強(qiáng)權(quán)限機(jī)制,從根本上改善權(quán)限管理。

        Enck等[55]提出輕量級(jí)應(yīng)用檢驗(yàn)工具Kirin安全規(guī)則,設(shè)置靜態(tài)權(quán)限組合策略,應(yīng)用安裝時(shí),對(duì)申請(qǐng)的權(quán)限進(jìn)行檢測,若違反策略則認(rèn)定應(yīng)用為惡意應(yīng)用并拒絕安裝,以防止隱私泄露。這在業(yè)界是首次提出的權(quán)限增強(qiáng)方案。

        Nauman等[56]提出權(quán)限策略擴(kuò)展框架Apex,在應(yīng)用安裝時(shí),檢測應(yīng)用權(quán)限,允許用戶有選擇地授予權(quán)限,并且還能夠自定義限制資源的使用情況。

        Felt等[57]提出權(quán)限靜態(tài)檢測工具Stowaway,根據(jù)API與權(quán)限的映射關(guān)系,得到應(yīng)用申請(qǐng)的最小權(quán)限集,并用其檢查應(yīng)用過度申請(qǐng)權(quán)限的情況。之后,有很多學(xué)者基于此方案進(jìn)行了擴(kuò)展和深入的研究。Geneiatakis等[58]結(jié)合運(yùn)行時(shí)的信息和靜態(tài)分析的數(shù)據(jù)判斷應(yīng)用是否過度申請(qǐng)權(quán)限,是否遵從了最小權(quán)限集原則,這種方式不用修改應(yīng)用的源碼也不用修改Android系統(tǒng)的底層代碼,最大程度上減少對(duì)系統(tǒng)運(yùn)行的影響。

        Holavanalli等[59]提出權(quán)限擴(kuò)展機(jī)制Flow Permissions,根據(jù)數(shù)據(jù)與敏感API的對(duì)應(yīng)關(guān)系,利用工具Blue Seal靜態(tài)分析應(yīng)用,顯示應(yīng)用的權(quán)限關(guān)聯(lián)信息及與其他應(yīng)用間暗含的權(quán)限關(guān)聯(lián)信息,提醒用戶可能存在的威脅。

        Barrera等[60]用自組織映射方法分析應(yīng)用程序,研究權(quán)限的設(shè)置粒度是否合理及權(quán)限間的關(guān)系,并提出權(quán)限增強(qiáng)安全模型以識(shí)別頻繁使用的權(quán)限。

        以上這些權(quán)限管理方案都能從某個(gè)角度發(fā)現(xiàn)問題并起到保護(hù)作用,但又都各有局限性,如果將XMAndroid、Kirin、Saint、Quire等方案結(jié)合,將更全面地保護(hù)Android系統(tǒng)的安全。

        隨著Android原生系統(tǒng)的不斷改進(jìn)及安全防護(hù)軟件的升級(jí),權(quán)限管理的粒度越來越細(xì)化,支持用戶自主管理應(yīng)用的權(quán)限,根據(jù)需要主動(dòng)打開或禁用具體應(yīng)用的指定權(quán)限,如用戶可禁用聊天軟件開啟攝像頭的權(quán)限或者禁用網(wǎng)銀軟件讀取通訊錄的權(quán)限等。

        4.3.2 簽名機(jī)制

        應(yīng)用的簽名信息表明APK安裝程序的來源。在Android平臺(tái)上,所有的程序都必須有簽名,否則不允許安裝。簽名是保護(hù)應(yīng)用的第一道防線,比較簽名信息可判斷應(yīng)用是否重打包。

        2013年先后爆出3個(gè)MasterKey簽名漏洞,惡意應(yīng)用能夠繞過數(shù)字簽名校驗(yàn)過程,在不被用戶察覺的情況下進(jìn)入Android系統(tǒng),達(dá)到惡意目的。漏洞爆出之后,百度安全實(shí)驗(yàn)室很快提出DroidSploit解決方案,保護(hù)Android免受此漏洞的威脅。

        實(shí)際上,Android應(yīng)用的簽名機(jī)制還不夠完善,簽名的時(shí)間戳和文件路徑能夠被隨意修改,這致使攻擊者能夠繞過驗(yàn)簽過程,存在惡意應(yīng)用能夠輕易安裝的隱患。

        5 Android應(yīng)用安全

        Android平臺(tái)上的應(yīng)用安全研究主要集中在通過靜態(tài)分析和動(dòng)態(tài)分析的方式[61]提取應(yīng)用的特征,判斷是否是惡意應(yīng)用,確保應(yīng)用的安全運(yùn)行。Android惡意應(yīng)用的研究方法和理論主要借鑒PC上的經(jīng)驗(yàn),困難之處在于Android平臺(tái)硬件資源相對(duì)匱乏,對(duì)性能消耗過大。現(xiàn)在正逐漸針對(duì)Android平臺(tái)的特性,借助云計(jì)算等計(jì)算優(yōu)勢檢測安全。

        5.1 惡意應(yīng)用靜態(tài)檢測

        靜態(tài)檢測就是使用反編譯等逆向工程手段,分析代碼文件,提取應(yīng)用程序的特征,如簽名、權(quán)限、敏感API調(diào)用等,再通過樣本比對(duì)或機(jī)器學(xué)習(xí)的方式,判定是否惡意。靜態(tài)檢測方式簡單且效率高,但是無法分析混淆、加密等惡意代碼。

        5.1.1 逆向工程

        靜態(tài)分析的第一步就是逆向工程。一種方式是采用dex2jar工具將DEX反編譯成Java源碼,采用AXMLPrinter2工具處理AndroidManifest.xml文件,采用jd-gui工具查看Java源碼,提取表征應(yīng)用的特征信息。另一種方式是使用APKtool和Smali,將APK文件逆向成Smali文件[62]。其他反編譯工具還包括Dexdump、Dedexer、androguard、IDA PRO等。

        Enck等[63]提出Dalvik反編譯器Ded,將DEX文件反編譯成Java文件,再對(duì)應(yīng)用進(jìn)行控制流、數(shù)據(jù)流、數(shù)據(jù)結(jié)構(gòu)和語義分析,發(fā)現(xiàn)其漏洞和威脅。

        5.1.2 應(yīng)用特征提取和分析

        逆向工程之后得到可讀的Java或者Smali代碼文件,再基于語義從文件中提取能代表應(yīng)用的特征,如Intent、簽名、API函數(shù)、類、常量、權(quán)限、組件等,通過分析這些特征,判斷是否是惡意應(yīng)用[64]。

        Shabtai等[65]直接從APK文件中提取應(yīng)用的APK、XML和DEX文件信息,再使用機(jī)器學(xué)習(xí)算法自動(dòng)化區(qū)分應(yīng)用的類別。

        AndroidManifest.xml中是APK文件中最重要的一個(gè)文件,描述了應(yīng)用實(shí)現(xiàn)的類、權(quán)限、組件、簽名、各種被處理的數(shù)據(jù)和啟動(dòng)信息等。解析該文件中的信息標(biāo)簽,可以在一定程度上判定是否是惡意應(yīng)用。這方面的研究成果來自Sarma[66]、Sato[67]、Wu[68]、Weichselbaum[69]等。

        以權(quán)限為判斷特征,分析申請(qǐng)的權(quán)限組合,或者設(shè)置Kirin安全規(guī)則[55],或者將權(quán)限與API調(diào)用合并起來作為特征構(gòu)建高維特征向量[13],或者基于權(quán)限的行為路徑[70],都可以對(duì)應(yīng)用進(jìn)行安全檢測。

        函數(shù)調(diào)用能夠反映應(yīng)用的行為,Strace是Android平臺(tái)上的系統(tǒng)調(diào)用跟蹤器,顯示其他進(jìn)程的系統(tǒng)調(diào)用信息,包括參數(shù)及返回值;Androguard是Google 提供的靜態(tài)分析工具,將APK文件中的DEX文件、類、方法等都映射為python對(duì)象,用于惡意軟件檢測和惡意評(píng)估,分析過程可視化;使用PScout工具[71],分析API函數(shù)調(diào)用與權(quán)限檢查的情況,構(gòu)建函數(shù)調(diào)用圖,形成各個(gè)API函數(shù)的權(quán)限映射關(guān)系;Aurasium[72]在應(yīng)用程序中嵌入跟蹤代碼,截獲程序的系統(tǒng)調(diào)用實(shí)現(xiàn)對(duì)短信、終端信息、網(wǎng)絡(luò)等資源使用的監(jiān)測;基于語義學(xué)的DroidSIFT原型系統(tǒng)[73],提取應(yīng)用的API,構(gòu)建基于加權(quán)上下文的API調(diào)用依賴圖,并引入應(yīng)用的相似性來判定變種惡意應(yīng)用或0Day應(yīng)用。

        利用Intent傳遞消息可以被嗅探、篡改或竊取,惡意程序借助Intent偽造、注入惡意消息使得用戶數(shù)據(jù)被污染。Chin提出[44]Comdroid,根據(jù)Intent分析應(yīng)用,警告存在的漏洞。Arzt等[74]提出污點(diǎn)分析系統(tǒng)FlowDroid,實(shí)現(xiàn)對(duì)應(yīng)用信息流的管理。

        簽名能夠判斷應(yīng)用,Hu等[75]提出使用命令從DEX文件中提取簽名信息作為訓(xùn)練集,再采用字符串相近算法提取簽名信息以檢測惡意應(yīng)用,有較高的檢測效率和準(zhǔn)確度。

        使用單一特征分析應(yīng)用存在漏檢和誤檢的情況,可考慮采用多類特征綜合分析的方式。通過動(dòng)態(tài)和靜態(tài)分析應(yīng)用,提取權(quán)限、組件、敏感API、行為調(diào)用序列等特征,對(duì)各類特征分別選取最優(yōu)的基礎(chǔ)分類算法,得到惡意應(yīng)用綜合判定結(jié)果。

        5.1.3 機(jī)器學(xué)習(xí)智能檢測

        機(jī)器學(xué)習(xí)具有大規(guī)模數(shù)據(jù)處理能力,能在相似的數(shù)據(jù)結(jié)構(gòu)中做出對(duì)目標(biāo)的判斷。在對(duì)大量Android應(yīng)用進(jìn)行惡意判定時(shí),引入機(jī)器學(xué)習(xí)算法對(duì)應(yīng)用進(jìn)行智能分析是非常合適的,常用機(jī)器學(xué)習(xí)算法包括樸素貝葉斯(NB, naive Bayes)、決策樹(DT, decision tree)、-最近鄰(KNN,-nearest neighbor)、支持向量機(jī)(SVM, support vector machine)、-means等。早在20年前,就有專家學(xué)者基于機(jī)器學(xué)習(xí)的各種算法對(duì)惡意代碼和惡意應(yīng)用進(jìn)行檢測,而在Android應(yīng)用檢測方面,也已經(jīng)有很多嘗試。Android機(jī)器學(xué)習(xí)惡意應(yīng)用檢測結(jié)構(gòu)如圖3所示。

        Schmidt等[76]采用CART、prim和KNN算法通過靜態(tài)分析對(duì)DEX文件中的調(diào)用函數(shù)進(jìn)行機(jī)器學(xué)習(xí);Wu等[68]提出DroidMat,以權(quán)限、Intent、API為特征,使用-means和EM聚類算法對(duì)惡意應(yīng)用行為建模再采用KNN和NB分類算法判定惡意應(yīng)用,有較高的執(zhí)行效率和可擴(kuò)展性;以API調(diào)用和權(quán)限為特征,Peiravian等[13]使用SVM、CART和Bagging 3種機(jī)器學(xué)習(xí)方法,Gates等[77]采用基于正則邏輯回歸的概率判別模型,檢測應(yīng)用分類;而Yerima[27]等運(yùn)用NB方法對(duì)Android惡意軟件進(jìn)行分類。

        在對(duì)上述機(jī)器學(xué)習(xí)算法綜述的基礎(chǔ)上,進(jìn)一步總結(jié)出各主要算法的特點(diǎn)和優(yōu)缺點(diǎn),如表2所示。

        利用機(jī)器學(xué)習(xí)歸納出已知應(yīng)用的類別,有效預(yù)測未知的惡意代碼。目前,基于機(jī)器學(xué)習(xí)的檢測技術(shù)可以去人工化,提高應(yīng)用分析的效率,有很廣的應(yīng)用前景,但是這種方式嚴(yán)重依賴于提取的應(yīng)用特征和應(yīng)用樣本的質(zhì)量,工業(yè)應(yīng)用時(shí),往往根據(jù)不同的應(yīng)用場景,調(diào)用不同的機(jī)器學(xué)習(xí)算法,而且其復(fù)雜度和準(zhǔn)確率都待改善,這將成為未來惡意檢測研究的重點(diǎn)。

        表2 機(jī)器學(xué)習(xí)算法的特點(diǎn)和優(yōu)缺點(diǎn)

        5.1.4 重打包檢測

        對(duì)應(yīng)用逆向工程之后,若繼續(xù)將應(yīng)用安裝到智能終端上,就需要對(duì)其重打包,重打包的應(yīng)用很可能攜帶惡意代碼,對(duì)此,檢測應(yīng)用是否重打包意義非凡。先后有專家學(xué)者提出檢測工具DroidMOSS[78]、DNADroid[79]、Juxtapp[80]和SCSdroid[81],分別采用模糊散列算法、構(gòu)造應(yīng)用程序類中的方法構(gòu)造程序依賴圖、特征散列算法,計(jì)算軟件市場上的應(yīng)用軟件與官方市場中的軟件的相似性,當(dāng)相似性大于一個(gè)閾值時(shí),則判定為重打包軟件,用戶安裝需謹(jǐn)慎。

        Zhou等[78]提出DroidMoss,比較官方應(yīng)用與第三方應(yīng)用市場上應(yīng)用的開發(fā)者信息和代碼指令的散列值,判斷應(yīng)用是否被二次打包。缺點(diǎn)是難以獲得所有的官方原始應(yīng)用,因而檢測覆蓋面較小。Lin等[81]提出SCSdroid,提取線程的公共系統(tǒng)調(diào)用序列,根據(jù)公共調(diào)用序列可以檢測應(yīng)用,而不用獲取原始應(yīng)用,實(shí)驗(yàn)證明這種方式的正確率高達(dá)95%。

        5.2 惡意應(yīng)用動(dòng)態(tài)檢測

        對(duì)惡意應(yīng)用動(dòng)態(tài)檢測,提取應(yīng)用運(yùn)行中的關(guān)鍵數(shù)據(jù)為特征,通過異常檢測或機(jī)器學(xué)習(xí)的方式,實(shí)現(xiàn)智能化的檢測分析。動(dòng)態(tài)檢測繞過了靜態(tài)方法遇到的代碼混淆和加密等問題,對(duì)于新出現(xiàn)的未知惡意軟件也能保持較好的檢測準(zhǔn)確率。但是實(shí)時(shí)性不高,提取特征耗費(fèi)時(shí)間較長,消耗較多系統(tǒng)資源,而且很難覆蓋到應(yīng)用的全部執(zhí)行路線,比較難發(fā)現(xiàn)特定條件下發(fā)生的惡意行為。

        隨著云計(jì)算技術(shù)的不斷發(fā)展,通過云計(jì)算對(duì)惡意樣本進(jìn)行維護(hù),有效解決樣本庫內(nèi)容不斷增加的難題,突破了樣本庫維護(hù)的局限,還把應(yīng)用智能分類的核心計(jì)算部分移到了云端,降低了終端上的開銷。

        基于云計(jì)算的Android應(yīng)用動(dòng)態(tài)檢測,首先在手機(jī)終端捕獲應(yīng)用行為,提取特征,傳輸?shù)皆贫?,再在云端?duì)應(yīng)用行為進(jìn)行異常檢測,再將檢測結(jié)果返回到Android終端,由終端對(duì)異常行為做成阻塞或者中斷處理[82,83],Android動(dòng)態(tài)行為檢測架構(gòu)如圖4所示。

        應(yīng)用動(dòng)態(tài)分析可監(jiān)控軟件安裝和卸載、聯(lián)網(wǎng)、收發(fā)短信息、后臺(tái)撥打和接聽電話、操作數(shù)據(jù)庫、權(quán)限檢查、文件接收和發(fā)送、攝像頭操作等行為??刹捎?種方式獲取行為信息:第1種是靜態(tài)注入技術(shù),對(duì)應(yīng)用程序反編譯嵌入監(jiān)控API調(diào)用的源碼,再編譯和重打包,將修改后的應(yīng)用安裝到Android平臺(tái),應(yīng)用運(yùn)行時(shí),監(jiān)控代碼便能實(shí)現(xiàn)對(duì)行為的跟蹤;第2種是API Hook技術(shù),在Android平臺(tái)上對(duì)敏感API進(jìn)行Hook,一旦系統(tǒng)或應(yīng)用對(duì)特定的API調(diào)用時(shí),可截獲調(diào)用函數(shù),將其重定向到代理函數(shù),在代理函數(shù)中獲取該API調(diào)用的詳細(xì)信息,即可獲取行為信息;第3種是進(jìn)程捕獲,提取關(guān)鍵行為的特征。如何實(shí)現(xiàn)應(yīng)用行為監(jiān)控,如何提取行為特征,研究者們開展了廣泛而深入的研究。

        Xu等[72]提出Aurasium,在應(yīng)用程序中嵌入跟蹤程序,截獲應(yīng)用程序的系統(tǒng)調(diào)用,檢測短信、設(shè)備信息、網(wǎng)絡(luò)等資源的使用情況。

        Bl?sing等[84]提出應(yīng)用沙箱AASandbox,在隔離的環(huán)境中對(duì)應(yīng)用進(jìn)行靜態(tài)和動(dòng)態(tài)分析,檢測惡意應(yīng)用;Shabtai等[14]提出基于行為的惡意軟件檢測系統(tǒng)Andromaly,收集Android平臺(tái)運(yùn)行各種特征,通過-means、DT、NB、LR等機(jī)器學(xué)習(xí)算法對(duì)收集到的數(shù)據(jù)分類,并比較了各種算法的準(zhǔn)確性。

        Burguera等[83]提出Crowdroid,在Android端使用strace追蹤器采集行為數(shù)據(jù),傳到分析服務(wù)端,利用分類器訓(xùn)練這些行為樣本,使用KNN算法判斷應(yīng)用是否含有惡意行。

        另外,還有其他幾種應(yīng)用動(dòng)態(tài)分析工具,如Droidbox、SandDroid等。它們都能夠捕獲網(wǎng)絡(luò)數(shù)據(jù),包括監(jiān)控網(wǎng)絡(luò)、文件、短信泄露的信息等,是具有一定成熟度的動(dòng)態(tài)分析工具。

        5.3 應(yīng)用安全加固

        隨著Android應(yīng)用逆向工程的快速發(fā)展,對(duì)應(yīng)用破解變得輕而易舉,對(duì)應(yīng)用開發(fā)者來說,辛苦開發(fā)出的成果可能被惡意者植入病毒、篡改、劫持等非法利用,把良性應(yīng)用變成惡意應(yīng)用被用戶拋棄,對(duì)用戶來說,安裝被反編譯過的應(yīng)用存在很大風(fēng)險(xiǎn)。鑒于此,應(yīng)用的安全加固必不可少。

        應(yīng)用安全加固主要采用的技術(shù)是防反編譯,禁止調(diào)用gdb、gcore從內(nèi)存中截取DEX文件以防內(nèi)存竊取,禁止向進(jìn)程中動(dòng)態(tài)注入代碼以防動(dòng)態(tài)跟蹤,校驗(yàn)APK完整性以防惡意篡改等,且加固后的程序不影響其運(yùn)行效率和用戶體驗(yàn)。

        比較流行的應(yīng)用防反編譯的方式有代碼混淆、加殼等,但最有效的是NDK開發(fā)應(yīng)用,編寫Native代碼,即使應(yīng)用被反編譯,也無法得到C/C++代碼,導(dǎo)致無法閱讀和修改全部應(yīng)用代碼。另外,還可以通過代碼加密技術(shù)對(duì)NDK應(yīng)用加殼,使程序破解難上加難,但這也對(duì)開發(fā)人員的技能要求很高。

        總之,對(duì)Android應(yīng)用程序的保護(hù)方式有很多種,而真正保證安全,還是要尋求更可靠的加密方式,希望在這方面引起學(xué)者足夠的重視及更多的投入。

        5.4 應(yīng)用安全評(píng)估

        惡意應(yīng)用產(chǎn)生的威脅程度需要通過建立評(píng)估體系和評(píng)估標(biāo)準(zhǔn),從多個(gè)角度進(jìn)行評(píng)價(jià),最后綜合得到一個(gè)結(jié)果,反映出應(yīng)用的脆弱性和風(fēng)險(xiǎn)。

        Grace等[61]將惡意應(yīng)用的風(fēng)險(xiǎn)等級(jí)分為3級(jí):高級(jí)、中級(jí)和低級(jí)。根據(jù)利用系統(tǒng)漏洞跳過合法權(quán)限破壞系統(tǒng)判定為高級(jí)風(fēng)險(xiǎn),根據(jù)造成用戶隱私泄露和經(jīng)濟(jì)損失判定為中級(jí)風(fēng)險(xiǎn),根據(jù)收集設(shè)備信息和用戶信息判定為低級(jí)風(fēng)險(xiǎn)。通過這3種風(fēng)險(xiǎn)判別,發(fā)現(xiàn)了大量0Day漏洞。MWR InfoSecurity提出應(yīng)用安全評(píng)估框架Drozer,通過分析應(yīng)用程序與Dalvik、其他應(yīng)用及底層操作系統(tǒng)的交互數(shù)據(jù),發(fā)現(xiàn)漏洞。

        Wang等[17]提出基于權(quán)限的安全風(fēng)險(xiǎn)評(píng)估框架DroidRisk,將應(yīng)用的風(fēng)險(xiǎn)量化,并且能夠提示潛在的惡意行為,但是一旦應(yīng)用申請(qǐng)的權(quán)限過度,需要考慮其他因素使用其他方式來評(píng)估風(fēng)險(xiǎn)。

        對(duì)Android應(yīng)用風(fēng)險(xiǎn)評(píng)估,幫助用戶了解惡意軟件可能存在的攻擊路徑,指導(dǎo)使用者更好地保護(hù)他們的隱私數(shù)據(jù),以規(guī)避可能受到的攻擊。

        6 Android隱私數(shù)據(jù)安全保護(hù)

        6.1 隱私數(shù)據(jù)偽造和跟蹤

        隱私數(shù)據(jù)偽造是保護(hù)數(shù)據(jù)的一種方式,當(dāng)應(yīng)用被惡意訪問時(shí),為了保護(hù)自己的隱私數(shù)據(jù)不被泄露,提供虛假的數(shù)據(jù)。在這方面的研究成果主要有TISSA[85]、MockDroid[18]和AppFence[86]等。他們都能夠?qū)ν馓峁﹤卧斓臄?shù)據(jù),包括位置信息、設(shè)備ID、聯(lián)系人信息等。

        對(duì)敏感數(shù)據(jù)做污點(diǎn)標(biāo)記是隱私數(shù)據(jù)保護(hù)的另一種方式,跟蹤數(shù)據(jù)的流向,記錄到日志,為數(shù)據(jù)溯源提供依據(jù)。在這方面第一個(gè)研究成果是Enck等[19]提出的污點(diǎn)標(biāo)記系統(tǒng)TaintDroid,此后,有多名學(xué)者在此基礎(chǔ)上進(jìn)一步研究,提出了各種污點(diǎn)數(shù)據(jù)跟蹤系統(tǒng),如AndroidLeaks[87]、Kynoid[88]等,都能夠跟蹤數(shù)據(jù)去向,分析應(yīng)用程序當(dāng)中是否存在隱私泄露行為。

        6.2 數(shù)據(jù)加密

        加密是對(duì)數(shù)據(jù)保護(hù)最直接的一種保護(hù)方式,Android平臺(tái)上的數(shù)據(jù)加密主要體現(xiàn)在對(duì)短信、通訊錄、通話記錄等SQLite數(shù)據(jù)庫中的數(shù)據(jù)加密,以及對(duì)圖片、音頻、視頻等文件數(shù)據(jù)加密。通常采用透明加解密方式,即加解密過程都在后臺(tái)進(jìn)行,用戶感知不到,且不改變用戶對(duì)數(shù)據(jù)的使用習(xí)慣,這就對(duì)加解密在效率、安全性、開發(fā)難度、移植性上達(dá)到平衡有較高要求。

        對(duì)SQLite數(shù)據(jù)庫數(shù)據(jù)加密的方式一般有2種,一種是在數(shù)據(jù)入庫、出庫時(shí)進(jìn)行加解密操作,但是不利于加密信息的檢索;另一種是對(duì)整個(gè)數(shù)據(jù)庫文件加解密,普遍采用這種方式,通常采用AES或DES等加密算法。

        Wang等[89]實(shí)現(xiàn)基于FUSE的文件透明加密系統(tǒng)EncFS,用戶創(chuàng)建目錄作為文件系統(tǒng),所有寫入該系統(tǒng)的文件都會(huì)被加密。該系統(tǒng)支持AES和Blowfish加密算法,經(jīng)過不斷優(yōu)化,加密文件系統(tǒng)對(duì)原系統(tǒng)的性能影響不大。

        Android 5.0采用全盤加密來提升安全性能,所有寫入硬盤的數(shù)據(jù)均需要先加密,所有讀取的數(shù)據(jù)都需要先解密。不足之處在于,大多數(shù)硬件設(shè)備上的閃存并沒有自帶加密標(biāo)準(zhǔn),在開啟全盤加密后,使機(jī)器性能大幅下降。然而,可通過采用更快的閃存芯片和更快的文件系統(tǒng)如F2FS、優(yōu)化SoC等方式進(jìn)行改進(jìn)。

        6.3 數(shù)據(jù)云備份

        云服務(wù)已經(jīng)成為智能終端的另一標(biāo)配,基于云計(jì)算將智能終端上的數(shù)據(jù)遠(yuǎn)程備份到云端,包括通訊錄、短信、圖片等個(gè)人隱私數(shù)據(jù)。日常時(shí)將終端設(shè)備上的數(shù)據(jù)同步到云端,當(dāng)終端數(shù)據(jù)遭受損失時(shí)通過網(wǎng)絡(luò)恢復(fù)數(shù)據(jù)到本地,或者實(shí)現(xiàn)多個(gè)設(shè)備間的數(shù)據(jù)統(tǒng)一。同時(shí),云備份還具備定時(shí)增量備份、加密存儲(chǔ)、數(shù)據(jù)管理和恢復(fù)等功能。

        為了保證數(shù)據(jù)在網(wǎng)絡(luò)傳輸過程中不被竊聽、非法攔截,智能終端與云端備份服務(wù)器通信主要是基于SSL協(xié)議,提供雙向認(rèn)證、數(shù)據(jù)加密、數(shù)據(jù)完整性驗(yàn)證等服務(wù)。Android對(duì)SSL協(xié)議有很好的支持,用到的相關(guān)類在javax.net.ssl、java.security及javax.crypto包中。

        6.4 數(shù)字版權(quán)保護(hù)

        數(shù)字版權(quán)保護(hù)(DRM, digital right management)從技術(shù)上防止數(shù)字內(nèi)容被非法復(fù)制、篡改,只有授權(quán)后才能合法使用,達(dá)到數(shù)字內(nèi)容版權(quán)保護(hù)的目的。Android平臺(tái)集成了OMA DRM 2.0的部分功能,提供了一個(gè)可擴(kuò)展的數(shù)字版權(quán)管理框架,Marlin DRM也是廣受認(rèn)可的內(nèi)容保護(hù)及內(nèi)容管理的開放標(biāo)準(zhǔn),不同的DRM解決方案可通過Plugin方式集成到Android系統(tǒng)中,允許應(yīng)用程序管理和保護(hù)自己的數(shù)據(jù)。

        隨著研究的發(fā)展,PC上成熟的DRM技術(shù),如基于時(shí)間/空間約束的DRM授權(quán)模型、添加水印的音視頻DRM技術(shù)、構(gòu)建智能終端共享域并設(shè)計(jì)域內(nèi)DRM安全授權(quán)模式、基于角色的可信數(shù)字版權(quán)安全許可授權(quán)模型等,在Android平臺(tái)上的擴(kuò)展使用是DRM發(fā)展的又一重要方向。

        6.5 安全支付

        隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,移動(dòng)支付在生活中扮演越來越重要的角色,而基于NFC技術(shù)的Android支付平臺(tái),更加即時(shí)、安全和快捷地實(shí)現(xiàn)近場付款及遠(yuǎn)程支付[90,91]。

        由于支付與用戶的經(jīng)濟(jì)利益切實(shí)相關(guān),其安全不容忽視,對(duì)于移動(dòng)支付安全來說,隱患主要來自3個(gè)方面:一是外部釣魚網(wǎng)站和惡意入侵,二是不安全無線網(wǎng)絡(luò)接入環(huán)境,三是終端安裝了惡意的應(yīng)用。采取的安全防護(hù)類型包括以下5種:病毒掃描,保證手機(jī)不被感染;運(yùn)行環(huán)境監(jiān)測,監(jiān)視應(yīng)用的正常運(yùn)行;無線Wi-Fi網(wǎng)絡(luò)掃描,阻止惡意攻擊;短信驗(yàn)證和密碼保護(hù)保障支付安全;分辨釣魚網(wǎng)站,避免賬戶信息泄露。

        7 趨勢和展望

        Android智能終端安全保護(hù)相關(guān)技術(shù)經(jīng)過專家學(xué)者的不懈付出,已經(jīng)取得了顯著的成績,而全能有效地解決實(shí)際應(yīng)用的成果還亟待出現(xiàn),因此,針對(duì)Android安全的研究還將會(huì)是一項(xiàng)持久艱巨的任務(wù),主要可能圍繞以下幾個(gè)方面展開。

        1) 構(gòu)建通用的Android內(nèi)核安全增強(qiáng)框架,及時(shí)發(fā)掘系統(tǒng)漏洞,增強(qiáng)對(duì)系統(tǒng)的監(jiān)控能力;隔離系統(tǒng)內(nèi)核層和應(yīng)用程序框架層,減少病毒對(duì)系統(tǒng)內(nèi)核的侵害;細(xì)粒度應(yīng)用權(quán)限設(shè)置,增強(qiáng)用戶對(duì)權(quán)限管理的參與性。

        2) 構(gòu)建輕量級(jí)的Android動(dòng)態(tài)惡意應(yīng)用檢測模型,建立行為模式,針對(duì)應(yīng)用當(dāng)前運(yùn)行狀態(tài),檢測出潛在的威脅,并實(shí)現(xiàn)對(duì)應(yīng)用進(jìn)行安全風(fēng)險(xiǎn)評(píng)估,實(shí)時(shí)展示評(píng)估結(jié)果,及時(shí)給出安全預(yù)警,增強(qiáng)用戶使用各種應(yīng)用軟件的安全性。

        3) 構(gòu)建高效的大規(guī)模惡意應(yīng)用檢測系統(tǒng),針對(duì)層出不窮、數(shù)量龐大的惡意應(yīng)用,提取應(yīng)用特征,并進(jìn)行特征優(yōu)化選擇,再基于機(jī)器學(xué)習(xí)算法,智能化地對(duì)惡意應(yīng)用檢測,不斷改進(jìn)檢測算法,提高檢測的準(zhǔn)度、精度和效率,杜絕惡意應(yīng)用的傳播擴(kuò)散。

        4) 構(gòu)建全面的Android移動(dòng)終端隱私數(shù)據(jù)保護(hù)系統(tǒng),針對(duì)短信、通訊錄等數(shù)據(jù)庫數(shù)據(jù)及圖片、音視頻等文件數(shù)據(jù),加密保護(hù)隱私數(shù)據(jù)的內(nèi)容,驗(yàn)證隱私數(shù)據(jù)訪問的身份,限制隱私數(shù)據(jù)使用的方式,跟蹤記錄隱私數(shù)據(jù)的流向,通過多種手段,全面有效地保護(hù)隱私數(shù)據(jù)的安全。

        5) 構(gòu)建基于云計(jì)算和大數(shù)據(jù)的Android智能終端防護(hù)體系,整合云計(jì)算、大數(shù)據(jù)資源在數(shù)據(jù)處理和存儲(chǔ)方面的優(yōu)勢,彌補(bǔ)Android計(jì)算資源的不足,通過大數(shù)據(jù)挖掘及時(shí)檢測Android病毒,通過云服務(wù)實(shí)時(shí)維護(hù)Android終端信息和數(shù)據(jù)、查殺病毒、防盜防騙等,拓寬智能終端安全防護(hù)的體系。

        8 結(jié)束語

        Android的開放性和流行性吸引了眾多攻擊者和安全研究者的關(guān)注,攻擊者利用系統(tǒng)漏洞、入侵應(yīng)用軟件、病毒植入等各種可能的手段試圖獲取隱私數(shù)據(jù)以謀求非法利益。安全防護(hù)者針對(duì)各種威脅,從終端設(shè)備本身的硬件安全、所處網(wǎng)絡(luò)環(huán)境的安全到Android系統(tǒng)的內(nèi)核增強(qiáng)、權(quán)限細(xì)粒度增強(qiáng)管理,到應(yīng)用靜態(tài)提取特征、應(yīng)用簽名、動(dòng)態(tài)行為智能分析,再到隱私數(shù)據(jù)加密、備份、版權(quán)保護(hù)、支付安全等各個(gè)方面提出防范措施,讓破壞分子無處遁形。本文主要對(duì)Android的設(shè)備安全、網(wǎng)絡(luò)安全、系統(tǒng)安全、應(yīng)用安全和數(shù)據(jù)安全進(jìn)行了分析研究,并展望了未來的發(fā)展方向,希望對(duì)后續(xù)的研究有所幫助。

        [1] 360互聯(lián)網(wǎng)安全中心.2015年手機(jī)安全狀況報(bào)告[R]. 2015. 360 Internet Security Center. 2015 mobile security status report [R]. 2015.

        [2] 騰訊移動(dòng)安全實(shí)驗(yàn)室. 2015年上半年手機(jī)安全報(bào)告[R]. 2015. Tencent Mobile Security Laboratory. Mobile security report in the first half of 2015 [R]. 2015.

        [3] FAUKI P, BHAMAL A, LAXMI V, et al. Android security: a survey of issues, malware penetration, and defenses[J]. Communications Surveys & Tutorials, 2015, 17(2): 998-1022.

        [4] SEO S H, GUPTA A, MOHAMED S A, et al. Detecting mobile malware threats to homeland security through static analysis[J]. Journal of Network and Computer Applications, 2014, 38(2): 43-53.

        [5] 馮登國, 孫悅, 張陽. 信息安全體系結(jié)構(gòu)[M]. 北京: 清華大學(xué)出版社, 2008: 1-14. FENG D G, SUN Y, ZHANG Y. Information security architecture[M]. Beijing: Tsinghua University Press, 2008: 1-14.

        [6] JANG J, W J Y, MOHAISEN A, et al. Andro-AutoPsy: anti-malware system based on similarity matching of malware and malware creator-centric information[J]. Digital Investigation, 2015, 14(6): 17-35.

        [7] NIKOLAY E. Android security internals: an in-depth guide to android's security architecture[M]. No Starch Press, 2014.

        [8] STEFFEN L, MATTHIAS L. Android security, pitfalls and lessons learned[C]//The 28th International Symposium on Computer and Information Sciences. Berlin, Germany, c2013: 409-417.

        [9] KARI K, ELENA R, JAN ERIK E, et al. Old, new, borrowed, blue: a perspective on the evolution of mobile platform security architectures[C]//The First ACM Conference on Data and Application Security and Privacy. New York, USA, c2011: 13-24.

        [10] LUBKE R, SCHUSTER D, SCHILL A. A framework for the development of mobile social software on Android[C]//Third International Conference, MobiCASE 2011. Los Angeles, CA, USA, c2011: 207-225.

        [11] HONG Y R, DONGSOO K. Security enhancement of smart phones for enterprises by applying mobile VPN technologies[C]//Computational Science and Its Applications(ICCSA). Santander, Spain, c2011: 506-517.

        [12] KORKMAZ I, METIN S K , GUREK A, et al. A cloud based and Android supported scalable home automation system[J]. Computers & Electrical Engineering, 2015, 43(5): 112-128.

        [13] PEIRAVIAN, N. ZHU X Q. Machine learning for Android malware detection using permission and API calls[C]//IEEE 25th International Conference on Tools with Artificial Intelligence (ICTAI). Herndon, VA, c2013: 300-305.

        [14] SHABTAI A, KANONOY U, ELOVICI Y, et al. Andromaly: a behavioral malware detection framework for android devices[J]. Journal of Intelligent Information Systems, 2012, 38(1): 161-190.

        [15] SCHREUDERS Z C, MCGILL T, PAYNE C. The state of the art of application restrictions and sandboxes: a survey of application- oriented access controls and their shortfalls[J]. Computers & Security, 2013, 32(2): 219-241

        [16] JUNFENG X, LI Z , DONG L, et al. Recommendable schemes of anti-decompilation for android applications[C]//2015 Ninth International Conference on Frontier of Computer Science and Technology (FCST). Dalian, c2015: 84-90.

        [17] WANG Y, ZHENG J, SUN C, et al. Quantitative security risk assessment of Android permissions and applications[C]//27th Annual IFIP WG 11.3 Conference. Newark, NJ, USA, c2013:226-241.

        [18] BERESFORS A R, RICE A, SKEHIN N, et al. MockDroid:trading privacy for application functionality on smartphones[C]//The 12th Workshop on Mobile Computing Systems and Applications. New York, USA, c2011: 49-54.

        [19] ENCK W, GILBERT P, CHUN, et al. Taintdroid: an information-flow tracking system for realtime privacy monitoring on smartphones[C]// The 9th USENIX Conference on Operating Systems Design and Implementation. Berkeley, CA, USA, c2010: 1-6.

        [20] TEUFL P, THOMAS Z, CHRISTOF S. Mobile device encryption systems[C]//8th IFIP TC 11 International Conference. Auckland, New Zealand, c2013: 203-216.

        [21] HUANG T Y, WANG H, PENG C L, et al. A new remote desktop approach with mobile devices: design and implementation[M]//Ubiquitous Computing Application and Wireless Sensor, 2015, 331: 305-321.

        [22] NAKAO K. NAKAMOTO Y. Toward remote service invocation in Android[C]//Ubiquitous Intelligence & Computing and 9th International Conference on Autonomic & Trusted Computing (UIC/ATC). Fukuoka, c2012: 612-617.

        [23] BELKEDE M, GULHANE V, BAJAI P. Biometric mechanism for enhanced security of online transaction on Android system: a design approach[C]//Advanced Communication Technology (ICACT). Pyeong Chang, c2012: 1193-1197.

        [24] KHANDELWAL A, MOHAPTRA A K. An insight into the security issues and their solutions for android phones[C]//Computing for Sustainable Global Development (INDIACom). New Delhi, c2015: 106-109.

        [25] MA L, TEYMORIAN A Y, CHENG X. A hybrid access point protection framework for commodity Wi-Fi networks[C]//The 27th Conference on Computer Communications. Phoenix, AZ, c2008: 1894-1902.

        [26] WANG D, ZHOU M. A framework to test reliability and security of Wi-Fi device[C]//Electronic Packaging Technology (ICEPT). Chengdu, c2014: 953-958.

        [27] YERIMA S Y, SEZER S, MCWILLIAN G. Analysis of Bayesian classification-based approaches for Android malware detection[J]. Information Security, IET, 2013, 8(1): 121-129.

        [28] SHINA S, ANITHA R, NATARAJAN V. Android based malware detection using a multifeature collaborative decision fusion approach[J]. Neurocomputing, 2015, 151(3): 905-912.

        [29] FELT A P, WAGNER D. Phishing on mobile devices[M]. NA, 2011.

        [30] BOTTAZZI G, CASALICCHIO E, CINGOLANI D, et al. MP-Shield: a framework for phishing detection in mobile devices[C]//2015 IEEE International Conference on Computer and Information Technology, Ubiquitous Computing and Communications; Dependable, Autonomic and Secure Computing, Pervasive Intelligence and Computing (CIT/IUCC/DASC/PICOM). IEEE, c2015: 1977-1983.

        [31] WU L, DU X, WU J. MobiFish: a lightweight anti-phishing scheme for mobile phones[C]//2014 23rd International Conference on Computer Communication and Networks. IEEE, c2014: 1-8.

        [32] HE M, HORNG S J, FAN P, et al. An efficient phishing webpage detector[J]. Expert Systems with Applications, 2011, 38(10): 12018- 12027.

        [33] BASNET R, MUKKAMALA S, SUNG A H. Detection of phishing attacks: a machine learning approach[M]//Soft Computing Applications in Industry. Springer Berlin Heidelberg, 2008: 373-383.

        [34] SHABTAI A, FLEDEL Y, ELOVICI Y. Securing Android-powered mobile devices using SELinux[J]. Security & Privacy, 2010, 8(3): 36-44.

        [35] SMANEY S, CRAIG R. Security enhanced (SE) android: bringing flexible MAC to Android[C]//The 20th Annual Network and Distributed System Security Symposium. Switzerland, c2013: 20-38.

        [36] AVD Android漏洞庫[EB/OL]. http://android.scap.org.cn/avdview.html. AVD Android vulnerability database[EB/OL]. http://android.scap.org.cn/avdview.html

        [37] ZHANG W, CAO C, LIU W, et al. Vulnerability mining techniques in Android platform[J]. CCIS-13, 2013, 52(1391):535-540.

        [38] STIRPARO P, FOVINO I N. KOUNELIS I. Data-in-use leakages from Android memory-test and analysis[C]//Wireless and Mobile Computing. Networking and Communications (WiMob). Lyon, c2013: 701-708.

        [39] SHAHRIAR H, NORTH S, MAWANGI E. Testing of memory leak in Android applications[C]//High-Assurance Systems Engineering (HASE). Miami Beach, FL, c2014: 176-183.

        [40] ALESSANDRO A, ALESSIO M, MAURO M, et al. Breaking and fixing the android launching flow[J]. Computers & Security, 2013, 39: 104-115.

        [41] DAVI L, DMITRIENKO A, SADEGHI A. Privilege escalation attacks on Android[M]//Information Security. Springer Berlin Heidelberg, 2010: 346-360.

        [42] BUGIEL S, DAVI L, DMITRIENKO A, et al. Poster: the quest for security against privilege escalation attacks on Android[C]//The 18th ACM Conference on Computer and Communications Security. ACM, c2011: 741-744.

        [43] DEMERTZIS K, ILIADIS L. SAME: an intelligent anti-malware extension for android ART virtual machine[C]//Computational Collective Intelligence 7th International Conference, ICCCI 2015. Madrid, Spain, c2015: 235-245.

        [44] CHIN E, FELT A P, GREENWOOD K, et al. Analyzing inter-application communication in android[C]//The 9th International Conference on Mobile Systems, Applications, and Services. New York, USA, c2011: 239-252.

        [45] ENCK W, ONGTANG M, MCDANIEL P. Understanding Android security[J]. IEEE Security & Privacy, 2009, 7(1): 50-57.

        [46] 傅建明, 李鵬偉, 易喬. Android組件間通信的安全缺陷靜態(tài)檢測方法[J]. 華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版), 2013, 41: 259-264. FU J M, LI P W, YI Q. A static detection of security detects between inter-components’ communication [J]. Journal of Huazhong University of Science and Technology (Natural Science Edition), 2013, 41: 259-264.

        [47] FANG Z R, HAN W L, LI Y J. Permission based Android security: issues and countermeasures[J]. Computers & Security, 2014, 43(6): 205-218.

        [48] SCHLEGEL R, ZHANG K, ZHOU X, et al. Soundcomber: a stealthy and context-aware sound trojan for smartphones[C]//NDSS. San Diego, California, USA, c2011: 17-33.

        [49] GARCE M, ZHOU Y, WANG Z, et al. Systematic detection of capability leaks in stock Android smartphones[C]//The 19th Network and Distributed System Security Symposium (NDSS 2012). San Diego, CA, c2012.

        [50] ONGTANG M, MCLAUGHLIN S, ENCK W, et al. Semantically rich application-centric security in Android[C]//In ACSAC '09. Computer Security Applications Conference. Honolulu, HI, c2009:340-349.

        [51] BUGIEL S, DAVI L, DMITRIENKO A, et al. XManDroid: a new Android evolution to mitigate privilege escalation attacks[R]. Technical Report TR-2011-04, Technische Universitat Darmstadt. Germany, c2011: 1-17.

        [52] DIETZ M, SHEKHAR S, PISETSKY Y, et al. QUIRE: lightweight provenance for smart phone operating systems[C]//The 20th USENIX Conference on Security. USENIX Association Berkeley, CA, USA, c2011:23.

        [53] LU L, LI Z C, WU Z Y, et al. CHEX: statically vetting android apps for component hijacking vulnerability[C]//ACM Conference on Computer and Communications Security. New York, USA, c2012: 229-240.

        [54] ZHONG Y, XIN Z, MAO B, et al. DroidAlarm: an all-sided static analysis tool for android privilege-escalation malware[C]//The 8th ACM SIGSAC Symposium on Information, Computer and Communications Security. New York, USA, c2013:353-358.

        [55] ENCK W, ONGTANG M, MCDANIEL P. On lightweight mobile phone application certification[C]//ACM Conference on Computer and Communications Security. Chicago, USA, c2009:235-245.

        [56] NAUMAN M, KHAN S, ZHANG X. Apex: extending Android permission model and enforcement with user-defined runtime constraints[C]//The 5th ACM Symposium on Information, Computer and Communications Security. New York, USA, c2010: 328-332.

        [57] FELT A, CHIN E, HANNA S, et al. Android permissions demystified[C]//The 18th ACM Conference on Computer and Communications Security. New York, USA, c2011:627-637.

        [58] GENEIATAKIS D, FOVINO I N, KOUNELIS I, et al. A permission verification approach for android mobile applications[J]. Computers & Security, 2015, 49(3): 192-205.

        [59] HOLAVANALLI S, MANUEL D, NANJUNDASWAMY V, et al. Flow permissions for Android[C]//2013 IEEE/ACM 28th International Conference on Automated Software Engineering (ASE). Silicon Valley, CA, c2013:652-657.

        [60] BARRERA D, KAYACIK H G, OORSCHOT P C, et al. A methodology for empirical analysis of permission-based security models and its application to Android[C]//The 17th ACM Conference on Computer and Communications Security.New York, NY, USA, c2010:627-637.

        [61] GRACE M, ZHOU Y J, ZHANG Q, et al. RiskRanker: scalable and accurate zero-day Android malware detection[C]//The 10th International Conference on Mobile Systems, Applications, and Services (MobiSys). ACM, Lake District, UK, c2012: 281-294.

        [62] ZHENG M, SUN M, LUI J. Droid analytics: a signature based analytic system to collect, extract, analyze and associate Android malware[C]//The 12th IEEE International Conference on Trust Security and Privacy in Computing and Communications. c2013: 163-271.

        [63] ENCK W, OCTEAU D, MCDANIEL P, et al. A study of Android application security[C]//The 20th USENIX Conference on Security. USENIX Association Berkeley, CA, USA, c2011:1175.

        [64] FEIZOLLAH A, ANUAR N B, SALLEH R, et al. A review on feature selection in mobile malware detection review article[J]. Digital Investigation, 2015, 13(6): 22-37.

        [65] SHABTAI A, FLEDEL Y, ELOVICI Y. Automated static code analysis for classifying Android applications using machine learning[C]//The 2010 International Conference on Computational Intelligence and Security(CIS). Nanning, China, c2010:329-333.

        [66] SARMA B P, LI N, GATES C, et al. Android permissions: a perspective combining risks and benefits[C]//The 17th ACM Symposium on Access Control Models and Technologies. New York, USA, c2012:13-22.

        [67] SATO R, CHIBA D, GOTO S. Detecting Android malware by analyzing manifest files[C]//The Asia-Pacific Advanced Network.Tokyo, c2013: 23-31.

        [68] WU D J, MAO C H, WEI T E, et al. DroidMat: Android malware detection through manifest and API calls tracing[C]//Seventh Asia Joint Conference on Information Security (Asia JCIS). Tokyo, c2012:62-69.

        [69] WEICHSELBAUM L, NEUGSCHWANDTNER M, LINDORFOR M,et al. Andrubis: Android malware under the magnifying glass[R]. Vienna University of Technology, 2014. TRI-SECLAB- 0414-001 .

        [70] HOU Y, WANG Z, ZHOU W, et al. Hey, you, get off of my market: detecting malicious apps in official and alternative android markets[C]//The 19th Annual Network and Distributed System Security Symposium(NDSS). San Diego, c2012.

        [71] AU K W Y, ZHOU Y F,HUAGN Z, et al. Pscout: analyzing the android permission specification[C]//The 2012 ACM Conference on Computer and Communications Security. New York, USA, c2012: 217-228.

        [72] XU R, SAIDI H, ANDERSON R. Aurasium: practical policy enforcement for Android application[C]//The 21st USENIX Conference on Security Symposium. USENIX Association Berkeley, CA, USA, c2012:27.

        [73] ZHANG M, DUAN Y, YIN H, et al. Semantics-aware Android malware classi?cation using weighted contextual API dependency graphs[C]//The 2014 ACM SIGSAC Conference on Computer and Communications Security. New York, USA, c2014:1105-1116.

        [74] ARZT S, RASTHOFER S, FRITZ C, et al. FlowDroid: precise context, flow, field, object-sensitive and lifecycle-aware taint analysis for Android apps[C]//The 35th ACM SIGPLAN Conference on Programming Language Design and Implementation. c2014: 259-269.

        [75] HU G, LI T, DONG H, et al. Malicious code detection for Android using instruction signatures[C]//IEEE 8th International Symposium on Service Oriented System Engineering. Oxford, c2014:332-337.

        [76] SCHMIDT A D, BYE R, SCHMIDT H G, et al. Static analysis of executables for collaborative malware detection on Android[C]// IEEE International Conference on Communications. Dresden, c2009: 1-5.

        [77] CEN L,GATES C, et al. A probabilistic discriminative model for Android malware detection with decompiled source code[C]//IEEE Transactions on Dependable and Secure Computing. c2013:1-14.

        [78] ZHOU W, ZHOU Y, JIANG X, et al. Detecting repackaged smartphone applications in third-party android marketplaces[C]//The Second ACM Conference on Data and Application Security and Privacy. New York, USA, c2012: 317-326.

        [79] CRUSSELL J, GIBLER C, CHEN H. Attack of the clones: detecting cloned applications on Android markets[C]//Proceedings of ESORICS. Berlin, Germany, c2012:37-54.

        [80] HANNA S, HUANG L, WU E, et a1. Juxtapp: a scalable system for detecting code reuse among Android applications[C]//The 9th International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment. Berlin, Germany, c2013:62-81.

        [81] LIN Y D, LAI Y C, CHEN C H, et al. Identifying Android malicious repackaged applications by thread-grained system call sequences[J]. Computers & Security, 2013, 39(12): 340-350.

        [82] 文偉平, 梅瑞, 寧戈, 等. Android惡意軟件檢測技術(shù)分析和應(yīng)用研究[J]. 通信學(xué)報(bào), 2014, 35(8): 79-85. WEN W P, MEI R, NING G, et al. Malware detection technology analysis and applied research of android platform[J]. Journal on Communications, 2014, 35(8): 79-85.

        [83] BURGUERA I, ZURATUZA U, et al. Crowdroid: behavior-based malware detection system for Android[C]//The 1st ACM Workshop on Security and Privacy in Smartphones and Mobile Devices. New York, USA, c2011: 15-26.

        [84] BLASING T, BATYUK L, SCHMIDT A D, et al. An Android application sandbox system for suspicious software detection[C]//5th International Conference on Malicious and Unwanted Software (MALWARE). Nancy, Lorraine, c2010: 55-62.

        [85] ZHOU Y J, ZHANG X W,et al. Taming information-stealing smartphone applications(on Android)[C]//The 4th International Conference on Trust and Trustworthy Computing. Berlin, Germany, c2011:93-107.

        [86] HORNYACK P, HAN S, JUNG J, et al. These aren’t the droids you’re looking for: retro?tting android to protect data from imperious applications[C]//The 18th ACM Conference on Computer and Communications Security. New York, USA, c2011: 639-652.

        [87] GIBLER C,CRUSSELL J, ERICKSON J, et al.AndroidLeaks: automatically detecting potential privacy leaks in Android applications on a large scale[C]//The 5th International Conference on Trust and Trustworthy Computing. Berlin, Germany, c2012:291-307.

        [88] SCHRECKLING D, POSEGGA J, et al. Kynoid: real-time enforcement of fine-grained, user-defined, and data-centric security policies for Android[C]//WISTP'12 The 6th IFIP WG 11.2 International Conference on Information Security Theory and Practice. Berlin, Germany, c2012:208-223.

        [89] WANG Z H, MURMURIA R, STAVROU A. Implementing and optimizing an encryption filesystem on Android[C]//The 2012 IEEE 13th International Conference on Mobile Data Management. Washington, DC, USA, c2012: 52-62.

        [90] TAN G W, OOI K B, CHONG S C, et al. NFC mobile credit card: the next frontier of mobile payment[J]. Telematics and Informatics, 2014, 31(2): 292-307.

        [91] 王志強(qiáng), 劉奇旭, 張玉清. Android平臺(tái)NFC應(yīng)用漏洞挖掘技術(shù)研究[J]. 通信學(xué)報(bào), 2014, 35(z2): 118-123. WANG Z Q, LIU Q X, ZHANG Y Q. Research of discovering vulnerabilities of NFC applications on Android platform[J]. Journal on Communications, 2014, 35(z2): 118-123.

        Survey of security for Android smart terminal

        XU Yan-ping1, MA Zhao-feng1, WANG Zhong-hua2, NIU Xin-xin1, YANG Yi-xian1

        (1.Information Security Center, Beijing University of Posts and Telecommunications, Beijing 100876, China; 2. National Computer Network Emergency Response Technical Team/Coordination Center of China (CNCERT/CC), Beijing 100029, China)

        Aiming at the security, the layered security system was constructed. Firstly, the devices safety protection based on remote anti-theft, biometric identity verification and hardware security module was expounded. Secondly, network security referring to the wireless security network, virus propagation killing and anti-phishing was illustrated. Thirdly, the OS safety was introduced from the perspective of system kernel, runtime environment and application framework. Fourthly, application security was showed containing the reverse engineering static analysis, behavior dynamic analysis, safety reinforcement and safety assessment. Fifthly, the privacy data protection was summarized including tracking, encryption and backup. Finally, the future development direction was prospected on the security framework and intelligent behavior analysis.

        Android, device security, network security, system security, application security, data security

        TP309

        A

        10.11959/j.issn.1000-436x.2016127

        2015-10-19;

        2016-02-19

        國家自然科學(xué)基金資助項(xiàng)目(No.61272519);“十二五”國家科技支撐計(jì)劃基金資助項(xiàng)目(No.2012BAH23F00);國家科技支撐計(jì)劃基金資助項(xiàng)目(No.2012BAH45B00)

        The National Natural Science Foundation of China (No.61272519 ), The Twelfth-five National Science and Technology Support Program (No.2012BAH23F00), The National Science and Technology Support Program (No.2012BAH45B00)

        許艷萍(1986-),女,安徽亳州人,北京郵電大學(xué)博士生,主要研究方向?yàn)橐苿?dòng)互聯(lián)網(wǎng)安全、Android智能終端應(yīng)用安全。

        馬兆豐(1974-),男,甘肅鎮(zhèn)原人,博士,北京郵電大學(xué)講師,主要研究方向?yàn)橐苿?dòng)互聯(lián)網(wǎng)安全技術(shù)、云計(jì)算安全技術(shù)、數(shù)字版權(quán)管理。

        王中華(1986-),男,山東聊城人,國家計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心工程師,主要研究方向?yàn)橐苿?dòng)互聯(lián)網(wǎng)安全、網(wǎng)絡(luò)安全攻防演練。

        鈕心忻(1963-),女,浙江湖州人,北京郵電大學(xué)教授、博士生導(dǎo)師,主要研究方向?yàn)閿?shù)字水印、信息隱藏、隱寫分析。

        楊義先(1961-),男,四川鹽廳人,北京郵電大學(xué)教授、博士生導(dǎo)師,主要研究方向?yàn)槊艽a學(xué)、計(jì)算機(jī)網(wǎng)絡(luò)與信息安全。

        猜你喜歡
        檢測
        QC 檢測
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        “幾何圖形”檢測題
        “角”檢測題
        “有理數(shù)的乘除法”檢測題
        “有理數(shù)”檢測題
        “角”檢測題
        “幾何圖形”檢測題
        日本强伦姧人妻一区二区| 音影先锋色天堂av电影妓女久久| 男人的av天堂狠狠操| 亚洲男人免费视频网站| 欧美国产综合欧美视频| 超薄肉色丝袜一区二区| 亚洲无码激情视频在线观看| 国产三级国产精品国产专播| 国产色系视频在线观看| 中国猛少妇色xxxxx| 红杏性无码免费专区| 日韩中文字幕在线丰满| av色综合久久天堂av色综合在| 99re热这里只有精品最新 | 国产影片中文字幕| 久久精品国产亚洲一区二区| 亚洲中文字幕一二区精品自拍| 人人妻人人澡人人爽人人精品av | 99久久久久国产| 亚洲一区二区视频蜜桃| 亚洲男人天堂一区二区| 性激烈的欧美三级视频| 国产aⅴ天堂亚洲国产av| 日本午夜理论一区二区在线观看| 成年性生交大片免费看| 九九久久精品国产| 毛片av中文字幕一区二区| 三级黄色片免费久久久| 久久夜色精品国产| 亚洲电影一区二区| 九九精品国产亚洲av日韩| 免费网站看av片| 成人区视频| 日本一区二区三区在线观看视频| 国产精品久久精品第一页| 欧美日韩中文国产一区| 国产一区二区三区视频大全| 激情亚洲一区国产精品| 夜夜高潮夜夜爽夜夜爱爱| 欧美日一本| 两人前一后地插着她丰满|