我发现Vista的数据执行保护DEP经常让我的程序崩溃,请问这个是干嘛的
Data Execution Protection应该知道缓冲区溢出漏洞吧,像冲击波、振荡波这种病毒就是利用缓冲区溢出进行攻击的。在Intel和AMD的新处理器中都通过硬件实现了对这些漏洞的根本防御,DEP就是通过软件的办法对它们进行防御。 DEP的原理就是防止在数据区域执行代码(一般缓冲区漏洞的利用方式),但是某些正常的程序也会用到类似的办法来保护自己,你可以将出现错误的程序添加到排除列表(一般不会出问题,默认只对系统服务采用DEP)。 可以试试以下方法: 1、在系统属性中修改(这种方法并不是完全关闭数据执行保护)在“我的电脑”单击右键,选择“属性→高级→(性能)设置→数据执行保护...全部
Data Execution Protection应该知道缓冲区溢出漏洞吧,像冲击波、振荡波这种病毒就是利用缓冲区溢出进行攻击的。在Intel和AMD的新处理器中都通过硬件实现了对这些漏洞的根本防御,DEP就是通过软件的办法对它们进行防御。
DEP的原理就是防止在数据区域执行代码(一般缓冲区漏洞的利用方式),但是某些正常的程序也会用到类似的办法来保护自己,你可以将出现错误的程序添加到排除列表(一般不会出问题,默认只对系统服务采用DEP)。
可以试试以下方法: 1、在系统属性中修改(这种方法并不是完全关闭数据执行保护)在“我的电脑”单击右键,选择“属性→高级→(性能)设置→数据执行保护”,选择“为除下列选定程序之外的所有程序和服务启用DEP”,再单击“添加”,定位到某应用程序的安装目录,找到该程序的可执行文件,将其添加进来。
一般地,这个程序就能正常运行了。重启电脑后设置生效。2、直接修改Boot。ini文件(这将彻底关闭数据执行保护)在WinXP SP2系统所在分区根目录下找到Boot。ini文件。注意看,它多出了一个“NoExecute”参数,而前面在系统属性中对DEP的修改也会反映在这个参数上。
在“数据执行保护”项中只有两个选项,反映在Boot。ini文件中就是“NoExecute”参数的“Optin”和“Opton”两个值。可是,有些应用程序或驱动程序的兼容性不强,纵使在“数据执行保护”中将其“放行”,它还是不能正常运行,比如:3721的上网助手、ZoneAlarm Pro等,这就要靠“NoExecute”参数的其他两个值了。
NoExecute=AlwaysOff相当于关闭EVP和DEP功能,此时,这两项功能将全部丧失。由这项功能引起的兼容性问题即全部解决,但少了一堵安全保护的墙。收起