问:我正在部署公司 IIS 5 上的 Web 站点,而且一直在阅读有关保护 IIS 安全方面的资料。我不断读到许多有关“空会话"漏洞方面的描述。什么是空会话?为什么它们会成为 IIS 的漏洞?
答:空会话应该是一个很大的话题,但是我想大胆地提炼出几个覆盖其中大部分内容的重要概念。空会话 是指计算机连接到另一台计算机时不需要身份验证。因此,它又称为“匿名连接",但不要将它与 IIS 中的匿名身份验证相混淆。IIS 中的匿名身份验证是指用户无需提供凭证便可以访问 Web 资源(通过 IIS)。尽管用户无需提供凭证就会自动分配到一个 IUSR_<服务器名> 用户帐户,但是他们在 IUSR_<服务器名> 帐户安全环境中使用服务器的方式,同普通用户没有区别。
然而匿名连接则完全不同。匿名连接为 Microsoft 操作系统提供一种查询其他系统上可用资源的途径。例如,获取网络邻居列表、某系统上的用户和组列表、共享给网络用户使用的文件夹,或是 netbios 服务列表,所有这些都可通过匿名连接来获取。
尽管匿名连接的设计初衷是用于计算机与计算机或是服务与服务之间的连接,攻击者会企图利用这种功能来查找所有那些默认情况下请求者可以随意获取的信息,例如主机名、域名、共享资源、用户名或是其他细节,而这些信息是您根本不希望攻击者知道的。有了这些信息,攻击者就很容易找出服务器或网络上潜在的薄弱之处。
可以采取多种有效的方法来控制对匿名连接的访问。第一种方法是禁止对防火墙处 139 以及 145 端口的访问。这可以防范那些利用匿名连接的攻击。您还可以将本地策略“对匿名连接的额外限制"(Additional Restrictions for anonymous connections)的设置更改为“不允许 SAM 帐户和共享的匿名枚举"或“无显式权限不可访问"(No access without explicit permissions)。如果设置为“无显式权限不可访问",那么事实上等同于关闭匿名连接。在连接至非信任网络的 IIS 服务器上,我强烈建议采用这种设置,这在所有 Windows 2000、Windows XP 和 Windows Server 2003 网络上都非常有效。
更好的一种方法是禁用网卡的“Microsoft 网络的文件和打印机共享"功能。如果您不需要 IIS 服务器上提供网络共享功能,那么这种方法对 IIS 没有任何负面影响。我这里所说的网络共享,是指通过右键单击某文件夹,然后选择“共享"选项卡所实现的共享,而不是指 IIS 中的虚拟目录。注意,您仍然可以连接至其他禁用了文件和打印机共享功能的服务器上的 UNC 路径名,但是为了能够通过网络进行备份或是使用 MMC 进行远程管理,通常您自己的服务器需要启用文件和打印机共享功能。
最后,可以考虑在 IIS 服务器上使用 IPSEC 进行端口筛选。如果防火墙存在漏洞,那么您肯定不希望 IIS 服务器为攻击者提供有价值的东西。IPSEC 是内置在 Windows 2000 和 Windows Server 2003 中的,而且通常被用来创建从一台服务器至另一台服务器的 VPN。然而,它还具有端口筛选功能,而且在 IIS 服务器中,这个功能非常有用。使用 Windows 2000 和 Windows Server 2003 的内置 IPSec,除了那些通过逐个明确指定 IP 地址的端口外,您可以拒绝其他所有端口。如果有人对您的服务器执行端口扫描,他只能找到那些您明确许可的端口。
什么是空会话?
原创文章如转载,请注明:转载自悠悠博客 [ http://www.ajaxstu.com/ ]
相关文章:
- IIS配置文件后门(2007-11-24 10:15:53)
- 查询实际存在的 ASP 页时,出现“页找不到”的404错误(2007-11-5 10:43:32)
- 防范WEB SHELL 提高服务器安全(2007-11-4 8:59:34)
- 解决iis内存占用过大的问题(2007-11-3 6:47:26)
- 自定义 IIS 6 错误信息(2007-10-27 3:18:43)
- 论windows下是否能开相对安全的全能空间(2007-10-20 1:52:48)
- [WSH]自动配置IIS(2007-10-11 8:5:0)
- 屏蔽 HTTP 标头(内容-位置)中的 IP 地址(2007-10-8 3:59:21)
- 服务器安全配置精华技巧(2007-9-20 1:20:50)
- Windows WEB服务器安全设置攻略(by 阿江)(2007-8-24 11:34:24)
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
