IIS Worker Process问题及DEP安全保护

  • 今天登录服务器,弹出一个窗口,提示文字是“IIS Worker Process 遇到了一个问题,需要关闭”。因为之前一直没有遇到过这个问题,所以我知道这是我站网站速度诊断平台出现的问题,因为我站昨天刚好上线该平台。

    这个问题,我在本机测试时并没有遇到过,因此这应该与访问人数有关,而程序方面也有问题。

    解决方法

    我在网上查了下,得到解决的方法。分享如下:

    1、在桌面上右键点击“我的电脑”--“属性”

    2、切换到“高级”标签--点击性能项的“设置”按钮

    3、切换到“数据执行保护”标签,选中“只为关键windows程序和服务启用数据保护”

    问题产生的原因

    IIS运行过程中触发了数据执行保护(DEP)错误。DEP的功能是防止恶意代码通过缓冲区溢出来进行攻击,所以系统就报告了这个错误。

    名词解释:DEP

    DEP(Data Execution Prevention)即“数据执行保护”,这是Windows的一项安全机制,主要用来防止病毒和其他安全威胁对系统造成破坏。微软从Windows XP SP2引入了该技术,并一直延续到此后的Windows Server 2003、Windows Server 2008中。

    DEP的安全机制

    可以说,溢出是操作系统(应用软件)永远的痛。所谓溢出主要指缓冲区溢出,就是利用系统(应用软件)漏洞从只有Windows和其他程序可以使用的内存位置执行恶意代码从而达到控制系统的目的。

    缓冲区溢出攻击经常在其它程序的内存缓冲区写入可执行的恶意代码,然后诱骗程序执行恶意代码。使用DEP的目的是阻止恶意插入代码的执行,其运行机制是,Windows利用DEP标记只包含数据的内存位置为非可执行(NX),当应用程序试图从标记为NX的内存位置执行代码时,Windows的DEP逻辑将阻止应用程序这样做,从而达到保护系统防止溢出。

    如何关闭DEP保护

    当DEP运行在保护级别为2时,由于需要在处理器和系统内存运行所有的DEP检查,会影响系统性能,使得系统运行将会变慢一些,所以在某些情况下我们可以考虑完全关闭DEP保护。关闭方法可按照本文所述操作。

时间: 2024-11-08 05:12:58

IIS Worker Process问题及DEP安全保护的相关文章

解决"System.AccessViolationException”类型的未经处理的异常在 未知模块(IIS Worker Process 已停止工作)导致无法连接远程数据库的问题

解决方法: 用管理员身份运行CMD,输入netsh winsock reset并回车(注意,必须是已管理员身份运行,这个重置LSP连接) 解决"System.AccessViolationException"类型的未经处理的异常在 未知模块(IIS Worker Process 已停止工作)导致无法连接远程数据库的问题

在win 7 vs2013下 web 调试 出现“ iis Express Worker Process 已停止工作”错误

在win 7 vs2013下 web 调试 出现“ iis Express Worker Process 已停止工作”错误: 如下图: 最终解决方案如下: 用管理员身份运行CMD,输入netsh winsock reset并回车(注意,必须是已管理员身份运行,这个重置LSP连接) 参考:http://bbs.csdn.net/topics/390623185

VS2013调试时,IIS Express Worker Process 已停止工作

之前调试都没有报错的,今天突然报错了,然后网上找了下资料,很快解决了问题 这是我报错的提示 解决办法: 用管理员身份运行CMD,输入netsh winsock reset并回车(注意,必须是已管理员身份运行,这个重置LSP连接)

DEP受保护的问题(尤其是Outlook)

We see this issue quite regularly as we use MAPI and lots of our users run our application on TS. Office (and Outlook in particular) is not DEP safe on Windows 2008 R2. http://support.microsoft.com/kb/2028367 If you're wondering why this doesn't occu

[转]Publishing and Running ASP.NET Core Applications with IIS

本文转自:https://weblog.west-wind.com/posts/2016/Jun/06/Publishing-and-Running-ASPNET-Core-Applications-with-IIS#DoyouneedIIS? When you build ASP.NET Core applications and you plan on running your applications on IIS you'll find that the way that Core ap

IIS 组成

HTTP.sys      http.sys 侦听来自网络的 HTTP 请求,将它们传递到 IIS 并返回响应. 它是一种可以从命令行停止和启动的服务. "NET STOP HTTP" 停止 HTTP 服务和 "NET START HTTP" 启动 HTTP 服务. 我们可以使用 NETSH HTTP 修改 http.sys 设置,如下所述. NETSH HTTP 命令更新此处找到的 http.sys 注册表设置. 当您修改 http.sys 设置时,您需要通过运行

Application Pool Identities

Introduction Whether you are running your site on your own server or in the cloud, security must be at the top of your priority list. If so, you will be happy to hear that IIS has a security feature called the application pool identity. This feature

Asp.Net网站的的编译与发布原理

如下所示创建一个简单的asp.Net Web应用程序 在VS中生成解决方案之后,可以在项目的目录下看到以下的文件: 当我们通过VS将网站发布出去之后,可以看到,最后生成的文件,如下图所示: 我们可以发现,发布之后的项目文件夹内少了很多文件,其实这是VS将aspx页面和一般处理程序以及Global文件等的后台文件都编译成了一个dll文件,这个dll文件存放在bin文件夹内: 对这个程序集进行反编译之后,可以看到我们写的后台代码都编译到这个dll文件中了 这个是一般处理程序的ProcessReque

.NET应用程序性能优化

1.asp.net进程配置优化 asp.net进程模型进行一些进程级别设置,比如asp.net使用多少线程,超时时间,多少请求等待输入输出工作的完成等等.默认情况下有很多限制.现在硬件越来越便宜,G级内存的服务器普遍存在,所以现在进程配置的优化可以得到更多的系统资源和扩展. Asp.net 1.1的mashine.config配置是这样的 <!-- processModel Attributes: enable="[true|false]" - Enable processMod