当前位置: 首页 > 图文教程 > 服务器 > Web服务器 > 全力打造安全主机 加固脆弱的IIS服务

Web服务器
教你如何巧妙设定匿名FTP的安全
用SSL加密增强FTP服务器安全性
FTP的建立与维护
SERV-U 6002版安全设置全攻略(1)
SERV-U 6002版安全设置全攻略(2)
SERV-U 6002版安全设置全攻略(3)
SERV-U 6002版安全设置全攻略(4)
FTP空间不足 Windows 系统性能监控来报警
远程修改Serv-U FTP用户的登录密码
超强图片编辑利器帮你轻松处理相片
邮件服务器的安全解决方案
用MDaemon搭建邮件服务器(上)
用MDaemon搭建邮件服务器(中)
用MDaemon搭建邮件服务器(下)
用Win 2003架设邮件服务器
Sendmail 554 错误的解决
配置你的第一台e-mail服务器(上)
配置你的第一台e-mail服务器(下)
三分钟打造反垃圾邮件服务器
建立大容量Web界面的Email系统

Web服务器 中的 全力打造安全主机 加固脆弱的IIS服务


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 37 ::
收藏到网摘: n/a

难道IIS(Internet Information Services)就真是“脆弱”的吗?难道拥有全球市场排名第一的Apache就坚不可摧?其实这些问题只是我们对服务器安全问题的曲解,在IIS 6没有推出以前,我一直忙着对IIS 5 修修补补,也确实过了一段提心吊胆的日子。我们完全有理由相信,经过调整后的IIS足以让我们值得信赖。

  解释几个常见漏洞

  1. 缓冲区溢出

  简单解释一下,缓冲区溢出主要因为提交的数据长度超出了服务器正常要求,导致服务器检查代码错误。而溢出的方法有可以分为:基于堆栈的溢出和基于堆的溢出。在IIS 6以前的版本,Web服务是运行在LocalSystem账户下,当某个黑客利用缓冲区溢出的漏洞入侵后,当然就可以执行大部分的管理员命令了。

  利用该漏洞比较名的病毒是“红色代码(Redcode)”和“尼姆达(Nimda)”。eEye Digital Security 公司早于1996年就发现了这类漏洞的代表作HTR缓冲区漏洞。eEye发现,IIS抵抗力十分脆弱。如果攻击传递给IIS,那么输入值将不是一串字母而是可以执行的系统命令。HTR文件的解释程序是将一个以.htr结尾的超长文件在ism.dll中造成输入缓冲区溢出。

  我们早已用不到HTR了(笔者个人的理解),那只是早些时候,微软脚本编程用到的,早已经被ASP技术取代。

  说明:根据上文的说明我们知道一个漏洞的根源就是.htr文件与System32目录下的ism.dll存在着关联,如果将ism.dll和.htr文件之间存在的映射关系断开,或者删除了ism.dll,就可以解决了。

  2. 臭名昭著的Unicode

  首先要知道什么是Unicode二次解码漏洞?打开IE,选择“查看→编码→Unicode(UTF-8)”,在没有创造Unicode之前,没有一个编码可以包含足够的字符来容纳数百种的数字编码。比如我们要看一个繁体中文(BIG5)的网页,在你的简体中文版的Windows 系统上,没有Unicode的支持就不可能实现。

  如果非法用户提交一些特殊的编码,将导致IIS错误地打开或者执行某些Web根目录以外的文件。那么,未经授权的用户可以利用IUSR_machinename账号访问用户目录的任何文件。同时,我们有知道这个账号在默认情况下属于Everyone和Users组,Windows 2000 Server默认的安全权限是“Everyone完全控制”因此任何能被这些用户组访问的文件都可能被删除、修改或执行。

  说明:可以限制网络用户访问和调用CMD命令的权限;若没必要使用Scripts和Msadc目录,可以删除或者重新命名;还有一个问题,安装Windows NT系统时不使用默认的WINNT路径。

  3. FrontPage 服务器扩展漏洞

  对于安装FrontPage服务器的网站,通常会在Web目录(缺省)下有若干个以字母“_vti”开头的目录,正是这些目录为黑客提供了可乘之机。我们可以从搜索引擎上搜索默认的Frontpage目录,这时我们能从引擎上返回大量的信息。

  说明:你真的需要FrontPage 服务器扩展吗?我是从来没有用过,这都是默认安装的时候为我们带来的隐患。如果不需要,直接卸载了该服务就没问题了。

  IIS加固策略的建议

  你得到的网站源代码不会完全一样,而大多数程序员不会为你只提供一种类型的代码。所以不要完全按照下面的加固列表操作,尤其在加固之前要和程序的提供商取得联系。在得到他们确认后,修改本文中涉及到服务器扩展内容。

  1. 调整IIS日志

  当您希望确定服务器是否被攻击时,日志记录是极其重要的。默认的日志不会为我们搜索黑客记录提供很大的帮助,所以我们必须扩展 W3C日志记录格式,步骤如下:

  ★检查是否启用了日志记录,右键单击所述站点,然后从上菜单中选择启用“属性→Web 站点→启用日志记录”复选框。

  ★更改日志的默认路径,黑客成功入侵一个系统后,临走时要做的一件事就是清除日志,如果以图形界面的远程控制软件或是从终端登录进入,我们自然是无法保护日志的。不过,现在比较流行的日志清除工具,大多以命令行方式删除默认的W3C日志记录,所以可以将图1所示的路径改写,达到简单保护的功能。

  ★从“活动日志格式”下拉列表中选择“W3C 扩展日志文件格式”。单击“属性→扩展属性”选项卡,然后添加以下信息的记录:客户IP 地址、用户名、方法、URI 资源、HTTP 状态、Win32 状态、用户代理、服务器 IP 地址、服务器端口。

  日志记录是我们被入侵后惟一能够找到自身漏洞的地方。就比如有些人钟爱的“动网上传文件”漏洞,如果你能在日志当中发现“HTTP GET 200(文件上传成功)”,没什么可以辩解的,肯定是没有升级补丁或者开放了上传权限。所以说日志防护是每个管理员必备的知识。

  2. 删除IIS所有默认示例

  这是一个在Windows 2000和Windows Server 2003上都在安装的时候保留的内容,因为只能从本地访问这些文件,所以这些默认的示例不会为服务器带来威胁。如果不需要它们作为建立站时的参照以及远程的管理帮助,可以删除它们,同时起到优化系统的功能(需要关闭