賈能
摘 要:隨著移動互聯(lián)網(wǎng)的發(fā)展,Android智能手機在市場上占據(jù)著很大的份額。文章首先分析了Android現(xiàn)有的安全機制沙箱模型和數(shù)字證書,然后提出Android系統(tǒng)存在的安全問題,最后從系統(tǒng)開發(fā)者和用戶2個角度設(shè)計安全策略來對現(xiàn)有的安全策略進行改進。
關(guān)鍵詞:Android;智能手機;信息安全;安全策略
1 Android概述
Android是基于Linux內(nèi)核源代碼開放的軟件平臺和操作系統(tǒng),主要應(yīng)用于智能手機和其他移動設(shè)備。它由谷歌和開放手機聯(lián)盟開發(fā)和共同領(lǐng)導(dǎo)。谷歌在2007年11月5號宣布,經(jīng)過2年的迅猛發(fā)展,終于把谷歌在網(wǎng)絡(luò)應(yīng)用上的成功擴展到個人移動設(shè)施上。Android目前是市場上占有率最大的移動操作系統(tǒng),三星、魅族、小米等著名手機品牌都使用它作為默認的操作系統(tǒng)。但是,這項技術(shù)也是一把雙刃劍,給人們帶來方便的同時也帶來了許多信息安全問題,造成了不少用戶的隱私泄露和財產(chǎn)損失。
2 Android主要安全機制
2.1 沙箱隔離模型
在Linux操作系統(tǒng)中,一個給定用戶由一個用戶ID來標(biāo)識。在Android系統(tǒng)中,一個應(yīng)用程序由一個用戶ID來標(biāo)識。在應(yīng)用市場下載完應(yīng)用程序進行安裝時,應(yīng)用程序會被系統(tǒng)指派一個用戶ID,只要應(yīng)用程序一直安裝在該手機設(shè)備上,用戶ID就不會改變。權(quán)限是限制或者容許應(yīng)用程序(不是用戶)訪問設(shè)備資源的資格。Android“沙箱”的實質(zhì)是完成應(yīng)用程序和進程之間的完全隔離,就是在默認情況下,應(yīng)用程序?qū)ο到y(tǒng)資源或其他應(yīng)用程序資源是沒有訪問權(quán)限的。每個應(yīng)用程序?qū)⑼ㄟ^系統(tǒng)獲得固定和唯一的uid,該uid還有一個與此相對應(yīng)的內(nèi)核層進程uid。同時,系統(tǒng)也會為應(yīng)用程序的資源設(shè)置正確的權(quán)限,只有擁有相同uid的應(yīng)用程序才能訪問它們。
由圖1可知,2個不同的APP具備不同的uid,各自運行在一個相對獨立的沙箱中,彼此相互隔離,互不干擾,訪問、使用自己沙箱內(nèi)的資源。
2.2 數(shù)字證書
在Android系統(tǒng)中,一切已安裝的應(yīng)用程序必須具有數(shù)字證書,這個數(shù)字證書是用來確認APP和APP的作者之間信賴關(guān)系的橋梁。裝有Android系統(tǒng)的手機設(shè)備是不會安裝沒有數(shù)字證書的APP的,因為這很不安全。數(shù)字證書有2種模式:發(fā)布模式和調(diào)試模式。密鑰工具在命令行模式可以被用來產(chǎn)生一個數(shù)字證書,而Jarsigner可以被用來為APK進行數(shù)字簽名。只有采用同一包的名稱,并且使用相同數(shù)字證書的應(yīng)用程序才被認為是相同的應(yīng)用程序。設(shè)置應(yīng)用程序之間通訊的權(quán)限和升級應(yīng)用是數(shù)字證書的最大用處,沒有數(shù)字證書或者數(shù)字證書損壞是無法升級應(yīng)用的。
3 Android安全問題
雖然Android開發(fā)人員為系統(tǒng)提供了很多安全保護機制,但它仍存在很多安全問題,給手機用戶的隱私安全帶來極大的威脅。
3.1 數(shù)據(jù)存儲安全問題
外部存儲區(qū)域(SD卡)以及內(nèi)部存儲區(qū)域(NAND閃存)共同組成Android軟件的存儲區(qū)域。對于存儲在外部的文件來講沒有讀取和寫入的權(quán)限管理,因此所有的應(yīng)用程序都可以添加、刪除、查詢、修改保存在外部存儲上的任一文件。關(guān)于數(shù)據(jù)存儲可能會有以下一些問題:將隱私數(shù)據(jù)和系統(tǒng)數(shù)據(jù)直接明文保存在外部存儲上,那么攻擊者可以通過一些工具或者寫的程序?qū)⑦@些數(shù)據(jù)和信息讀取出來,然后傳送到特定的服務(wù)器上,隱私信息因此而泄露;將軟件運行依賴的數(shù)據(jù)和配置文件存儲在外部(SD卡)存儲區(qū)域里,這些配置文件或數(shù)據(jù)可能會被攻擊者修改,以實現(xiàn)他們想要控制該軟件操作的目的。例如,把登錄需要用的服務(wù)器列表保存在外部存儲區(qū)域,攻擊者作為第三方參與其中,將登錄連接發(fā)送給特定的服務(wù)器,這可能造成會話劫持或賬號泄露。
3.2 網(wǎng)絡(luò)通信安全問題
安卓智能手機使用用戶通常使用WIFI來進行網(wǎng)絡(luò)通信。WiFi并不總是可靠而沒有風(fēng)險的,特別是弱加密網(wǎng)絡(luò)或公共網(wǎng)絡(luò),虛假WiFi甚至?xí)I取支付賬戶、手機品牌模型信息、自拍照片、電子郵件賬戶密碼和其他各類隱私數(shù)據(jù)。在這種情況下,網(wǎng)絡(luò)流量可能會被攻擊者監(jiān)控。另外,在Android系統(tǒng)中,攻擊者取得root賬戶后,可以獲得最高權(quán)限,擁有至高無上的地位,因而還能夠監(jiān)聽網(wǎng)絡(luò)數(shù)據(jù),進行會話劫持,把惡意數(shù)據(jù)插入到普通的數(shù)據(jù)包中去。攻擊者也可以向連有虛假WiFi的終端設(shè)備發(fā)送帶有病毒的頁面或者郵件。假如這個帶有病毒的文件被用戶打開了,那么該用戶的設(shè)備就可能會被植入木馬程序,感染木馬病毒,手機信息被攻擊者竊取。還有一種方法就是給應(yīng)用程序或網(wǎng)站種植病毒程序, 當(dāng)對程序進行下載后,可能就已經(jīng)中了病毒。
3.3 不安全的密碼和認證策略
很多軟件是不會直接把密碼保存在數(shù)據(jù)庫中的,而是采用各種加密方法對密碼進行加密后存儲在本地,然而攻擊者通過各種工具和軟件,可以對安卓軟件進行反編譯和反匯編。攻擊者能夠用這種方法來了解加密方法和編碼參數(shù)。
另一個問題是使用IMEI(國際移動設(shè)備身份碼)或者是IMSI(國際移動用戶識別碼)作為唯一的認證憑據(jù)。這2個編碼被用來唯一認證移動設(shè)備和移動電話卡。假如使用國際移動設(shè)備身份碼或國際移動用戶識別碼作為唯一的用戶憑證,一些攻擊者可能假冒用戶來竊取用戶本來的信息。第一,應(yīng)用程序獲取這2個編碼不需要有特殊的權(quán)限,用*#06#這個命令就可以調(diào)出。第二,得到移動設(shè)備身份碼和移動用戶識別碼后,黑客有多種辦法來創(chuàng)建服務(wù)器和用戶之間的偽通信。因而,如果利用國際移動設(shè)備身份碼和國際移動用戶識別碼作為唯一的身份驗證憑據(jù),服務(wù)器中原用戶的各種數(shù)據(jù)和賬就很可能被黑客竊取,造成信息泄露。
4 安全策略改進
以上問題大多是由于Android目前主要的訪問控制類型——任意訪問控制(DAC)和用戶不當(dāng)?shù)氖褂昧?xí)慣造成造成,因此從系統(tǒng)開發(fā)者和用戶2個角度設(shè)計了安全策略進行改進。
4.1 系統(tǒng)開發(fā)者:強制訪問控制(MAC)
強制訪問控制是一個基于規(guī)則的多層次的訪問控制策略,這個“強制”指的是主客體之間的訪問由系統(tǒng)來控制,而不是由主體或者客體來授權(quán)。這種控制策略由系統(tǒng)將系統(tǒng)中的數(shù)據(jù)和用戶按密級來劃分。在強制訪問控制下,主體和客體都由系統(tǒng)指定了固定的安全屬性和安全標(biāo)簽。在實施訪問控制時,決定該主體能否訪問該客體的關(guān)鍵要素是客體的安全標(biāo)簽和安全等級是否符合相關(guān)的訪問原則。MAC主要有2項訪問規(guī)則:
(1)保密性規(guī)則:主體s讀客體o,僅當(dāng)。(下讀);主體s寫客體o,僅當(dāng)。(上寫)。
(2)完整性規(guī)則:主體s讀客體o,僅當(dāng)。(上讀);主體s寫客體o,僅當(dāng)。(下寫)。
在以上公式中,s表示主體,o表示客體,l則表示主客體級別。
4.2 用戶使用習(xí)慣
(1)用戶應(yīng)從正規(guī)、安全的渠道下載各類APP和升級包。(2)安裝一些正規(guī)的安全監(jiān)管軟件對系統(tǒng)進行監(jiān)測。(3)開機使用密碼或者指紋識別,而且密碼最好要有一定的強度。(4)不要輕易刷機,刷機需要提供ROOT賬戶,ROOT賬戶是安卓系統(tǒng)中的一個超級管理員用戶賬戶,它可以訪問系統(tǒng)中的所有客體和資源。然而為了維護系統(tǒng)的穩(wěn)定性和安全性,一般情況下,ROOT權(quán)限是不開放的。因此刷機很可能造成手機信息泄露和權(quán)限的轉(zhuǎn)移。(5)及時更新系統(tǒng)和APP,防止BUG對系統(tǒng)安全造成不良影響。(6)不要隨便打開發(fā)信人不明的郵件和一些網(wǎng)站,注意網(wǎng)站的域名,防止釣魚。
5 結(jié)語
如今,智能手機在人們的日常生活的方方面面都發(fā)揮著重要的作用,Android手機又在智能手機中占據(jù)著重要一席。無論是手機內(nèi)部的安全漏洞還是外部的攻擊都使各種手機信息泄露事件層出不窮。系統(tǒng)開發(fā)者應(yīng)該設(shè)計出更加安全有效的策略來保障用戶安全,而用戶本身也應(yīng)該時刻注意自己的隱私信息,讓移動互聯(lián)網(wǎng)更好地為人民服務(wù)。
[參考文獻]
[1]袁志堅,王春平,陳融,等.Android平臺安全威脅及其應(yīng)對策略[J].計算機技術(shù)與發(fā)展,2013(9):110-113.
[2]張毓森,慎健.安全操作系統(tǒng)研究[J].解放軍理工大學(xué)學(xué)報:自然科學(xué)版,2004(3):1-4.
The Information Security Analysis and Strategy Improvement of AndroidMobile Phone
Jia Neng
(Zhongnan University of Economics and Law, Wuhan 430073, China)
Abstract: With the development of mobile Internet, mobile phones using Androidsystem occupy a large share in the market. First of all, this paper analyzes sandbox model and digital certificate which are the existing security mechanisms of Androidsystem. Secondly, security problems in the Androidsystem have been put forward. Finally, security strategies are designed from two angles of system developers and users to improve the existing security strategy.
Key words: Android; mobile phone; information security; security strategy