物理RAM(隨機存取存儲器)攻擊可root安卓及其他設備,攻擊者可切實翻轉物理存儲單元的比特位以入侵移動設備和計算機。
研究人員設計出一種安卓設備入侵新方法,不用搞定任何軟件漏洞,而是利用RAM芯片的物理設計缺陷。該攻擊技術也可影響其他ARM(進階精簡指令集機器)和基于x86芯片的設備和計算機。
該攻擊源于過去10年間一直在往越來越小的芯片中植入更大DRAM(動態隨機存取存儲)能力的努力,密集的存儲會導致相鄰存儲單元在特定條件下相互泄漏電荷。
比如說,快速重復地訪問物理存儲位置——如今被稱為“錘擊(hammering)”,可導致鄰近位置的比特位值從0變1或從1變0,也就是發生了位翻轉。
盡管此類電氣干擾已經為人所知,且被廠商從可靠性角度進行了研究——因為內存崩壞可導致系統崩潰,但研究人員證實,若以可控方式觸發,位翻轉還能造成很嚴重的安全影響。
2015年3月,谷歌 Project Zero 展示了2個基于 x86-64 CPU 架構內存“行錘擊(row hammer)”效應的提權漏洞利用。其中一個漏洞利用可使代碼跳過谷歌Chrome沙箱檢測,直接在操作系統中執行,另一個則能獲取Linux機器上的內核級權限。
自那以后,其他研究人員對此問題進行了進一步研究,證實該漏洞可通過JavaScript從網站進行利用,能影響到云環境中運行的虛擬服務器。不過,智能手機和其他移動設備所用的ARM架構與之大不相同,這種技術能否用在ARM上尚存疑問。
但現在,來自荷蘭阿姆斯特丹自由大學系統與網絡安全團隊VUSec、奧地利格拉茨技術大學 、美國加州大學圣芭芭拉分校的一組研究人員,證明了“行錘擊(Rowhammer)”攻擊不僅對ARM有效,甚至更容易在x86上實現。
研究人員將他們的新攻擊命名為Drammer——意為確定性的Rowhammer,并計劃在26號舉行的第23屆ACM計算機與同信安全大會上予以公布。該攻擊技術是在之前的Rowhammer技術基礎之上發展起來的。
VUSec研究人員創建了一個不需要任何權限的惡意安卓應用,通過不可檢測的內存位翻轉執行時可以獲取到root權限。
研究人員測試了來自不同廠家的27款安卓設備,其中21種使用ARMv7(32位),6種使用ARMv8(64位)架構。他們在17臺ARMv7設備和1臺ARMv8設備上成功進行了位翻轉,表明ARM對這種攻擊技術也是防護薄弱的。
而且,Drammer能與Stagefright或BAndroid之類其他安卓漏洞聯合使用,打造不需要用戶手動下載惡意App的遠程攻擊。
谷歌注意到了此類攻擊。一位谷歌代表在電子郵件聲明中說道:“研究人員向我們的漏洞獎勵項目報告了該問題后,我們與他們緊密合作,深入理解該漏洞以更好地保護我們的用戶。我們已開發出緩解方案,將在11月的安全公告中發布。”
谷歌的緩解措施讓攻擊變得難以得手,但并沒有修復深層的問題。
事實上,以軟件來修復硬件問題幾乎是不可能的。硬件廠商正在調查該問題,或許會在未來推出的存儲芯片中解決該問題,但現有設備上的芯片大概就一直是這個狀態了。
更糟的是,很難說清到底哪些設備受影響——因為影響因素實在太多,還沒進全面的調查。比如說,設備電量低于一定閾值的時候,存儲控制器的表現有可能不一樣,因而滿電量時看起來無漏洞的設備,在電量低時有可能被入侵。
另外,網絡安全界有個格言:攻擊只會更強,從來不會變弱。Rowhammer攻擊已經從理論性的變為了切實可行但帶概然率的實踐,現在則進化成了確定性的實踐。這意味著,今天似乎還不受影響的設備,在面對明天進一步改進的Rowhammer時,未必能挺得過。
因為想調查對ARM設備的影響,Drammer便在安卓上進行了演示,但類似底層技術適用于所有架構和操作系統。新型攻擊是對之前技術的大幅改進,之前的攻擊技術需要一定的運氣,或者只在某些平臺才有的能被輕松關閉的一些特殊功能。
Drammer依賴很多硬件子系統都使用的DMA(直接存儲器存取)緩沖區,這些子系統包括有顯卡、網卡和聲卡。雖然Drammer采用安卓的ION內存分配程序實現,但所有操作系統都含有分配DMA緩沖區的API和方法,這也是研究報告中重點闡明的警告之一。
這是第一次,不靠任何特性,就實現了針對性的、完全可靠的、確定的Rowhammer攻擊。這一內存馬殺雞甚至不僅僅針對安卓,任何Linux平臺,或許其他操作系統都可享受到。因為它利用的是操作系統內核里內存管理的固有特性。
VUSec系統安全研究小組組長赫伯特·博思稱:“我預測,我們將見證很多其他此類攻擊出現在不同平臺上。”
隨附研究報告,還發布了一款安卓App,可以檢測安卓設備是否具備Rowhammer防護能力——至少能測當前已知的Rowhammer技術。谷歌Play商店里暫時還沒這款App,但可以從 VUSec Drammer 網站下載并手動安裝。能輔助其他研究人員進一步調查該問題的開源Rowhammer模擬器也放在該網站上。