新型SLAM側信道攻擊曝光,Intel、AMD和Arm CPU均受到影響
近日,阿姆斯特丹自由大學的研究人員披露了一種名為 SLAM 的新型側信道攻擊,利用這種攻擊可以從Intel、AMD 和 Arm 和即將推出的 CPU 的內核內存中泄漏敏感信息。
這種攻擊是一種對 Spectre 的端到端利用方式,也是基于Intel CPU 的一項新功能,被稱為線性地址掩碼(LAM),以及 AMD 和 Arm 的類似功能。
VUSec 的研究人員說:SLAM 利用未屏蔽的小工具,讓用戶域進程泄漏任意 ASCII 內核數據。
雖然最初 LAM 是作為一項安全功能提出的,但研究的結果非常諷刺,它不僅沒有提高安全性反而還降低了安全性,甚至極大程度的增加了 Spectre 的攻擊面,導致瞬態執行攻擊,利用投機執行通過高速緩存隱蔽通道提取敏感數據。
Intel 在其術語文檔中提到:瞬態執行攻擊利用了瞬態指令的微架構副作用,從而允許惡意對手訪問架構訪問控制機制通常禁止訪問的信息。
SLAM 被描述為首個針對未來 CPU 的瞬態執行攻擊,它利用了基于非規范地址轉換的新隱蔽通道,該通道有助于實際利用通用 Spectre 小工具來泄漏有價值的信息。它影響以下 CPU:
- 易受 CVE-2020-12965 影響的現有 AMD CPU
- 未來支持 LAM(4 級和 5 級分頁)的 Intel CPU
- 未來支持 UAI 和 5 級分頁的 AMD CPU
- 未來支持 TBI 和 5 級分頁的 Arm CPU
Arm 在一份公告中提及:Arm 系統已經減輕了 Spectre v2 和 BHB 的影響,軟件有責任保護自己免受 Spectre v1 的攻擊。所述技術只是通過增加可利用小工具的數量來擴大 Spectre v2 或 BHB 等現有漏洞的攻擊面"。
AMD 還指出了當前 Spectre v2 的緩解措施,以解決 SLAM 漏洞。另一方面,Intel 打算在未來發布支持 LAM 的 Intel 處理器之前提供軟件指導。在此期間,Linux 維護者已開發出默認禁用 LAM 的補丁程序。
這些發現是在 VUSec 公布 Quarantine 近兩個月后得出的,Quarantine 是一種純軟件方法,用于緩解瞬時執行攻擊,并通過對最后一級緩存(LLC)進行分區來實現物理域隔離,使每個安全域都能獨占訪問 LLC 的不同部分,從而消除 LLC 的隱蔽通道。
研究人員表示:Quarantine 的物理域隔離將不同的安全域隔離在不同的內核上,以防止它們共享內核本地微架構資源。此外,它還取消了 LLC 的共享,將其劃分給了幾個不同的安全域。