快捷搜索:  

ASP.NET虚拟主机安全漏洞解决方案(2)



  工作进程隔离模式利用 IIS 6.0 的重新设计的体系结构并且使用工作进程的核心组件。IIS 5.0 隔离模式用于依赖 IIS 5.0 的特定功能和行为的应用程序。该隔离模式由 IIs5IsolationModeEnabled 配置数据库属性指定。

  您所选择的 IIS 应用程序隔离模式对性能、可靠性、安全性和功能可用性都会产生影响。工作进程隔离模式是 IIS 6.0 操作的推荐模式,因为它为应用程序提供了更可靠的平台。工作进程隔离模式也提供了更高级别的安全性,因为运行在工作进程中的应用程序的默认标识为 NetworkService。

  以 IIS 5.0 隔离模式运行的应用程序的默认标识为 LocalSystem,该标识允许访问并具有更改计算机上几乎所有资源的能力。

IIS 功能 IIS 5.0隔离模式宿主/组件 工作进程隔离模式宿主/组件
工作进程管理 N/A Svchost.exe/WWW 服务
工作进程 N/A W3wp.exe/工作进程
运行进程内ISAPI 扩展 Inetinfo.exe W3wp.exe
运行进程外ISAPI 扩展 DLLHost.exe N/A(所有的 ISAPI 扩展都在进程内)
运行ISAPI筛选器 Inetinfo.exe W3wp.exe
HTTP.sys 配置 Svchost.exe/WWW 服务 Svchost.exe/WWW 服务
HTTP 协议支持 Windows内核/HTTP.sys Windows 内核/HTTP.sys
IIS配置数据库 Inetinfo.exe Inetinfo.exe
FTP Inetinfo.exe Inetinfo.exe
NNTP Inetinfo.exe Inetinfo.exe
SMTP Inetinfo.exe Inetinfo.exe
 
  由此可见,我们只能使用工作进程隔离模式解决.net的安全问题。



默认情况下,IIS 6.0在工作进程隔离模式下运行,如图五所示。在这种模式中,对于每一个Web应用,IIS 6.0都用一个独立的w3wp.exe的实例来运行它。w3wp.exe也称为工作进程(Worker Process),或W3Core。


  可靠性和安全性。可靠性的提高是因为一个Web应用的故障不会影响到其他Web应用,也不会影响http.sys,每一个Web应用由W3SVC单独地监视其健康状况。安全性的提高是由于应用程序不再象IIS 5.0和IIS 4.0的进程内应用那样用System帐户运行,默认情况下,w3wp.exe的所有实例都在一个权限有限的“网络服务”帐户下运行,如图六所示,必要时,还可以将工作进程配置成用其他用户帐户运行。


  对,这里,这里就是我们解决的核心。

  我们把每一个网站都分配一个独立的应用程序池,并赋予不同的权限。不就能解决这个问题了吗?

  具体如何做呢,下面我就针对建立一个网站来做一个示范:

  首先,我们为网站创建两个用户(一个是app_test_user、密码为appuser,一个是iis_test_user、密码为iisuser)

  1. 打开 计算机管理器

  2. 单击控制台树中的用户→计算机管理→系统工具→本地用户和组→用户

  3. 单击“操作”菜单上的“新用户”输入用户名为。app_test_user、密码为appuser

  4. 在对话框中键入适当的信息。

  5. 选中复选框:

   用户不能更改密码

   密码永不过期

  6. 单击“创建”,然后单击“关闭”。


  按照此方法在创建iis_test_user账户

  然后分别把app_test_user添加到iis_wpg组,把iis_test_user添加到Guests组。删除其他组。

顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论