原文地址:http://support.microsoft.com/kb/875352/zh-cn
概要
数据执行保护 (DEP) 是一套软硬件技术,能够在内存上执行额外检查以帮助防止在系统上运行恶意代码。在 Microsoft Windows XP Service Pack 2 (SP2) 和 Microsoft Windows XP Tablet PC Edition 2005 中,由硬件和软件一起强制实施 DEP。
DEP 的主要优点是可以帮助防止数据页执行代码。通常情况下,不从默认堆和堆栈执行代码。硬件实施 DEP 检测从这些位置运行的代码,并在发现执行情况时引发异常。软件实施 DEP 可帮助阻止恶意代码利用 Windows 中的异常处理机制进行破坏。
DEP 的主要优点是可以帮助防止数据页执行代码。通常情况下,不从默认堆和堆栈执行代码。硬件实施 DEP 检测从这些位置运行的代码,并在发现执行情况时引发异常。软件实施 DEP 可帮助阻止恶意代码利用 Windows 中的异常处理机制进行破坏。
简介
更多信息
硬件实施 DEP
除了显式包含可执行代码的内存位置外,硬件实施 DEP 将进程中的所有内存位置均标记为不可执行。有一类攻击是尝试在不可执行的内存位置插入代码并运行它。DEP 可通过截获这些攻击并引发一个异常来帮助阻止这些攻击。硬件实施 DEP 依靠处理器硬件来使用属性标记内存,此属性指明不能从该内存执行代码。DEP 以虚拟内存页面为单位运行,通常情况下更改 Page Table Entry (PTE) 中的位来标记内存页面。
处理器体系结构确定 DEP 在硬件中的实现方式以及 DEP 标记虚拟内存页面的方式。但是,在从使用合适属性集标记的页面执行代码时,支持硬件实施 DEP 的处理器可能引发异常。
Advanced Micro Devices (AMD) 和 Intel 已经定义并发布了与 Windows 兼容的体系结构,该体系结构与 DEP 兼容。
从 Windows XP SP2 开始,Windows 的 32 位版本使用下列功能之一:
• | 由 AMD 定义的 No-Execute Page-Protection (NX) 处理器功能。 |
• | 由 Intel 定义的 Execute Disable Bit (XD) 功能。 |
注意:由于 64 位内核识别地址窗口化扩展插件 (AWE),因此在 Windows 的 64 位版本中没有单独的 PAE 内核。
有关 Windows Server 2003 中 PAE 和 AWE 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: