資料執行防止 (DEP) 是一群執行其他的檢查,以防範惡意程式碼的剝削利用的記憶體的硬體和軟體技術。
硬體強制 DEP 會將處理序中的所有記憶體位置都標示為 [非可執行檔中,除非位置明確包含可執行程式碼。一種惡意的程式碼攻擊會嘗試插入,並從非可執行檔的記憶體位置執行程式碼。Dep 會攔截它們,並引發例外狀況,以避免這些攻擊。
本文將告訴您使用硬體強制執行 DEP 的需求本文也說明如何確認該 DEP 在使用 Windows 的硬體。
使用硬體強制 DEP 的需求
若要使用硬體強制 DEP,您必須符合下列所有條件:
- 電腦的處理器必須支援硬體強制執行 DEP
許多最新的處理器支援硬體強制執行 DEP進階微裝置 (AMD)] 與 [Intel 公司已定義,並出貨與 DEP 相容的 Windows 相容架構此處理器的支援可能稱為 NX (否執行) 或 XD (執行停用) 技術。如果要判斷您的電腦的處理器是否可支援硬體強制 DEP,請連絡您的電腦製造商。 - 在 BIOS 中,必須先啟用硬體強制 DEP。
在某些電腦上,您可以停用 BIOS 中的硬體強制 DEP 的處理器支援。您絕不能停用這項支援。取決於您的電腦製造商,以停用這項支援選項可能標示成 「 資料執行防止,""XD,""執行關閉,"或"NX"。 - 電腦必須擁有 Service Pack 2 的 Windows XP 或 Windows Server 2003 安裝的 Service Pack 1。
附註32 位元版本和 64 位元版本 Windows 支援硬體強制執行 DEP Windows XP 媒體中心版本 2005年,Microsoft Windows XP Tablet PC 版 2005年包括的所有功能和 Windows XP SP2 的元件。 - 電腦上的程式時,必須啟用硬體強制 DEP。
在 64 位元版本的 Windows 中,原生 64 位元的程式永遠會啟用硬體強制 DEP。不過,取決於您的設定,硬體強制 DEP 可能會停用 32 位元程式。
如需有關 DEP,DEP 組態及清單中的 Windows 作業系統的支援硬體 DEP,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文:
875352
(http://support.microsoft.com/kb/875352/
)
在 Windows XP Service Pack 2、 Windows XP Tablet PC 版 2005 和 Windows Server 2003 的 「 資料執行防止 (DEP) 」 功能的詳細的說明
如需有關如何設定與 Service Pack 2 的 Windows XP 中的記憶體保護資訊,請造訪下列 Microsoft 網站:
如何確認硬體 DEP 正處於視窗
若要確認的硬體 DEP 運作在 Windows 中,請使用下列方法之一。
方法 1: 使用 Wmic 命令列工具
您可以使用 Wmic 命令列工具來檢查 DEP 設定。如果要判斷是否有可用的硬體強制 DEP,請依照下列步驟執行:
- 按一下 開始按一下 執行型別 cmd 在 開啟 方塊中,然後再按一下 [確定].
- 在命令提示字元中,輸入下列命令,並再按 ENTER 鍵:
wmic OS 取得 DataExecutionPrevention_Available
輸出為"TRUE",硬體強制 DEP 可用。
如果要判斷目前的 DEP 支援原則,請依照下列步驟執行。
- 按一下 開始按一下 執行型別 cmd 在 開啟 方塊中,然後再按一下 [確定].
- 在命令提示字元中,輸入下列命令,並再按 ENTER 鍵:
wmic OS 取得 DataExecutionPrevention_SupportPolicy
傳回的值會是 0、 1、 2 或 3。這個值會對應到其中一項描述於下列表格中的 DEP 支援原則。
摺疊此表格展開此表格
| DataExecutionPrevention_SupportPolicy 屬性值 | 原則層級 | 描述 |
| 2 | OptIn(預設設定) | 唯一的 Windows 系統元件和服務有套用 DEP |
| 3 | OptOut | DEP 會啟用所有處理程序。系統管理員可以手動建立一份沒有套用 DEP 的特定應用程式 |
| 1 | AlwaysOn | 所有處理程序已啟用 |
| 0 | AlwaysOff | DEP 無法進行任何處理程序 |
附註若要確認 Windows 正在執行與啟用 DEP 的硬體,檢查
Win32_OperatingSystem類別中的 [
DataExecutionPrevention_Drivers ] 屬性。在某些系統設定中,硬體 DEP 會被停用,使用
/nopae或
/ 執行切換 Boot.ini 檔案中。若要檢查這個屬性,請在命令提示字元中輸入下列命令:
wmic OS 取得 DataExecutionPrevention_Drivers
方法 2: 使用圖形化使用者介面
若要使用圖形化使用者介面,以判斷是否有提供 DEP,請依照下列步驟執行:
- 按一下 開始按一下 執行型別 wbemtest 在 開啟 方塊中,然後再按一下 [確定].
- 在 Windows 管理檢測軟體測試人員 對話方塊中,按一下 連線.
- 在上方的方塊 連線 對話方塊中,型別 root\cimv2然後按一下 連線.
- 按一下 列舉例項.
- 在 類別資訊 對話方塊中,型別 Win32_OperatingSystem 在 輸入超級類別名稱 方塊中,然後再按一下 [確定].
- 在 查詢結果 對話方塊方塊中,按兩下最上層的項目。
附註這個項目開頭為"Win32_OperatingSystem.Name=Microsoft...」 - 在 物件編輯器 對話方塊方塊中,找出DataExecutionPrevention_Available屬性,在 屬性 區域。
- 連按兩下 DataExecutionPrevention_Available.
- 在 屬性編輯器 對話方塊] 方塊中,記下的值 值 方塊中。
如果值為 TRUE,硬體 DEP 使用。
注意
- 若要判斷正在執行的 DEP 的模式,請檢查Win32_OperatingSystem類別中的 [ DataExecutionPrevention_SupportPolicy ] 屬性。方法 1 的結尾表格描述每個支援的原則值。
- 若要確認該視窗中啟用 DEP 的硬體,請檢查Win32_OperatingSystem類別中的 [ DataExecutionPrevention_Drivers ] 屬性。在某些系統設定中,硬體 DEP 會被停用,使用/nopae或/ 執行切換 Boot.ini 檔案中。
本文中所討論的協力廠商產品並非由 Microsoft 製造。Microsoft 不會做任何擔保、 默示或其他有關這些產品的可靠性。
文章編號: 912923 - 上次校閱: 2013年2月11日 - 版次: 7.0
這篇文章中的資訊適用於:
- Microsoft Windows Server 2003 Service Pack 1?應用於:
- Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
- Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
- Microsoft Windows Server 2003, Standard Edition (32-bit x86)
- Microsoft Windows Server 2003, Web Edition
- Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
- Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
- Microsoft Windows XP Media Center Edition 2005
| kbsecurity kbexpertiseinter kbhowto kbinfo kbmt KB912923 KbMtzh |
機器翻譯重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:
912923
(http://support.microsoft.com/kb/912923/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。