CPU的幽靈攻擊:Spectre攻擊的新變種繞過Intel和Arm硬件緩解措施
來自荷蘭阿姆斯特丹自由大學的一組研究人員展示了一種新的Spectre(幽靈)攻擊變體,可以繞過英特爾和Arm近年來實施的硬件緩解措施。VUSec的研究人員9日在一份技術報告中詳細介紹了一種新方法,通過利用他們所謂的分支歷史注入(BHI)來繞過所有現有的緩解措施。該文強調,雖然硬件緩解措施仍然可以防止非特權攻擊者為內核注入預測器條目,但依靠全局歷史來選擇目標會創建一種以前未知的攻擊方法。研究人員還發布了一個概念證明(PoC),展示了任意內核內存泄漏,成功地披露了易受攻擊系統的根哈希密碼。Grsecurity的研究人員披露了影響AMD CPU的漏洞的詳細信息,并進行了詳細的技術分析和驗證。目前三大CPU廠商均已發布相關公告、緩解措施及安全建議。
這次新的Spectre漏洞被發現,最危險的變種被稱為Spectre v2或Spectre BTI(分支目標注入)。受影響的CPU制造商,如英特爾和Arm,一直在開發硬件緩解措施以防止此類攻擊。
幽靈和熔斷漏洞最早發布于2018年1月3日,當時Google Project Zero(GPZ)團隊安全研究員Jann Horn在其團隊博客[1]中爆出CPU芯片的兩組漏洞,分別是Meltdown與Spectre。Meltdown對應CVE-2017-5754(亂序執行緩存污染),Spectre對應CVE-2017-5753(邊界檢查繞過)與CVE-2017-5715(分支目標注入)。這兩組漏洞早在2017年6月就已經由GPZ團隊向英特爾提交。
自2018年1月Spectre和Meltdown(熔斷)漏洞披露以來,研究人員一直在研究處理器的安全性,并發現了其他幾種側信道攻擊方法。這些方法通常可以允許對目標機器進行本地訪問的攻擊者從內存中獲取少量潛在敏感數據。
然而,阿姆斯特丹自由大學的研究人員本周披露了他們所描述的“Spectre v2 的擴展”的細節。被稱為分支歷史注入(BHI)和Spectre-BHB的新變體繞過了這些硬件緩解措施。研究人員發現的另一種略有不同的變體稱為幀內模式 BTI (IMBTI)。
研究人員解釋說,由英特爾和Arm實施的緩解措施按預期工作,但殘留的攻擊面比供應商最初假設的要重要得多。
他們通過創建他們所描述的“在現代英特爾CPU上泄漏任意內核內存的整潔的端到端漏洞利用”來展示他們的發現。他們還發布了一段視頻,展示了該漏洞的實際應用。
英特爾發布了一份公告和一份技術文檔,描述了新漏洞,該芯片制造商將其跟蹤為CVE-2022-0001和CVE-2022-0002。這些缺陷的嚴重性等級為“中等”。

英特爾表示,未來的處理器預計將包括針對BHI攻擊的硬件緩解措施,同時它已經描述了幾種軟件緩解選項。
Arm已發布公告、常見問題解答、知識庫文章以及描述漏洞和緩解措施的論文。Arm將Spectre-BHB漏洞跟蹤為 CVE-2022-23960。

AMD處理器似乎不受Spectre-BHB的影響。然而,本周grsecurity的研究人員披露了影響AMD CPU的漏洞的詳細信息。該問題被跟蹤為CVE-2021-26341,與分支指令的推測行為有關,并可能導致數據泄漏。
grsecurity公司的研究文章認為,AMD分支(錯誤)預測器如何不自覺地為推測性執行攻擊開辟了新的可能性,并了解利用它們需要多少時間。另一個教訓是,即使是死的或無法訪問的代碼也不能盲目地被視為安全和忽略。由于即使是微不足道的直接無條件分支也很容易被某些CPU錯誤預測,因此程序執行可以去往以前沒有CPU去過的地方。
AMD已于3月8日已發布針對CVE-2021-26341的公告,以及一份白皮書,詳細介紹了管理其處理器推測的軟件技術。

9日,這三個CPU制造商發布了公告,并附有緩解更新和安全建議,以解決最近發現的問題,這些問題允許泄露敏感信息,盡管基于隔離的保護。推測執行技術旨在通過提前運行一些任務(分支預測)來優化CPU性能,以便在需要時獲得信息。