今年一月中旬,美國國家安全局正式發(fā)布第一版Android操作系統(tǒng)安全強(qiáng)化套件,并隨之釋出一些相關(guān)原始碼。
今年一月中旬,美國國家安全局正式發(fā)布第一版Android操作系統(tǒng)安全強(qiáng)化套件,并隨之釋出一些相關(guān)原始碼。此舉被許多人譽(yù)為是Android設(shè)備安全性向上提升的重要一大步。事實(shí)上,美國國家安全局近來所發(fā)布的程序代碼叢輯,對(duì)風(fēng)河這類Android專家而言是再孰悉也不過的事,因?yàn)轱L(fēng)河多年來始終持續(xù)為各種Android設(shè)備設(shè)計(jì)并導(dǎo)入復(fù)雜的軟件安全層。只不過,現(xiàn)在這些有助強(qiáng)化安全性的開發(fā)成果,在媒體描繪下似乎已被美化為可解決所有安全疑慮的全方位解決方案,我認(rèn)為如此看待這些成果稍顯粗略,而且也過度簡(jiǎn)化了Android安全性相關(guān)議題的復(fù)雜程度。
簡(jiǎn)單來說,這套SE Android程序代碼叢輯并非萬靈丹,即使將其編譯并重新安裝至您的Nexus S設(shè)備,也無法確保您的設(shè)備就百分之百地“安全”。
風(fēng)河支持Android設(shè)備至今已將近五年時(shí)間。這段期間的經(jīng)驗(yàn)累積,再加上作為移動(dòng)Linux設(shè)備領(lǐng)域技術(shù)先驅(qū)已經(jīng)超過十年所積累的心得,讓風(fēng)河得以歸納出以下四項(xiàng)最為關(guān)鍵的Android安全性議題要點(diǎn):
(一) Android的安全性問題就好比一塊高難度的拼圖,是由許多困難的零碎片段構(gòu)成,必須費(fèi)心組裝才能開發(fā)出真正安全的Android設(shè)備。
(二) 安全性其實(shí)是一個(gè)以應(yīng)用情景為基礎(chǔ)所推演出的概念。舉例來說,一部軍用行動(dòng)通訊終端設(shè)備對(duì)安全性的定義及軟硬件需求,就完全不同于運(yùn)行于車載信息娛樂應(yīng)用(IVI)系統(tǒng)上的Android軟件棧。
(三) 安全機(jī)制的建構(gòu)并非“一次性”的工作。務(wù)必費(fèi)心建立一套可長(zhǎng)可久的系統(tǒng),不但要足以抵擋新型態(tài)的攻擊,還要可以現(xiàn)場(chǎng)升級(jí)至最新的Android版本(必要的話,最好還能針對(duì)特定安全防護(hù)層面實(shí)現(xiàn)持續(xù)更新),同時(shí)又能繼續(xù)維持或進(jìn)一步強(qiáng)化其先前的安全層級(jí)設(shè)定。
(四) 最后,只是宣稱一套軟件的建構(gòu)與導(dǎo)入是“安全的”,這仍然有所不足。必須要有一套測(cè)試框架Framework以及全自動(dòng)測(cè)試腳本,以便讓待測(cè)設(shè)備接受耐壓測(cè)試,或是對(duì)其模擬各類攻擊并提供可供量測(cè)的證明要點(diǎn),以確保這些類型的攻擊不會(huì)影響我們賦予目標(biāo)設(shè)備的主要使用案例。這套測(cè)試框架必須具備擴(kuò)充能力,可以快速針對(duì)已安裝最新版本Android平臺(tái)的設(shè)備進(jìn)行驗(yàn)證;此外也必須具備足夠彈性,以便納入最新攻擊的腳本。
接下來,我們?cè)偕钊胄┨接戇@四大要點(diǎn)。
根據(jù)我們的分析,風(fēng)河已經(jīng)可以區(qū)別處理多達(dá)十幾項(xiàng)不同領(lǐng)域的Android安全性問題,其中包括使用者身分辨識(shí)及驗(yàn)證、橫跨多重內(nèi)存位置的用戶數(shù)據(jù)保護(hù)、接收及發(fā)送數(shù)據(jù)分別過濾、執(zhí)行事件紀(jì)錄以便遠(yuǎn)程審計(jì)、各類加密技術(shù)的選用及導(dǎo)入、可信賴路徑、數(shù)據(jù)保護(hù)版權(quán)管理技術(shù)、虛擬化技術(shù)以及空域/時(shí)域區(qū)隔、可信賴開機(jī)、惡意軟件防制、固件更新保護(hù)、應(yīng)用程序安裝管理等。
這里有個(gè)實(shí)例,有助于對(duì)上述內(nèi)容有更鮮明的理解。最近借探親之便,我剛好有機(jī)會(huì)參觀一艘舊式蘇聯(lián)潛艇。這艘潛艇內(nèi)有數(shù)百個(gè)控制閥門,只要熟練操作便可順利管控艇上各式系統(tǒng)。要順利操控這艘船,顯然要具備兩方面的專業(yè)能力:第一,對(duì)各個(gè)控制閥門功能的明確掌握;第二,具備整體管控這些閥門的知識(shí)。掌控Android系統(tǒng)就好比操控這艘潛水艇,必須了解在什么時(shí)間點(diǎn)下需要開啟哪個(gè)“閥門”,以及需要將它開啟到何種程度。此外,對(duì)應(yīng)用處理器技術(shù)(例如ARM架構(gòu)或英特爾IA架構(gòu))的選用,也對(duì)使用方式有所影響,Wind River Hypervisor這類嵌入式虛擬化技術(shù)就是一例。
由于風(fēng)河多年來已針對(duì)廣泛類型的各種設(shè)備進(jìn)行設(shè)計(jì)和導(dǎo)入Android安全機(jī)制,因此可以充份滿足上述第二點(diǎn)要求。風(fēng)河服務(wù)過的設(shè)備包羅萬象,從客制化開發(fā)的企業(yè)用平板計(jì)算機(jī)、多媒體電話機(jī)、智能手機(jī)、通用平板電腦、車載信息娛樂應(yīng)用系統(tǒng),乃至于公共安全應(yīng)用或是醫(yī)療用途的設(shè)備。
有趣的是,縱觀所有已發(fā)布的Android計(jì)劃,當(dāng)中有一項(xiàng)共通之處,那就是若要真正確保Android安全性,面對(duì)不同類型的設(shè)備常常必須采取幾乎完全不同的方法才會(huì)有效,并不存在一種放之四海而皆準(zhǔn)的單一作法。換言之,在導(dǎo)入安全技術(shù)的過程中,不同設(shè)備的使用案例具有不同程度的影響力,也因此必須對(duì)Android做出不同的客制化調(diào)整,甚至連軟件驗(yàn)證的概念也會(huì)因而各異。對(duì)此,若您希望有個(gè)具體范例可供了解,不妨參考McAfee和風(fēng)河共同完成的一份技術(shù)白皮書,其中針對(duì)車載信息娛樂應(yīng)用列出了一系列安全考慮要點(diǎn)??傊?,關(guān)鍵在于了解各類設(shè)備的應(yīng)用情景,并將其與Android安全性相關(guān)的專業(yè)知識(shí)緊密結(jié)合。
至于固件管理,在移動(dòng)應(yīng)用領(lǐng)域是再尋常不過的概念。以O(shè)MA-DM(Open Mobile Alliance Device Management)為例,這項(xiàng)標(biāo)準(zhǔn)不但行之有年,更已被應(yīng)用到全球億萬臺(tái)移動(dòng)終端設(shè)備中。對(duì)Android設(shè)備來說,現(xiàn)階段的挑戰(zhàn)主要來自于智能手機(jī)以外;因?yàn)樵谝苿?dòng)應(yīng)用之外的其它應(yīng)用領(lǐng)域中,這類以營(yíng)運(yùn)商為出發(fā)點(diǎn)的設(shè)備、用戶、服務(wù)以及策略管理(Policy Management)的相關(guān)基礎(chǔ)建設(shè)可說幾乎一概欠缺。為滿足此項(xiàng)需求,風(fēng)河開發(fā)出了一整套Android解決方案加速開發(fā)軟件Wind River Solution Accelerators for Android,可提供固件管理功能,使Android設(shè)備得以持續(xù)升級(jí)到最新版本Android安全性軟件。另一方面,眾多風(fēng)河伙伴廠商也已開發(fā)出多款以提升安全性為主要目標(biāo)的策略管理解決方案,可用來應(yīng)對(duì)特定的應(yīng)用情景。
最后,請(qǐng)務(wù)必借助專業(yè)的測(cè)試方案來確認(rèn)Android安全機(jī)制是否已順利導(dǎo)入目標(biāo)設(shè)備。當(dāng)然,某些測(cè)試內(nèi)容是可以手動(dòng)完成的,但是若能善用業(yè)界領(lǐng)先的自動(dòng)化測(cè)試工具,例如Wind River Framework for Automated Software Test (FAST) for Android解決方案,就可大幅提升測(cè)試效率并取得更具意義的測(cè)試結(jié)果。尤其當(dāng)Android待測(cè)設(shè)備需要被置于超負(fù)荷的環(huán)境中測(cè)試時(shí),善用工具所帶來的幫助將更為顯著。例如您可能因?yàn)槠跍y(cè)試的需要,而正在執(zhí)行一個(gè)加速的每日測(cè)試情境,此時(shí)您還可以同步執(zhí)行一連串預(yù)設(shè)的攻擊腳本,以仿真待測(cè)設(shè)備的反應(yīng)。而如此龐大的測(cè)試負(fù)載量,就需要好的工具來助您一臂之力。
所以,若要真正確保Android設(shè)備安全無虞,事實(shí)上并沒有任何一體通用或一成不變的單一作法。新推出的Android操作系統(tǒng)安全強(qiáng)化套件可被視為一個(gè)新的組件,能協(xié)助我們開發(fā)出實(shí)用且合乎市場(chǎng)需要的軟件解決方案,以進(jìn)一步提升Android軟件棧的安全性。由于各類技術(shù)選擇五花八門,各類設(shè)備衍生出的使用案例也包羅萬象,選擇實(shí)在過多的情況下,借助專家的智慧通常仍是必要之舉。如果您對(duì)于開發(fā)安全的Android設(shè)備有任何疑問或顧慮,請(qǐng)不吝求助風(fēng)河全球各地的團(tuán)隊(duì)。向外尋求資源通常是解決問題的最佳途徑!