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