研究:現今的DDR4記憶體依然無法免疫於Rowhammer攻擊
阿姆斯特丹自由大學(Vrije Universiteit Amsterdam)的漏洞安全實驗室VUSec Lab在本周指出,記憶體製造商為了解決Rowhammer攻擊而部署的緩解措施並不充份,他們發現了編號為CVE2020-10255的新一批漏洞,就算是在最新的DDR4記憶體上仍能發動Rowhammer攻擊,而且這是整個記憶體產業的問題,也波及Google Pixel 3、OnePlus 7及Samsung G970F/DS等手機。
研究人員先是在2012年發現了針對動態隨機存取記憶體(DRAM)展開的Rowhammer攻擊。記憶體是由數列的記憶元(Cell)所組成,當駭客鎖定所要攻擊的記憶體列時,只要重複造訪隔壁列的記憶元,就會造成記憶體控制電路的電壓波動,影響目標記憶體列,造成位元翻轉現象,例如1變成0或0變成1,駭客只要依照需求持續變更記憶體內的位元,最終將能造成權限擴張。
原本研究人員認為Rowhammer攻擊,只存在於PC及伺服器等效能較高的運算裝置上,但隨著手機運算效能的提升,阿姆斯特丹自由大學(Vrije Universiteit Amsterdam)的漏洞安全實驗室VUSec Lab在2016年,證實了該攻擊同樣適用於手機,在所測試的13款、27支Android手機中,成功開採了當中的18支手機,且即使是同樣型號的Android手機,也可能因記憶體品牌的不同,而有不同的結果。
為了防範Rowhammer攻擊,記憶體產業部署了統稱為「目標列刷新」( Target Row Refresh,TRR)的各式解決方案,其基本概念是設定記憶體列的閥值,並在存取頻率超過該閥值時刷新所偵測到的目標列,也一致於新一代的DDR4上部署TRR。
然而,VUSec Lab指出,已知的各種Rowhammer攻擊手法,的確無法對部署TRR的DDR4造成影響,但他們發展了一個新的TRRespass工具,可以繞過業者的TTR修補,並成功攻陷了DDR4。
這是因為現有的Rowhammer手法最多利用兩列進行攻擊,而TRRespass的作法,則是不斷地在DRAM上的各個區域隨機存取不同列,出現太多的攻擊列令TTR不知所措,而再度成功造成了目標記憶體列的位元翻轉現象。換句話說,只要增加攻擊列的數量,TTR就可能會失效。
VUSec Lab檢驗了42款DRAM模組,以TRRespass成功攻陷了當中的13個。VUSec Lab並未公布這些DRAM模組的品牌,因為該實驗室認為這是整個記憶體產業的問題,相信前三大DRAM廠商也無法倖免於難。
此外,VUSec Lab也以TRRespass測試了13款手機,成功開採了其中的5款,包括第一代的Google Pixel 、Google Pixel 3、LG G7 ThinQ、OnePlus 7與Samsung G970F/DS。
VUSec Lab團隊已透過GitHub公布了TRRsspass的程式碼,並打算釋出相關的Android程式,以讓使用者測試自己的手機是否也面臨Rowhammer攻擊的風險。