繁体   English   中英

System.Diagnostics将允许用户杀死IIS7中自己的进程

[英]System.Diagnostics will allow user kill their own process in IIS7

IIS7中的托管客户可以使用asp.net和System.Diagnostics列出所有系统的进程ID。 他们还可以杀死属于自己的应用程序池的应用程序。 对于共享主机环境,IIS7中似乎存在很大的安全问题。 关于如何防止普通用户访问System.Diagnostics的任何建议? 如何仅将其限制为管理员?

与Windows 2003和IIS6不同,许多共享的Windows 2008 / IIS7托管环境为客户提供了专用的应用程序池和完全信任。

尽管客户可以启动并杀死他们自己的进程(包括他们自己的工作进程),但前提是该网站所运行的帐户的身份已被锁定,那么就不会造成真正的危害。 如果客户的代码不断地杀死自己的应用程序池(除了强制重新启动工作进程以允许Application_Start类型的事件在需要重新加载某些设置的情况下触发),这对客户有什么好处?

我在一家共享主机托管公司工作,实际上,我们通过管理系统为客户提供了启动,停止和回收其专用池的能力,他们在代码中所做的几乎是同一回事。

可能发生的最坏情况是,客户启动了一个消耗大量内存或CPU的进程(但即使这样做,他们自己的ASP.NET代码也可能失控)。 我们会持续监控服务器是否存在此类异常行为,并且可以在收到警报后的2-3分钟内追查罪魁祸首。 最终用户将得到友好的警告,并被告知不要再次执行此操作,如果这样做,则其站点将立即关闭。

我唯一担心的是托管者是否在完全信任的情况下运行共享池,但是如果这样做,则他们还有其他安全难题要克服,进程终止将是他们的后顾之忧。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM