有一群研究人員在本周揭露了基於Rowhammer的新款攻擊技術RAMBleed,
相較於過去與Rowhammer相關的攻擊行動都是變更或寫入記憶體資訊,
RAMBleed則是用來讀取記憶體資訊,例如2048位元的RSA金鑰。
Rowhammer被視為動態隨機存取記憶體(DRAM)的設計漏洞,記憶體是由數列的記憶元(Cell)所組成,
有鑑於記憶元的密度愈來愈高,當駭客鎖定所要攻擊的記憶體列時,
只要重複造訪隔壁列的記憶元,就會造成記憶體控制電路的電壓波動,影響目標記憶體列,造成位元翻轉現象,
例如將1變成0或0變成1,等於是允許駭客寫入或變更記憶體位元,最終可造成權限擴張等各種漏洞。
由於Rowhammer所造成的位元翻轉具備資料相依性,例如當某個位元上方及下方的位元電荷是相反時,該位元便更容易翻轉,
這使得駭客能夠推斷附近的位元值,於是研究人員發展出新的記憶體傳訊技術,以記錄翻轉位元的上下位元值,發動RAMBleed攻擊,
而且這些位元可能屬於不同的程序,打破了由作業系統強制執行的隔離邊界。
RAMBleed攻擊每秒大概可讀取3到4個位元,研究人員先是花了4個小時取得了足夠數量的2048位元RSA金鑰,
再以Heninger-Shacham演算法恢復完整的RSA金鑰,但理論上RAMBleed可讀取存在於記憶體中的所有資料。
RAMBleed攻擊是奠基在Rowhammer之上,因此所有受到Rowhammer影響的記憶體都難逃一劫,
包括DDR3與啟用TRR的DDR4。之前已證實Rowhammer漏洞波及行動裝置及筆電,
而這次研究人員則在桌上型電腦及啟用ECC的伺服器上,成功示範了RAMBleed。
這群研究人員分別是來自密西根大學的Andrew Kwong與Daniel Genkin、奧地利格拉茨科技大學的Daniel Gruss ,以及澳洲阿德萊德大學的Yuval Yarom,
他們已通知了英特爾、AMD、OpenSSH、微軟、英國及紅帽,也已取得CVE-2019-0174漏洞編號。
研究人員建議,將記憶體升級到啟用TRR的DDR4將可減輕該漏洞所帶來的影響,儘管此一配置仍有機會被開採,但難度較高。
不管是Rowhammer或RAMBleed攻擊目前看來都仍處學術研究階段,尚未發現實際的攻擊行動,
只是作者之一的Kwong向The Register表示,從歷史來看,今日的學術研究很可能就會成為明天的問題。
此一研究論文名稱為《不必存取它們就能讀取記憶體位元》(Reading Bits in Memory Without Accessing Them),
研究人員準備在明年5月舉行的IEEE安全暨隱私研討會(41st IEEE Symposium on Security and Privacy )上正式發表。
.