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