SGX 旨在幫助保護處理器中保存的用戶數據,即便整個計算機都已被攻擊者所控制。但實際上,SGX 是在芯片上創建了一個用于保存敏感的數據的安全內存區域,這部分內容無法被惡意代碼直接讀取。
雖然 SFX 之前被認為能夠抵御投機性執行攻擊,例如今年早些時候曝光的‘熔毀’(Meltdown)和‘幽靈’(Spectre)漏洞。
但 Foreshadow 漏洞不僅利用了類似的技術,還可以訪問受 SGX 保護的 L1 緩存、甚至提取目標的私有證明密鑰 —— 這也是用于 SGX 完整性檢查的加密密鑰。
鑒于 SGX 內置隱私保護,外界很難知曉由誰簽署了“飛地”。而知曉了“證明密鑰”,就可以允許創建“看似真實”的 SGX 簽名 —— 但事實并非如此。
由于證明密鑰被泄露,意味著同一生態系統中的多臺計算機‘可能同時受到攻擊’,而不僅限于一臺。
推測性執行攻擊,依賴于處理器猜測將要執行的操作,并為之做好準備。
這么做的原意是為了節省資源,但同時,其產生的信息可能對攻擊者插入自有指令起到了實質性作用,從而獲得對系統的控制。
此外,研究人員發現了兩個被叫做“Foreshadow-NG”的類似變體。它們也會攻擊 SMM 代碼、操作系統、管理程序軟件、以及其它微處理器。
研究人員稱,這可能會影響云服務上的虛擬機,包括使用惡意訪客 VM 讀取虛擬機管理程序的內存、甚至是屬于另一臺虛擬機的內存。
最早發現這一漏洞的,是來自 KU Leuven 的研究人員。其對 Meltdown 和 Spectre 展開了獨立研究,并于 2018 年 1 月 3 日向英特爾通報。