ARM 防止內存損壞的安全功能可被繞過,成功率近 100%
近日,首爾國立大學和三星研究院的研究人員發現,攻擊者可成功繞過 ARM 芯片針對內存損壞的新防御功能,成功率接近 100%。發現的漏洞可導致多種網絡攻擊,包括權限升級、任意代碼執行、敏感數據泄露或嚴重系統損壞。
ARM 是一種具有精簡指令集的計算機處理器架構,在手機和平板電腦市場占據主導地位,為許多小工具提供動力,并在筆記本電腦和個人電腦中日益普及。
然而,研究人員發現,ARM 很容易受到內存損壞的影響,因為防范此類漏洞的功能很容易被繞過。
內存標記擴展(MTE)是 ARM 架構中引入的一項硬件功能,用于檢測內存損壞漏洞。MTE 的工作原理是為不同內存區域分配唯一標簽,并在內存訪問期間檢查標簽是否匹配。
研究人員能夠在不到 4 秒的時間內以 95% 的成功率泄露 MTE 標記,繞過基于 MTE 的緩解措施。
論文寫道:"攻擊者可以繞過 MTE 的概率防御,將攻擊成功率提高近 100%。”但這并不意味著會直接泄露密碼或加密密鑰等敏感數據。攻擊者需要利用泄露的 MTE 標簽來禁用安全措施,然后利用內存泄露漏洞實施實際攻擊,即制作更復雜的攻擊來執行任意代碼。
研究人員演示了 TIKTAG-v1 和 TIKTAG-v2 兩種技術,展示了現實世界中針對 Chrome 瀏覽器、Linux 內核和 Google Pixel 8 的攻擊是如何發生的。
這種攻擊利用處理器的投機行為,在所謂的投機執行攻擊中泄露敏感信息,類似于 Spectre 和 Meltdown。通過誘使處理器泄漏內存中的秘密信息,攻擊者就可以嘗試通過注入惡意代碼來操縱內存。
"使用 TIKTAG 小工具發起真實世界攻擊存在幾個挑戰。首先,TIKTAG 小工具應在目標地址空間內執行,這就要求攻擊者從目標系統中構建或查找小工具。其次,攻擊者應控制并觀察緩存狀態,以泄露標簽檢查結果。"研究人員說。
安卓安全團隊承認該問題是 Pixel 8 的硬件缺陷,決定在安卓基于 MTE 的防御中解決該問題,并為該報告提供了賞金獎勵。
雖然 ARM 承認 CPU 保護的有效性可能會受到阻礙,但芯片設計者并不認為投機預言的風險會損害 ARM 提供的價值。
"ARM 的 MTE 分配標簽不應該是一個秘密,因此,揭示正確標簽值的機制并不是對架構原則的妥協。"該公司在一份文件中說。
研究人員提出了更好地保護芯片的措施,并聲稱基于 MTE 的保護措施仍然是緩解內存損壞攻擊的一種有吸引力的解決方案。
參考來源:https://cybernews.com/security/attackers-bypassing-arm-memory-corruption-protection/