最近 英特爾發布了有關一類新數據洩漏的詳細信息 通過處理器的微架構結構,它允許通過操作 MMIO(內存映射輸入輸出)機制來確定在其他 CPU 內核中處理的信息。
例如: 漏洞允許從其他進程中提取數據、英特爾 SGX 飛地或虛擬機。 這些漏洞僅針對 Intel CPU; 第三方處理器不受漏洞影響。
已經確定了三種方法。 通過 MMIO 提取殘差數據:
- DRPW (部分設備寄存器寫入,CVE-2022-21166) - 對某些 MMIO 寄存器的寫入處理不正確的問題。 如果寫入的數據大小小於日誌的大小,則填充緩衝區中的剩餘信息也會復製到日誌中。 因此,啟動對 MMIO 寄存器的不完整寫入操作的進程可能會收到在其他 CPU 內核上執行操作後留在微架構緩衝區中的數據。
- SBDS (共享緩衝區數據採樣,CVE-2022-21125)- 內核綁定的填充緩衝區殘留數據洩漏,由於從公共中間緩衝區移動到所有內核而被丟棄。
- SBDR (從共享緩衝區讀取數據,CVE-2022-21123):該問題與 SBDS 類似,但不同之處在於殘留數據可以進入應用程序可見的 CPU 結構。 SBDS 和 SBDR 問題僅發生在客戶端處理器和 Intel Xeon E3 系列服務器上。
一次攻擊 需要訪問 MMIO,例如,可以在為攻擊者控制的客戶系統提供訪問 MMIO 的能力的虛擬化系統中獲得。 使用獨立英特爾 SGX(軟件保護擴展)飛地的系統也可能需要此修復程序。
阻止該漏洞需要固件更新和 方法的使用 額外的軟件保護 基於使用 VERW 指令在從內核返回到用戶空間或將控制權轉移到客戶系統時清除微架構緩衝區的內容。
也e 使用類似的保護來阻止攻擊 先前確定的 MDS(微架構數據採樣)、SRBDS(特殊記錄緩衝區數據採樣)和 TAA(事務異步中止)類別。
這些漏洞不是瞬時執行攻擊。 但是,這些漏洞可以將陳舊的數據傳播到內核填充緩衝區,以後可以通過未緩解的瞬態執行攻擊推斷出數據。
這些漏洞的緩解措施包括微碼更新和軟件更改的組合,具體取決於平台和使用模型。 其中一些緩解措施類似於用於緩解微架構數據採樣 (MDS) 或用於緩解特殊記錄緩衝區數據採樣 (SRBDS) 的緩解措施。
這些漏洞已被分配以下常見漏洞和暴露標識符 (CVE) 和版本 3.1 分數
在微碼方面,2022.1 月英特爾 CPU 微碼更新 (IPU XNUMX) 中提出了實現安全所需的更改。
在 Linux 內核中,包含保護 針對受支持的不同版本中的一類新攻擊。
文件“/sys/devices/system/cpu/vulnerabilities/mmio_stale_data”被添加到Linux內核中,以檢查系統對MMIO漏洞的敏感性並評估某些保護機制的活動。
精華 已識別的漏洞類別 是某些操作導致複製或移動在其他 CPU 內核上執行後留下的數據 從一個微架構緩衝區到另一個。 MMIO 中的漏洞允許將這些殘留數據從隔離的微架構緩衝區傳輸到應用程序可見的寄存器或 CPU 緩衝區。
最後,如果你有興趣能夠了解更多,可以查閱詳情 以下鏈接.