《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > Android平臺(tái)安全機(jī)制探析
Android平臺(tái)安全機(jī)制探析
2015年微型機(jī)與應(yīng)用第3期
池 云
(遼寧行政學(xué)院,遼寧 沈陽(yáng) 110161)
摘要: 隨著Android系統(tǒng)在各移動(dòng)終端中的廣泛應(yīng)用,系統(tǒng)的安全尤為重要,。從Android平臺(tái)架構(gòu)及存在的安全隱患出發(fā),,分析了Android平臺(tái)的安全機(jī)制,提出了更有效的安全解決方案,。
Abstract:
Key words :

  摘  要: 隨著Android系統(tǒng)在各移動(dòng)終端中的廣泛應(yīng)用,,系統(tǒng)的安全尤為重要。從Android平臺(tái)架構(gòu)及存在的安全隱患出發(fā),,分析了Android平臺(tái)的安全機(jī)制,,提出了更有效的安全解決方案

  關(guān)鍵詞: Android,;安全機(jī)制,;安全隱患;解決方案

0 引言

  隨著移動(dòng)終端的廣泛應(yīng)用,,Android操作系統(tǒng)走入人們的生活,,成為眾多操作系統(tǒng)中最受歡迎的操作系統(tǒng),由于Android是一個(gè)開(kāi)放的系統(tǒng),,在給人們提供便利的同時(shí),,也產(chǎn)生了許多安全隱患,故系統(tǒng)的安全尤為重要,。本文從Android平臺(tái)架構(gòu)及存在的安全隱患出發(fā),,分析了Android平臺(tái)的安全機(jī)制,提出了更有效的安全解決方案,。

1 Android平臺(tái)架構(gòu)

  Android是一種應(yīng)用于便攜設(shè)備的操作系統(tǒng),,它是基于Linux的開(kāi)放系統(tǒng)。其系統(tǒng)框架采用了分層的形式,,從下至上分為4個(gè)部分:Linux內(nèi)核層,、系統(tǒng)運(yùn)行庫(kù)層、應(yīng)用程序框架層和應(yīng)用程序?qū)覽1]。Android系統(tǒng)結(jié)構(gòu)圖如圖1所示,。

001.jpg

 ?。?)Linux內(nèi)核層:處于最底層,其基于Linux內(nèi)核,,主要功能是為Android系統(tǒng)提供如管理進(jìn)程,、內(nèi)存、安全,、驅(qū)動(dòng)和網(wǎng)絡(luò)等核心系統(tǒng)服務(wù),。

  (2)系統(tǒng)運(yùn)行庫(kù)層:是Linux內(nèi)核層和應(yīng)用程序框架層的中間層,,它包括功能豐富的C/C++庫(kù)和Android Runtime[2],。Android Runtime是Android應(yīng)用程序運(yùn)行環(huán)境,所有Android應(yīng)用程序運(yùn)行在彼此獨(dú)立的Dalvik虛擬機(jī)上[3],,Dalvik虛擬機(jī)對(duì)應(yīng)用程序起到保護(hù)作用,,使之免受破壞。

 ?。?)應(yīng)用程序框架層:程序員可以快速地在此層進(jìn)行應(yīng)用程序的開(kāi)發(fā),。因?yàn)樗峁┝藨?yīng)用程序的API框架,并提供了程序數(shù)據(jù)共享及調(diào)用機(jī)制,。

 ?。?)應(yīng)用程序?qū)樱菏桥c用戶交互層,Android系統(tǒng)提供一系列采用Java語(yǔ)言編寫(xiě)的應(yīng)用程序,,例如:瀏覽器,、日歷、電子郵件,、地圖,、SMS等,方便用戶下載使用,。

2 Android平臺(tái)安全隱患

  Android是一個(gè)開(kāi)放的系統(tǒng),,提供免費(fèi)開(kāi)放的源代碼,共任何人使用,,這樣就給攻擊者可乘之機(jī),,他們可以很容易修改源代碼或找到源代碼的漏洞,從而惡意攻擊系統(tǒng),。下面列舉幾個(gè)常見(jiàn)的安全隱患,。

  2.1 惡意軟件侵入

  目前,Android系統(tǒng)安全的主要威脅是惡意軟件的侵入[4],。惡意軟件種類繁多,如:扣費(fèi)類軟件,、Rom內(nèi)置軟件,、消耗流量軟件及隱私竊取類軟件等,。它們的入侵方式多種多樣,可以通過(guò)發(fā)送短/彩信,、撥打電話,、藍(lán)牙、WiFi,、Internet網(wǎng)絡(luò)連接等實(shí)現(xiàn),。

  2.2 系統(tǒng)Root權(quán)限的非法獲取

  Android系統(tǒng)安全的重大威脅是Root權(quán)限的非法獲取。攻擊者通過(guò)系統(tǒng)漏洞或刷機(jī)等,,獲得系統(tǒng)的Root權(quán)限(即最高管理員權(quán)限),,這樣就可以方便地對(duì)系統(tǒng)數(shù)據(jù)和文件進(jìn)行任意的修改。

  2.3 用戶安全意識(shí)薄弱

  用戶在自己安裝應(yīng)用軟件時(shí),,對(duì)惡意程序無(wú)法辨別,,安全意識(shí)薄弱,任意下載安裝,,給惡意程序提供了可乘之機(jī),。同時(shí),用戶為更輕松,、方便地使用手機(jī),,往往主動(dòng)選擇Root手機(jī),這樣也會(huì)造成病毒侵入,、數(shù)據(jù)暴露和系統(tǒng)不穩(wěn)定等,。

3 Android安全機(jī)制分析

  由于Android是一個(gè)開(kāi)放的系統(tǒng),因此要求有更強(qiáng)的安全機(jī)制加以保障,。Android繼承了原有的Linux安全機(jī)制,,同時(shí)對(duì)其加以創(chuàng)新,設(shè)計(jì)了特有的Android安全機(jī)制,,這樣大大提高了Android系統(tǒng)的安全性,。

  3.1 Linux安全機(jī)制

  3.1.1 POSIX User

  各應(yīng)用程序在移動(dòng)設(shè)備上安裝時(shí),Android系統(tǒng)會(huì)給每個(gè)應(yīng)用程序一個(gè)ID,,并且這個(gè)ID是唯一的,,應(yīng)用程序在各自的進(jìn)程中運(yùn)行。這樣,,每個(gè)應(yīng)用程序就形成一個(gè)沙箱,,防止應(yīng)用程序?qū)ο到y(tǒng)的其他資源或別的程序產(chǎn)生惡意行為。因此,,在沒(méi)有明確授權(quán)的情況下,,不允許對(duì)其他資源訪問(wèn)。例如,程序1若要獲取程序2的短信,、電話功能等數(shù)據(jù)就會(huì)遭到拒絕,。

  3.1.2 文件訪問(wèn)權(quán)限控制

  文件訪問(wèn)管理源于Linux權(quán)限機(jī)制[5]。各文件訪問(wèn)與用戶ID,、所在組號(hào)及Read/Write/RWX三個(gè)向量組密切相關(guān),。每個(gè)文件擁有各自的ID,不被其他程序訪問(wèn)(設(shè)為全局或擁有共同ID的除外),。同時(shí),,系統(tǒng)鏡像掛載設(shè)為只讀。配置文件及重要程序置于Firmware中,,在系統(tǒng)初始化中加載,;程序數(shù)據(jù)及用戶置于數(shù)據(jù)分區(qū)中;進(jìn)而對(duì)文件訪問(wèn)實(shí)現(xiàn)合理控制,。

  3.2 Android特有的安全機(jī)制

  3.2.1 應(yīng)用程序權(quán)限機(jī)制

  安全機(jī)制中權(quán)限機(jī)制是核心[6],。各應(yīng)用程序只能在各自的權(quán)限中運(yùn)行來(lái)獲得權(quán)限內(nèi)的資源,不能訪問(wèn)權(quán)限以外的其他內(nèi)容,。包管理器在程序安裝中賦予其權(quán)限,,應(yīng)用程序框架層在程序運(yùn)行時(shí)對(duì)其進(jìn)行權(quán)限控制。Android的權(quán)限控制有100多種,,例如收發(fā)信息,、撥打電話、藍(lán)牙,、網(wǎng)絡(luò)訪問(wèn)等,。權(quán)限的獲得必須在安裝時(shí)申請(qǐng),Android通過(guò)用戶交互和簽名檢查給予權(quán)限,。應(yīng)用程序只有獲得權(quán)限后方能執(zhí)行其他操作,。此外,可以配置防護(hù)等級(jí)屬性,,其可以決定權(quán)限被授權(quán)的幾種情況,。

  3.2.2 組件封裝

  對(duì)應(yīng)用程序?qū)嵭薪M件封裝,通過(guò)“exporter”屬性定義,,實(shí)現(xiàn)組件內(nèi)容是否被程序訪問(wèn)的操作,。若“exporter”屬性設(shè)置為否,則該組件只能被本身(或具有同一ID)程序訪問(wèn),;否則能被其他程序訪問(wèn)或調(diào)用,。

  3.2.3 程序簽名

  Android系統(tǒng)中,所有的應(yīng)用程序必須有數(shù)字簽名,,沒(méi)有數(shù)字簽名的程序安裝時(shí)會(huì)遭到拒絕,。數(shù)字簽名通常作為標(biāo)識(shí)開(kāi)發(fā)者或升級(jí)程序的依據(jù),。應(yīng)用程序的數(shù)字簽名可以是自簽名的,也可以是第三方機(jī)構(gòu)授權(quán)的,。

  3.3 其他保護(hù)機(jī)制

  除Linux安全機(jī)制及Android特有安全機(jī)制外,,系統(tǒng)的硬件、語(yǔ)言,、手機(jī)載體等技術(shù)環(huán)境也實(shí)施了一些安全機(jī)制。例如,,MMU(內(nèi)存管理單元)保證各進(jìn)程訪問(wèn)自己的內(nèi)存空間,,限制了特權(quán)提升;強(qiáng)制類型安全語(yǔ)言的應(yīng)用,,阻止了變量的不當(dāng)或錯(cuò)誤的使用,;移動(dòng)設(shè)備安全中引用AAA系統(tǒng),實(shí)現(xiàn)認(rèn)證,、審計(jì)和授權(quán)的操作,。

4 安全解決方案

  盡管Android系統(tǒng)本身具有強(qiáng)大的安全機(jī)制,但也很難保證系統(tǒng)的絕對(duì)安全,。結(jié)合Android系統(tǒng)存在的安全隱患及安全機(jī)制中的不足,,提出以下幾個(gè)安全解決方案。

  4.1 惡意軟件檢測(cè)系統(tǒng)的完善

  目前,,惡意軟件的侵入是Android的主要安全隱患,,檢測(cè)惡意軟件是保證安全的重要方面。現(xiàn)有的檢測(cè)系統(tǒng)主要包括異常檢測(cè)和特征檢測(cè)兩個(gè)方面,。特征檢測(cè)僅能對(duì)已存在的惡意軟件進(jìn)行檢測(cè),,對(duì)新的惡意軟件則無(wú)法檢測(cè),當(dāng)今一些移動(dòng)終端通常采用此方式,。異常檢測(cè)通過(guò)將系統(tǒng)指標(biāo)參數(shù)與惡意軟件產(chǎn)生的系統(tǒng)指標(biāo)參數(shù)進(jìn)行對(duì)比,,進(jìn)而找出新的惡意軟件,此檢測(cè)方式極具實(shí)際意義,。故對(duì)惡意軟件檢測(cè)系統(tǒng)的不斷完善勢(shì)在必行,。

  4.2 加強(qiáng)Android自身安全建設(shè)

  Android系統(tǒng)即使安全性很高,也難免存在漏洞,,故要不斷加強(qiáng)系統(tǒng)自身安全建設(shè)(如數(shù)據(jù)加密,、遠(yuǎn)程管理、郵件過(guò)濾等),,不斷推出強(qiáng)化安全套件,,以提高系統(tǒng)的安全性。

  4.3 提高終端用戶的安全意識(shí)

  再安全的系統(tǒng),,也必然存在漏洞,,這就需要用戶提高各自的安全意識(shí)(如安裝安全保護(hù)軟件,,對(duì)不必要軟件進(jìn)行卸載,減少藍(lán)牙,、GPS及WiFi的使用,,程序下載到安全的應(yīng)用程序商店等),以達(dá)到安全的目的,。

5 結(jié)論

  Android系統(tǒng)是當(dāng)前最為流行的開(kāi)放式操作系統(tǒng),,被廣泛應(yīng)用到各移動(dòng)終端中,這就對(duì)系統(tǒng)安全提出了更高的要求,。只有不斷加強(qiáng)自身安全機(jī)制建設(shè),,不斷對(duì)惡意軟件檢測(cè)系統(tǒng)進(jìn)行完善,不斷提高用戶的安全意識(shí),,以及綜合運(yùn)用各種安全手段,,Android系統(tǒng)才能越來(lái)越安全地為人們提供服務(wù)。

參考文獻(xiàn)

  [1] Android. A new Android market for phones[EB/OL]. (2010-11-03)[2011-07-01].http://www. android.com.

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

  [3] 蔣紹林,,王金雙,張濤,,等.Android安全研究綜述[J].計(jì)算機(jī)應(yīng)用與軟件,,2012(10):205-210.

  [4] 李凡.Android系統(tǒng)安全機(jī)制的分析與增強(qiáng)[D].武漢:華中科技大學(xué),2012.

  [5] 廖明華,,鄭力明.Android安全機(jī)制分析與解決方案初探[J].科學(xué)技術(shù)與工程,,2011,11(26):6350-6355.

  [6] 宋杰,,黨李成,,郭振朝,等.Android OS手機(jī)平臺(tái)的安全機(jī)制分析和應(yīng)用研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,,2010,,20(06):152-155.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。