四川大學(xué)軟件學(xué)院 朱業(yè)豐
Android是Google于2007年11月5日宣布的基于Linux內(nèi)核的手持終端操作系統(tǒng)的名稱。由于該系統(tǒng)自身具備開放源碼的特征,所以它的安全性能正在成為信息安全領(lǐng)域研究的一個重要課題,也對我們的現(xiàn)實工作有較大借鑒作用。
Android的安全設(shè)計包括以下兩個原則:
(1)在默認情況下,在Android OS平臺下運行的應(yīng)用程序沒有權(quán)限執(zhí)行對其它應(yīng)用程序、操作系統(tǒng)有害的操作。這些操作包括讀/寫用戶的隱私數(shù)據(jù)(例如聯(lián)系方式或e-mail)、讀/寫其它應(yīng)用程序的文件等。
(2)Android應(yīng)用程序的進程是運行在一個安全“沙箱”環(huán)境中。它不能干擾其它應(yīng)用程序,除非它明確聲明權(quán)限。這些權(quán)限請求能夠被不同方式的操作所處理,特別的要基于證書和用戶的提示被自動允許或禁止。而且權(quán)限請求在應(yīng)用程序中被聲明為靜態(tài),所以在此之后在安裝時系統(tǒng)會預(yù)先知道。
根據(jù)Android的安全原則可以知道,Android OS中的數(shù)據(jù)在默認情況下(除系統(tǒng)授權(quán)外)不會被其它程序破壞、讀取、修改、刪除或丟失。如果一個程序需要對其它程序數(shù)據(jù)進行讀取等操作,系統(tǒng)(或者手機用戶)將會在程序安裝階段審核它有無相應(yīng)的權(quán)限。
Android OS在保障數(shù)據(jù)的完整性和機密性基礎(chǔ)上,采用賦予相應(yīng)權(quán)限的方法來保證數(shù)據(jù)可被有效使用,也就是保障了數(shù)據(jù)的可用性。一般程序要對文件(或者系統(tǒng)服務(wù))進行操作,需要三步走——權(quán)限聲明、權(quán)限審核和權(quán)限確認。
針對上述Android安全性能現(xiàn)狀,從下面幾個方面進行研究分析:
由于Android系統(tǒng)平臺自身開源性的特征,它已成為現(xiàn)今黑客重點攻擊目標。黑客針對現(xiàn)有漏洞,已開發(fā)出眾多漏洞利用工具,其中竊取用戶隱私、惡意扣費等行為的工具和木馬類型的惡意軟件占多數(shù)。此類病毒會自動聯(lián)網(wǎng),在系統(tǒng)后臺啟動惡意進程,竊取手機中的隱私內(nèi)容,直接威脅用戶的安全。
現(xiàn)階段專業(yè)從事手機系統(tǒng)防護和手機病毒查殺的公司比較少,公眾手機防病毒意識不強,Android系統(tǒng)作為基于Linux系統(tǒng)的智能手機平臺,其病毒防護或防火墻功能較弱,目前基于Android平臺的病毒變種也正呈集群式爆發(fā)。
Android手機系統(tǒng)自身的驗證機制相對薄弱,只能保證對下載程序的穩(wěn)定性、數(shù)據(jù)完整性進行檢測,無法驗證Android手機軟件的來源,以及對安裝后程序可能存在的行為進行判定,故無法對安全性進行保證。另外,第三方應(yīng)用商店因為準入門檻較低,監(jiān)管相對寬松,使不少盜版/克隆應(yīng)用混跡在正規(guī)軟件應(yīng)用里。在這些發(fā)布盜版應(yīng)用的人中,有部分居心不良者存在,通過這些應(yīng)用傳播針對Android系統(tǒng)的木馬病毒。
通過對android安全機制分析,android的安全防護不應(yīng)僅僅局限于單一攻擊方式,需從硬件到應(yīng)用程序各個層次進行防護。以下將從設(shè)置高級權(quán)限和基于主機的入侵檢測框架(hids),selinux在android上的實施三個方面探討android的安全解決方案。
通過AndroidManifest.xml文件可設(shè)置高級權(quán)限,以限制訪問系統(tǒng)的所有組件或使用應(yīng)用程序。所有的這些請求都包含在所需要的組件中的android∶permission屬性,命名這個權(quán)限可以控制訪問此組件。
Activity權(quán)限限制能夠啟動與Activity權(quán)限相關(guān)聯(lián)的組件或應(yīng)用程序。如果調(diào)用者沒有請求權(quán)限,那么會為調(diào)用拋出一個安全異常。
Service權(quán)限限制啟動、綁定關(guān)聯(lián)服務(wù)的組件或應(yīng)用程序。如果調(diào)用者沒有請求權(quán)限,那么會為調(diào)用拋出一個安全異常。
基于主機的入侵檢測系統(tǒng)包括異常檢測和基于知識的時間抽象方法。
異常檢測是指入侵檢測系統(tǒng)框架持續(xù)采樣各種各樣的系統(tǒng)參數(shù)指標,采用機器學(xué)習(xí)和時序推理的方法分析采集的數(shù)據(jù)。通過收集系統(tǒng)參數(shù)指標,與已知的惡意軟件引發(fā)的系統(tǒng)參數(shù)指標作對比,檢測相同點,進而發(fā)現(xiàn)先前未曾遇到的新惡意軟件。
基于知識的時間抽象方法是指結(jié)合時間抽象知識基礎(chǔ),持續(xù)測量數(shù)據(jù)和事件,從面向時間的原始的安全數(shù)據(jù)抽象得出高層次的有意義的概念和模式。
selinux是基于“域—類型”模型的用于強制訪問控制的安全系統(tǒng)。這是一種混合的安全性策略,其邏輯和通用接口一起封裝在與操作系統(tǒng)獨立的安全服務(wù)器中,通過替換安全服務(wù)器,可以支持兩種不同的安全策略:目標策略,嚴格策略。目標策略僅針對部分系統(tǒng)網(wǎng)絡(luò)服務(wù)和進程執(zhí)行selinux策略。嚴格策略是執(zhí)行全局的默認策略,此時幾乎所有的網(wǎng)絡(luò)服務(wù)都受控。
通過以上的介紹和分析,為盡可能避免android手機受到安全攻擊,手機使用者應(yīng)養(yǎng)成良好的使用智能手機的習(xí)慣,避免手機信息的泄露。在安裝軟件和游戲的時候,須仔細查看安裝過程中的軟件權(quán)限需求列表,在平時不安裝軟件的時候,在工具->權(quán)限管理中,可以按“菜單鍵”,在彈出的列表中關(guān)閉root權(quán)限。隨著手機朝著智能化方向的發(fā)展,android智能手機操作系統(tǒng)越來越被人們所關(guān)注。android會在應(yīng)用中不可避免出現(xiàn)大量針對其的攻擊行為和惡意軟件,但是攻防演繹是一個呈雙螺旋增長過程。隨著時間的推移,android平臺的漏洞會越來越少,系統(tǒng)將會越來越安全可靠。
[1]北京網(wǎng)秦天下科技有限公司.2011年第一季度全球Android手機安全報告[R].
[2]Android中文網(wǎng)(androidcn.net).What is Android.http://sdk.androidin.com/what-is-android.html.
[3]羅伯特萊莫斯.Android手機安全性成難題.麻省理工科技創(chuàng)業(yè).2011(3).
[4]朱桂英.Android開發(fā)應(yīng)用從入門到精通[M].中國鐵道出版社.
[5]劉磊,劉克勝.Symbian操作系統(tǒng)下手機病毒免疫技術(shù)研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2011(11).
[6]楊杰.基于Linux的強制訪問控制研究[J].電腦與電信,2010(11).