Intel芯片漏洞可致攻擊者繞過ASLR保護(hù)

責(zé)任編輯:editor005

作者:Michael Heller

2016-10-26 14:36:33

摘自:TechTarget中國(guó)

近日,研究人發(fā)現(xiàn)一個(gè)危險(xiǎn)的Intel芯片漏洞,該漏洞能夠讓攻擊者對(duì)所有軟件平臺(tái)執(zhí)行有效的攻擊,甚至跨越虛擬化邊界。

近日,研究人發(fā)現(xiàn)一個(gè)危險(xiǎn)的Intel芯片漏洞,該漏洞能夠讓攻擊者對(duì)所有軟件平臺(tái)執(zhí)行有效的攻擊,甚至跨越虛擬化邊界。

紐約州立大學(xué)賓漢姆頓分校計(jì)算科學(xué)學(xué)院Dmitry Evtyushkin和Dmitry Ponomarev以及加州大學(xué)河濱分校Nael Abu-Ghazaleh在其論文《Jump Over ASLR: Attacking Branch Predictors to Bypass ASLR》中描述了一種攻擊,當(dāng)這種攻擊在運(yùn)行最新版Linux的Haswell處理器執(zhí)行時(shí),可在約60毫秒內(nèi)可靠地恢復(fù)內(nèi)核地址空間布局隨機(jī)化(ASLR)。

根據(jù)這些研究人員表示,這個(gè)問題出在Intel芯片對(duì)分支目標(biāo)緩沖器(BTB)的使用。

“分支預(yù)測(cè)器是現(xiàn)代處理器性能的關(guān)鍵,分支預(yù)測(cè)硬件的主要組件之一是分至目標(biāo)緩沖器,”他們寫道,“BTB會(huì)存儲(chǔ)最近執(zhí)行的分支指令的目標(biāo)地址,這些地址可直接從BTB查找中獲取在下一周期目標(biāo)地址開始的指令。由于BTB在相同內(nèi)核執(zhí)行多個(gè)應(yīng)用共享,這可能導(dǎo)致通過BTB側(cè)信道出現(xiàn)信息泄露。”

Abu-Ghazaleh指出,雖然該團(tuán)隊(duì)使用Intel的Haswell芯片進(jìn)行測(cè)試,但其他Intel芯片也可能易受到攻擊,因?yàn)樗鼈優(yōu)榉种ьA(yù)測(cè)器使用相同的原則,但相關(guān)具體細(xì)節(jié)以及我們是否可恢復(fù)所有ASLR取決于配置情況。

在這些研究人員描述的新攻擊中,通過利用BTB的側(cè)信道信息,攻擊者可恢復(fù)內(nèi)核地址的所有隨機(jī)位,減少用戶級(jí)隨機(jī)化的熵。

“我們的攻擊只需要控制用戶級(jí)進(jìn)程,而不需要依靠任何明確的內(nèi)存泄露,”這些研究人員寫道,“這種基于BTB側(cè)信道攻擊可能實(shí)現(xiàn)的關(guān)鍵在于,攻擊者能夠以可控制和穩(wěn)定的方式在兩個(gè)用戶級(jí)進(jìn)程之間、用戶進(jìn)程和內(nèi)核之間制造BTB沖突。”

研究人員稱,ASLR的目的是讓攻擊者難以知道程序地址空間具體代碼頁的位置,這意味著,繞過ASLR可能導(dǎo)致大量攻擊。

這些研究人員稱:“所有支持隨機(jī)化的現(xiàn)有操作系統(tǒng)都部署了某種ASLR用于用戶和內(nèi)核級(jí)地址空間。內(nèi)核級(jí)ASLR(KASLR)可隨機(jī)化內(nèi)核代碼段,可阻止需要知道內(nèi)核地址空間布局(包括返回定向編程、跳轉(zhuǎn)定向編程、return-to-libc、ret-2-user以及其他攻擊)的攻擊。”

Cigital公司顧問Andre Joseph稱,而繞過ASLR的能力可讓攻擊者變得非常危險(xiǎn)。

“這是重要的縱深防御做法,因?yàn)樗ㄟ^隨機(jī)化攻擊者代碼的位置讓攻擊者更難利用溢出攻擊,”Joseph稱,“在充分隨機(jī)化后,攻擊者不會(huì)知道在哪里進(jìn)行指令指示流量以執(zhí)行其代碼。”

除了Intel芯片漏洞可能允許攻擊者繞過任何平臺(tái)的ASLR,ERNW Research安全研究人員Felix Wilhelm還展示了概念驗(yàn)證工具,可從客戶虛擬機(jī)泄露KVM管理程序基本地址。然而,Wilhelm指出了在虛擬化環(huán)境中執(zhí)行這種攻擊的一些局限性,這主要取決于部署情況。

Joseph稱部署多個(gè)處理器可能讓這種攻擊非常難以執(zhí)行。

“內(nèi)核ASRL似乎比用戶應(yīng)用ASLR位更容易獲取,如果你有多個(gè)內(nèi)核,對(duì)于應(yīng)用ASLR,這特別危險(xiǎn),”Joseph稱,“攻擊者采取的方法是,迫使受害者應(yīng)用到相同的內(nèi)核作為惡意進(jìn)程,但我不確定這些方法在實(shí)際中是否可靠。為了讓用戶空間ASLR漏洞利用有效運(yùn)行,你需要兩個(gè)進(jìn)程在同一處理器,因?yàn)槊總€(gè)處理器都有不同的BTB。”

研究人員稱軟件措施可能有有限的功效,因?yàn)樗麄儾荒芸刂品种绾斡成涞紹TB條目,讓他們無法解決側(cè)信道的根本問題。同時(shí),研究人員指出更細(xì)粒度的ASLR機(jī)制或者模糊時(shí)間戳計(jì)數(shù)器也可能讓攻擊變得更困難。

研究人員總結(jié)稱,對(duì)Intel處理器做出更改是更有效的做法。

“硬件解決方案可從根本上緩解基于BTB的攻擊,這種解決方案會(huì)改變BTB尋址機(jī)制,防止BTB中可利用的沖突。而對(duì)于針對(duì)KASLR的攻擊,可利用完全虛擬機(jī)制來訪問BTB來緩解,消除用戶代碼和內(nèi)核代碼之間的沖突。”

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號(hào)-6京公網(wǎng)安備 11010502049343號(hào)