麻省理工專家發(fā)布新系統(tǒng)Ascend,專注內(nèi)存訪問安全缺陷
在公有云環(huán)境中,數(shù)據(jù)加密是保證數(shù)據(jù)安全的關(guān)鍵手段。但是當(dāng)一個芯片想要發(fā)送或者接收芯片外存儲數(shù)據(jù)時,將會給想要獲悉工作負(fù)載、明確攻擊目標(biāo)的攻擊者帶來可乘之機(jī)。
在7月2日的麻省理工學(xué)院新聞發(fā)布上,研究員們帶來了名為Ascend的系統(tǒng),該系統(tǒng)可以解決涉及內(nèi)存訪問上的安全缺陷。
Ascend通過一系列的措施來最小化攻擊者從內(nèi)存數(shù)據(jù)傳輸過程中獲得信息的可能性,它發(fā)明了一個查詢內(nèi)存地址的新途徑:
Devadas與他的研究生Ling Ren、Xiangyao Yu、Chistopher Fletcher以及研究科學(xué)家Marten van Dijk一起將內(nèi)存地址結(jié)構(gòu)用“樹形”數(shù)據(jù)結(jié)構(gòu)替換。家譜就是個最常見的樹形結(jié)構(gòu)例子,在家譜上每個“節(jié)點(diǎn)”都是一個人名;每個節(jié)點(diǎn)都有唯一的上屬節(jié)點(diǎn),在家譜上也就是父母;但是他們都可能擁有幾個下屬節(jié)點(diǎn),也就是子女。
Ascend將地址隨機(jī)分配給節(jié)點(diǎn)。每個節(jié)點(diǎn)到根節(jié)點(diǎn)都有一條特定的路徑,這些路徑和節(jié)點(diǎn)構(gòu)成一個最小生成樹。當(dāng)處理器需要某個節(jié)點(diǎn)的數(shù)據(jù)時,會將請求發(fā)送給到相應(yīng)路徑上的所有節(jié)點(diǎn)。
更重要的是,當(dāng)芯片需要訪問單一的內(nèi)存地址時,Ascend將會把這個地址與其它的內(nèi)存地址互換。這樣的話多次對同一個地址進(jìn)行訪問的情況將非常罕見,因為這需要遍歷相同的路徑。
即使芯片忙碌不需要從內(nèi)存讀取數(shù)據(jù)時,系統(tǒng)也會發(fā)送周期性請求,防止攻擊者獲取真實的內(nèi)存訪問頻率。這是非常重要的,因為請求上的巨大差距可以凸顯一些特別的需求,而攻擊者可以借此發(fā)現(xiàn)值得攻擊的重要工作。
研究者之一電子工程及計算機(jī)科學(xué)教授Srini Devadas申明系統(tǒng)當(dāng)下并未完工,然而鑒于云服務(wù)被廣泛使用的今天,Ascend必然是值得期待的。