還記得那個曾經帶給時代恐懼的rowhammer嗎?他又回來了,在摧毀了DDR3的信仰之后,DDR4也沒能堅守住陣地,在rowhammer面前依然表現的回天無力。
說起rowhammer就不能不提到DDR3。2015年,谷歌的安全團隊ProjectZero發現,在DDR3內存中存在一種罕見的硬件漏洞:如果高頻率的訪問或者攻擊內存中的一行(row) 數據,會導致臨近行(row)的數據發生位反轉(bit flipping)。位反轉是一種系統錯亂,我們都了解電腦使用的是2進制的系統,位反轉時,系統會發生1和0互相調換。比如原來的一行數據是110010,反轉之后就變成了001101。
rowhammer會讓系統變成1、0不分的色盲
那么這個漏洞會導致怎樣的后果呢?ProjectZero隨后提出了相關概念并對此漏洞進行了測試。結果顯示,在X86和X64架構的Linux系統上測試時,該漏洞提升了整塊內存區域的訪問權限。而比漏洞更可怕的是,對于普通的用戶來講,一旦有人利用漏洞進行攻擊,用戶幾乎無法防御!
竟然會有無法防御的漏洞?是的。ProjectZero提到,內存小型化是該漏洞產生的根源所在。由于DRAM的制造精度越來越高,部件所占物理空間也就越小。當在一塊芯片上集成較大的內存容量時,各個內存單元之間發生電磁干擾也就難以避免了。
在內存條的芯片中,物理空間很小
由于物理空間較小,在對內存的某一區域大量讀寫時,電流很可能流入或流出鄰近的內存單元。進而改變其內容,使得0變成1,1變成0,發生位反轉。這種由于物理結構上的設計而導致的漏洞與軟件的系統漏洞有著本質的區別。軟件漏洞可以通過發布補丁等辦法修補,而物理漏洞則很難防御。
DDR3被認為是rowhammer的問題來源
DDR3是主流的DRAM技術,該漏洞如果被利用,也就意味著很大一部分電腦的權限將無法保障,而且是用戶無法防御的一種漏洞。研究人員還發現,如果此漏洞被黑客利用,那么很可能利用一些簡單的JavaScript代碼,黑客就能輕松獲得用戶電腦的訪問權限。在谷歌的測試中,并非全部的DRAM和CPU都存在該問題,但超過一半的測試品仍存在這種風險。
Rowhammer的出現也引起的廠商的關注,DRAM制造商、CPU制造商、BIOS制造商等紛紛開始在他們的存儲器設備中加入了一些防范rowhammer漏洞的措施,并開始研發新型的內存設備。客觀上來看,rowhammer的發現也推進了DDR4的研發和改進進程,那么DDR4就可以抵抗rowhammer了嗎?
被廠商寄予厚望的DDR4能戰勝rowhammer?
在過去的一段時間里,我們一直都認為是的。DDR4內存條頻率明顯提升,內存量更大,功耗更低的優勢早已為人所知。不僅如此,其制造商也在不斷宣傳DDR4在安全方面的優勢。
DDR4和DDR3在身材上也有所區別(圖片來自網絡)
三星曾宣布,在很大程度上他們的DDR4產品線是免疫rowhammer的。因為他們的產品在技術上采用了TRR,當某一區域被快速連續訪問時,可以針對性的進行刷新,因而可以更好的承受大量的惡意訪問。此外,鎂光也贊揚了他們在DDR4產品中采用的TRR技術,似乎看來DDR4是rowhammer的克星了。
三星曾稱其DDR4內存條可以抵抗rowhammer
但是現實的回應卻是無情的打臉。美國的一家超級寬帶和高級計算機技術提供商 “Third I/O”通過研究發現,事情恐怕并不像廠商們所說的那樣簡單。這些研究人員通過對企業級的DDR3 DIMM進行了測試,以每秒百萬次的速度訪問或者攻擊內存的特定位置。確實,幾乎所有的DDR3內存模塊都出現了不同程度的位反轉。
臺灣廠商G.Skill的產品神奇存活
那么DDR4會不會更好呢?在該團隊測試的十二款DDR4 DIMM產品中,有8款依然無法抵御rowhammer。在研究人員利用快速攻擊對抗TRR技術時,僅有臺灣廠商G.Skill的產品不受影響,其他的內存模塊依然出現了位反轉現象。這也就意味著,DDR4比DDR3更安全的說法并不能成立。
不過研究還發現,對抗rowhammer也并非完全沒有辦法,在往DDR3 DIMM內安裝了一種名為ECC內存糾錯技術后,如果計算機被連續攻擊或者訪問,在大約三分鐘時,服務器就會完全鎖定或者自動重啟,這樣將降低所受攻擊的風險。試驗還發現給予DIMM一個額外的rowhammer防御時,在打擊速度過高時,芯片會自己刷新自己的記憶內容,避免產生反轉混亂。
ECC糾錯可打擊rowhammer的囂張氣焰
該研究機構的人員希望這些研究成果能夠給內存芯片廠商帶來新的思路,保障新的DIMM芯片能夠提高對rowhammer的防御力。盡管目前這項漏洞還僅存在于實驗室當中,但是他一旦外泄將會造成難以估量的后果。
硬件安全比軟件安全更致命
研究人員也表示,他們研發的目的在于給廠商們提醒,rowhammer還活著,位反轉的風險依然存在,對于DDR4也絕不能盲目樂觀,行業和相關的安全廠商應當引起足夠的重視,這個可怕的漏洞依然在威脅著用戶的安全。