硬體安全
下列關於部分CPU出現問題的Meltdown漏洞的原理,何者正確?
- ACPU因熱而熔化,資料洩漏到外部
- B即使是讀取無權限的核心記憶體的指令,在因權限檢查而產生的例外確定之前,值就已被推測讀取,依賴該值的痕跡會殘留在快取中
- C核心記憶體對所有行程公開的設定錯誤
查看答案與解析
正確答案:B. 即使是讀取無權限的核心記憶體的指令,在因權限檢查而產生的例外確定之前,值就已被推測讀取,依賴該值的痕跡會殘留在快取中
當使用者程式想讀取核心記憶體時,原本會因權限違規而產生例外,得不到值。然而在受影響的CPU上,到例外確定為止的短暫期間,使用所讀取之值的後續指令會被推測執行,對應該值的位置被載入快取。即使例外使結果被捨棄,仍可藉由快取旁路推測出核心的資料。
- A. 並非實際熔化。
- B. 正確。問題在於權限檢查與推測讀取的順序。
- C. 不是設定錯誤,而是CPU實作的問題。