跳至內容

SMAP

架構參考資料Feex

亦稱為 OS Guard (SMAP)

管理員模式存取防護(Supervisor-Mode Access Prevention,SMAP)限制管理員資料存取使用者可存取的頁面,除非符合架構的覆寫條件。它與通常被冠以 Intel OS Guard 品牌的 SMEP 不同。

您需要瞭解的資訊

管理員模式存取防護(Supervisor-Mode Access Prevention,SMAP)限制管理員資料存取使用者可存取的頁面,除非符合架構的覆寫條件。它與通常被冠以 Intel OS Guard 品牌的 SMEP 不同。

運作方式

作業系統可啟用 SMAP,以便讓非預期的特權資料存取使用者對應時觸發錯誤(fault)。依據架構規則,刻意複製使用者資料的核心常式會使用受到嚴格控制的存取視窗。執行權限則是另一個獨立考量,由 SMEP 與 NX 等機制處理。

適用場景

接收使用者指標的核心常式必須使用其作業系統既有的使用者複製機制來進行驗證與存取。SMAP 是圍繞此類存取的防禦邊界,而不是長度檢查、生命週期處理或正確特權決策的替代品。

如何檢查支援與啟用狀態

CPUID.07H.00H:EBX 第 20 位元列舉 SMAP,而 CR4.SMAP 則控制其啟用狀態。SMEP 使用不同的位元。請查閱作業系統說明文件與狀態介面;切勿將停用此防護作為一般的應用程式疑難排解步驟。

能力、啟用狀態與強制執行狀態必須分別檢查。處理器可能支援某項保護,但 OS、應用程式或虛擬機器原則並未予以啟用。資料庫支援欄位並非執行中系統的證明。

該功能未涵蓋的範疇

匯入的標籤 OS Guard (SMAP) 不應被視為 SMEP 與 SMAP 完全相同或兩者皆已啟用的證據。處理器能力並不能確立特定核心、客體系統或驅動程式的保護狀態。

實務中的相容性與效能

使 OS、韌體和受影響的執行階段保持最新。若保護機制引發相容性問題,請先使用廠商診斷工具和受支援的更新。廣泛的保護開關可能會影響無關的應用程式,應遵循明確的部署與復原原則。

實用驗證檢查清單

  1. 記錄所涉及的確切處理器或平台型號,以及應用程式、OS 和執行階段版本。保留實際錯誤或需求的確切措辭。
  2. 檢查該確切型號的原廠參考資料,然後在程式執行的環境中檢查有效功能和啟用狀態。
  3. 比對所選二進位檔或後端的所有需求。僅憑名稱相似的功能、別名或廣泛的技術標籤是不夠的。
  4. 確認應用程式已選擇預期的實作方式。當需求未獲滿足時,請使用其記載的診斷工具和受支援的後備機制。
  5. 一次進行一項受支援的變更,並重複執行相同的負載。隨時保留原始設定和復原途徑。

如果列出該功能但軟體無法使用

從確切發生失敗的元件著手。硬體資料庫描述的是記錄的硬體能力;作業系統或 Hypervisor 可能呈現不同的有效環境。非法指令錯誤同樣需要調查實際出錯的指令和二進位建置版本,因為損毀或無關的不受支援指令也可能產生類似的症狀。

安裝適用於該確切平台的受支援應用程式、驅動程式或執行階段版本,並在需要時使用廠商記載的基準建置版本或後備建置版本。軟體更新無法無中生有地創造處理器所缺乏的指令。韌體與安全性原則的變更應遵循系統製造商的程序和復原計劃,而非泛用的最佳化偏方。

本說明的來源與範圍

Intel 64 和 IA-32 架構軟體開發者手冊 · 與暫態執行攻擊相關的 Intel 安全功能

這些參考資料確立了架構行為和軟體需求。它們不會獨立驗證連結硬體型號頁面上的每個功能數值。有關型號支援,請使用該頁面的製造商實證並檢查有效系統組態。本文不提供效能基準測試、認證或獨立審查日期。

來源與驗證

編輯權限:Feex。未記錄獨立審查日期。 我們的研究方式.

這篇文章實用嗎?

只要回答「是」或「否」即可。您也可以依意願選擇原因,或附上簡短說明。

這篇文章實用嗎?