如何保障Android開放環(huán)境的安全性
為了實(shí)現(xiàn)與互聯(lián)網(wǎng)的融合,家電采用Android的步伐正在不斷加快。對于開發(fā)家電設(shè)備的廠商而言,索尼的信息泄露事件是一個(gè)反面教師。企業(yè)不僅要探索與黑客和平共處的道路,還要為系統(tǒng)配備多重防御功能。
電視、車載導(dǎo)航儀、電子書……目前,各種家電都在不斷采用開放式嵌入軟件開發(fā)平臺。其中,備受關(guān)注的是Android。其原因是,“只要打算比以往更加強(qiáng)化與互聯(lián)網(wǎng)服務(wù)的聯(lián)動(dòng)功能,自然會(huì)將Android作為選項(xiàng)之一”(日本嵌入系統(tǒng)開發(fā)商Eflow開發(fā)本部統(tǒng)括部長金山二郎)。
對于打算為家電配備Android的廠商而言,“PlayStation Network(PSN)”及“Qriocity”遭受的非法攻擊事件并非事不關(guān)己。這是因?yàn)榧译姴捎肁ndroid之后,可以實(shí)現(xiàn)“與互聯(lián)網(wǎng)服務(wù)的緊密聯(lián)動(dòng)”以及“通過安裝應(yīng)用軟件(以下稱應(yīng)用)來追加新服務(wù)的環(huán)境”,這些均與PlayStaiton 3(PS3)相同。所以即使發(fā)生索尼相同的情況也不足為奇,包括DRM機(jī)制被暴露無遺,或與服務(wù)器的通信方法及密碼被泄露,導(dǎo)致服務(wù)器遭到非法訪問等。
要防止此類事件發(fā)生,需要吸取索尼信息泄露事件的教訓(xùn)。也就是說,關(guān)鍵在于避免重復(fù)索尼犯過的錯(cuò)誤,包括“以整個(gè)黑客社區(qū)為敵”,以及“安全方面完全依賴于PS3的機(jī)制”(圖1)。反過來說,如果今后采取兩手行動(dòng),即“與黑客社區(qū)建立協(xié)調(diào)的關(guān)系”以及“無論安全機(jī)制多么強(qiáng)大,也都做好遲早會(huì)被攻破的準(zhǔn)備,采取多重安全措施”,那么就很有可能避免發(fā)生關(guān)系到公司存亡的事件。
Androidでどう築くオープン環(huán)境の安全性
不僅要盡量與黑客社團(tuán)建立良好的關(guān)系,還需要對不能泄露的重要信息進(jìn)行多重防御。
目標(biāo)是與黑客和平共處
第一個(gè)要點(diǎn)是避免與黑客對立,要做到這一點(diǎn),必須了解黑客的想法,摸索出與之和平共處的方法。
索尼對黑客始終采取“PS3是我們?yōu)樘峁┓?wù)而銷售的產(chǎn)品,當(dāng)然應(yīng)由我們控制”的態(tài)度。但是,PS3用戶中有不少人則認(rèn)為“如何使用自己花錢購買的商品是個(gè)人的自由”。索尼在不了解與用戶思維差異的情況下采取了強(qiáng)硬手段,導(dǎo)致事態(tài)發(fā)展到了雙方觀念對立的地步。
要避免事情發(fā)展到觀念對立的程度,關(guān)鍵在于廠商的相關(guān)人員要定期與黑客社區(qū)對話,在一定程度上尊重對方的意見,并在此基礎(chǔ)上開發(fā)產(chǎn)品?!?span id="hl3tlrp" class=hrefStyle>網(wǎng)絡(luò)
入侵是一種特殊才能,并不是任何人都能掌握。需要盡早發(fā)現(xiàn)這種才能,盡量將具備這種能力的人拉進(jìn)自己的陣營,以防其采取出格的行動(dòng)”(日本青山學(xué)院大學(xué)研究員山根信二)。采取多重防御措施
另一個(gè)要點(diǎn)是“多重防御”,在以受到攻擊為前提而進(jìn)行防御時(shí),這種思維方式十分重要。具體做法是,即便第一道屏障被攻破,也要準(zhǔn)備第2道乃至第3道屏障,以防遭到?jīng)Q定性破壞。
在開發(fā)采用Android的家電時(shí),這種思維尤為重要。其原因是,采用開放式平臺,“任何人都可以可輕松獲取設(shè)計(jì)信息并構(gòu)建調(diào)試環(huán)境,網(wǎng)絡(luò)入侵也會(huì)更加容易”(Eflow的金山)(圖2)。
圖2:開發(fā)環(huán)境從黑箱轉(zhuǎn)向開放
采用開放式開發(fā)環(huán)境時(shí),硬件及軟件開發(fā)會(huì)簡化,但遭到網(wǎng)絡(luò)攻擊的風(fēng)險(xiǎn)也會(huì)提高。
其實(shí),先于家電商采用Android平臺的手機(jī)制造商在介紹Android手機(jī)的不同時(shí)表示,“傳統(tǒng)手機(jī)可以通過產(chǎn)品與軟件安裝的自主性確保安全,而配備Android的智能手機(jī)因OS的信用問題,不得不考慮安全保障問題”(NTT DoCoMo智能通信服務(wù)部安全推進(jìn)擔(dān)當(dāng)部長柳澤隆治)。
防止管理員權(quán)限被剝奪
那么,采用Android時(shí)必須考慮哪些問題呢?
最初應(yīng)該考慮的是,防止管理員權(quán)限被剝奪,以免設(shè)備驅(qū)動(dòng)程序及OS的程序庫等系統(tǒng)文件遭到篡改。如果系統(tǒng)文件被篡改的話,便會(huì)以此為起點(diǎn)使得系統(tǒng)遭到破解(圖3)。
圖3:管理員權(quán)限被奪取時(shí)的問題點(diǎn)
在內(nèi)部進(jìn)行交換的絕大部分?jǐn)?shù)據(jù)都有可能被盜取。而且,還可能會(huì)嵌入非法應(yīng)用。加密文件等也會(huì)被打開。
雖然以上這些都是嵌入設(shè)備曾經(jīng)考慮過的攻擊,但以往的產(chǎn)品除了平臺本身黑箱化之外,還有很多防止從外部追加應(yīng)用的限制,所以不易成為攻擊對象。而Android的文件構(gòu)成是被公開的,可隨意追加應(yīng)用,因此容易進(jìn)行攻擊。
Android只給用戶提供了用戶權(quán)限,本來是無法更改系統(tǒng)文件的。但如果Linux的內(nèi)核、程序庫及驅(qū)動(dòng)程序等存在可將用戶權(quán)限提高至管理員權(quán)限的“升級(Escalation)”漏洞的話,那就需要另當(dāng)別論了。只要編寫用來攻擊該漏洞的應(yīng)用,并在Android上運(yùn)行,便可奪取管理員權(quán)限。
解決這一問題的方法是,發(fā)現(xiàn)漏洞時(shí)及時(shí)用補(bǔ)丁堵上。但這并不是一件簡單的事情。這是因?yàn)锳ndroid的源碼被提供給廠商,安裝工作由廠商完成。漏洞信息的收集以及安裝補(bǔ)丁后的運(yùn)行驗(yàn)證等工作也必須由廠商自行完成。
有一組數(shù)據(jù)可以清楚地揭示這項(xiàng)工作的困難程度。這就是日本信息處理推進(jìn)機(jī)構(gòu)(IPA)2011年6月公開的“智能手機(jī)面臨的威脅及對策”報(bào)告。該報(bào)告對利用Linux內(nèi)核等的漏洞奪取管理員權(quán)限的惡意軟件“Droid Dream”是否已經(jīng)感染了投放市場的智能手機(jī)進(jìn)行了調(diào)查。Droid Dream可利用兩個(gè)漏洞。盡管這兩個(gè)漏洞已分別于2009年4月及2010年8月公開,但截至2011年3月,調(diào)查的14款手機(jī)中尚有11款沒有設(shè)置完善的對策(表1)。
表1:IPA調(diào)查的“Droid Dream”應(yīng)對情況
Droid Dream可利用Linux內(nèi)核與Android構(gòu)件兩種漏洞之一奪取管理員權(quán)限,該表將堵住其中一項(xiàng)漏洞的機(jī)型標(biāo)記為“部分應(yīng)對”。
就連由安全意識較高的企業(yè)生產(chǎn)的智能手機(jī)也是如此。其他家電設(shè)備采用Android的話,能否及時(shí)提供補(bǔ)丁還存在疑問。家電需要采用的機(jī)制是,漏洞遭到攻擊時(shí)要防止管理員權(quán)限被剝奪,或者管理員權(quán)限被剝奪時(shí)要防止安全上的重要部分被破解。
Java可輕松進(jìn)行反匯編
除了要防止管理員權(quán)限被剝奪之外,還有其他問題需要注意。那就是程序文件或設(shè)置文件被破解,遭到非法復(fù)制,或者關(guān)系到服務(wù)根基的重要算法及數(shù)據(jù)被發(fā)現(xiàn)。
這種問題已在智能手機(jī)上越來越嚴(yán)重。日本開發(fā)商編寫的游戲應(yīng)用被隨意翻譯成漢語銷售,更糟糕的是,還被植入惡意軟件并發(fā)放給用戶(圖4)。
圖4:在應(yīng)用中嵌入惡意軟件的方法
通過Android應(yīng)用商店購買正規(guī)應(yīng)用,通過反匯編植入惡意代碼。
上面介紹的Droid Dream也是采用這種方法制作出來的惡意軟件。Android網(wǎng)上商店銷售的應(yīng)用被隨意更改,并植入了可奪取管理員權(quán)限并盜取用戶個(gè)人信息的程序。
熟悉軟件非法復(fù)制情況的專家表示,“盡管Android一般以Java編寫內(nèi)容,但通過反匯編進(jìn)行篡改,然后再次進(jìn)行數(shù)據(jù)包處理也是十分簡單的事情”(日本HyperTech代表董事小川秀明)。也就是說,如果不做好程序被破解的準(zhǔn)備而采取措施的話,任何企業(yè)都存在陷入危機(jī)的可能性。
更改系統(tǒng)也沒有效果
有些廠商采取的措施是在采用Android等開放性軟件平臺的同時(shí),通過限制功能,來保護(hù)程序或信息免受網(wǎng)絡(luò)入侵。不過,安全專家警告稱,“不應(yīng)采取這種方法”(日本LAC董事兼最高技術(shù)負(fù)責(zé)人西本逸郎)。
如果采用了開放性平臺,又打算將其“封閉”起來的話,反而會(huì)激發(fā)黑客“希望自由使用”的愿望。而且,“既然原本是開放性系統(tǒng),那么很容易推測出內(nèi)部構(gòu)造來,封閉的效果有限”(西本)。
以美
評論