黑客稱安卓4.1版本“難以攻擊”
安卓4.1版本發(fā)布
7月18日消息,谷歌(微博)最新版本的安卓手機(jī)操作系統(tǒng)“果凍豆”(Jelly Bean)終于配備了業(yè)內(nèi)領(lǐng)先的防御工具。相比于先前各個(gè)版本,“果凍豆”擁有更強(qiáng)的防黑客攻擊、防手機(jī)惡意軟件的功能。
系統(tǒng)安全分析師喬恩·奧布赫德(Jon Oberheide)本周一發(fā)布分析報(bào)告稱,安卓4.1版本,也就是“果凍豆”,采用了“地址空間布局隨機(jī)化”(address space layout randomization,即ASLR)協(xié)議防護(hù)。ASLR將通過(guò)對(duì)堆、棧、共享庫(kù)映射等線性區(qū)布局的隨機(jī)化,可以有效增加攻擊者預(yù)測(cè)惡意軟件存儲(chǔ)攻擊的目的地址的難度,防止攻擊者直接定位攻擊代碼位置,達(dá)到阻止溢出攻擊的目的。如果能操作系統(tǒng)能同時(shí)使用單獨(dú)的數(shù)據(jù)執(zhí)行防護(hù)(data execution prevention,即DEP),ASLR對(duì)此類(lèi)攻擊的防御將更加有效。
盡管安卓4.1版本,也就是“冰淇淋三明治”(Ice Cream Sandwich)也提供了ASLR防護(hù),但是實(shí)際效果卻非常有限,主要原因之一是安卓系統(tǒng)的可執(zhí)行區(qū)域、堆、函數(shù)庫(kù)、連接位置等每次都在同樣的位置布局加載,這樣,對(duì)于攻擊者來(lái)說(shuō),預(yù)測(cè)惡意軟件目的地址就簡(jiǎn)單得多,惡意代碼很容易就能找到應(yīng)存儲(chǔ)攻擊的位置。
“只要存在任何東西不是隨機(jī)分布,那么ASLR防護(hù)就沒(méi)有用,只要攻擊者知道有東西會(huì)存在同一位置,他們就能通過(guò)攻擊這個(gè)位置的任何局部程序來(lái)攻擊所有程序。”之神智能手機(jī)黑客、安全防護(hù)公司Accuvant首席研究咨詢師查理·米勒(Charlie Miller)解釋道,“‘果凍豆’是第一款擁有完整ASLR和DEP防護(hù)的安卓系統(tǒng),所以對(duì)于黑客來(lái)說(shuō),要寫(xiě)出有效地溢出攻擊代碼就難了很多。過(guò)去的七年中,米勒都在寫(xiě)可將惡意軟件安裝到Mac筆記本、iPhone和安卓手機(jī)的溢出攻擊程序,對(duì)于用戶來(lái)說(shuō),單單是瀏覽一個(gè)簡(jiǎn)單的網(wǎng)站就可能被安裝上這些惡意程序。
與安卓系統(tǒng)的遲緩不同,蘋(píng)果的iOS在16個(gè)月前就提供了完整的ASLR和SEP防護(hù)。這倒不是因?yàn)樘O(píng)果工程師們一向擅長(zhǎng)加強(qiáng)防護(hù)。2009年蘋(píng)果發(fā)布的雪豹操作系統(tǒng)(OS X Snow Leopard)也沒(méi)能將其核心部分隨機(jī)化,這個(gè)漏洞直到后來(lái)發(fā)布的獅子系統(tǒng)(OS X Lion)才被修復(fù)。
與以前版本的安卓系統(tǒng)不同,“果凍豆”提供獨(dú)立位置的可執(zhí)行區(qū)域(position-independent executables)。這樣使得在利用緩沖溢出和移動(dòng)操作系統(tǒng)中存在的其他內(nèi)存崩潰缺陷時(shí)采用面向返回的編程(return-oriented programming)方法變得難得多。“果凍豆”還提供信息泄露防御,而信息泄露可能導(dǎo)致更嚴(yán)重的操作系統(tǒng)攻擊。
安卓尚未引入代碼簽名防護(hù),代碼簽名要求手機(jī)應(yīng)用必須提供可存入內(nèi)存的代碼并且攜帶有效電子簽名才能被用戶安裝,以此來(lái)防止手機(jī)上運(yùn)行未被許可的應(yīng)用。而安卓的對(duì)手蘋(píng)果iOS則早就引入了代碼簽名防護(hù)。