积极预防 及时发现
快速响应 力保恢复
Internet Information Service 的累积修补程序 (811114)
发布时间:2003-05-07 信息来源:管理员

Internet Information Service 的累积修补程序 (811114) 初始发布日期:2003年5月7日 -------------------------------------------------------------------------------- 本页内容: 摘要 详细技术资料 常见问题解答 有关该修补程序的附加信息 其他信息 -------------------------------------------------------------------------------- 摘要 本公告的读者对象: 使用 Microsoft&reg; Windows NT&reg; 4.0、Windows&reg; 2000 或 Windows XP 作 Web 服务器的用户。 漏洞的影响: 允许攻击者执行他们选择的代码 最高严重等级: 重要 建议: 使用 Microsoft&reg; Windows NT&reg; 4.0、Windows&reg; 2000 或 Windows XP 作为 Web 服务器的用户应该尽早安装该修补程序。 受影响的软件: Microsoft Internet Information Server 4.0 Microsoft Internet Information Services 5.0 Microsoft Internet Information Services 5.1 不受影响的软件: Microsoft Internet Information Services 6.0 最终用户公告:此公告的最终用户版本可从以下位置获得:http://www.microsoft.com/security/security_bulletins/ms03-013.asp。 详细技术资料 技术说明: 此修补程序是一个累积式修补程序,既包括自 Windows NT 4.0 Service Pack 6a 以来为 IIS 4.0 发布的所有安全修补程序的功能,又包括自 Windows 2000 Service Pack 2 和 IIS 5.1 以来至今为 IIS 5.0 发布的所有安全修补程序的功能。在后面“有关此修补程序的附加信息”的部分中有关于此修补程序所替代的所有修补程序的完整列表。 除了所有以前发布的安全修补程序,此修补程序还包括对最近发现的影响 IIS 4.0、5.0 和 5.1 的以下安全漏洞的修复: 影响 IIS 4.0、5.0 和 5.1 的跨站脚本?行 (CSS) 漏洞,它涉及一条返回的错误消息,该消息通知所请求的 URL 已被重定向。如果攻击者有能力引诱用户点击他或她网站上的链接,攻击者就能够将一个包含有脚本的请求转给一个运行 IIS 的第三方网站,因此也就导致第三方站点的响应(仍然包含着该脚本)发送给了用户。然后,该脚本将会使用该第三方站点的安全设置出现在用户面前,而不是攻击者自己的安全设置。 由于 IIS 5.0 不能正确验证一些被称为服务器端包含文件 类型的网页,这就造成了缓冲区溢出。攻击者需要具备将“服务器端包含文件”网页上载到易受攻击的 IIS 服务器的能力。一旦攻击者向该页发出请求,就会造成缓冲区溢出,这将会允许攻击者在服务器上以用户级权限执行他所选择的代码。 因为 IIS 4.0 和 5.0 在建立要返回到 Web 客户端的报头时分配内存请求的方式存在缺陷,所以就导致了拒绝服务的漏洞。攻击者需要能够将 ASP 网页上载到易受攻击的 IIS 服务器的能力。此 ASP 页面被攻击者调用后,它就会试图将一个极大的报头返回到请求的 Web 客户端。因为 IIS 对此情况下使用的内存数量不加以限制,所以就导致 IIS 因本地内存耗尽而失败。 因为当过长的 WebDAV 请求传递给 IIS 5.0 和 5.1 时,它们不能够正确处理这种错误情况,所以就导致了拒绝服务的漏洞。因此攻击者能够致使 IIS 失败 - 但默认情况下不论是 IIS 5.0 还是 5.1 都将在失败后立刻重新启动。 此修补程序有一个前提 - 它要求事先安装来自 Microsoft 安全公告MS02-050 的修补程序。如果只安装了此修补程序,而没有安装MS02-050 的修补程序,那么客户端证书就会遭到拒绝。安装MS02-050 修补程序后,则可以恢复此功能。 减轻的因素: 重定向跨站脚本执行: IIS 6.0 不会受到影响。 只有攻击者能诱使其他用户访问某网页并且点击该网页上的一个链接,或者打开 HTML 邮件时,攻击者才能利用此漏洞。 目标网页必须是 ASP 网页,此类网页使用 Response.Redirect 来重定向客户端,将客户端指向一个以当前请求的传入 URL 为基础的新 URL。 “服务器端包含文件”网页缓冲区溢出 IIS 4.0、IIS 5.1 和 IIS 6.0 不受影响。 IIS Lockdown 工具默认情况下禁用 ssinc.dll 映射功能,这样就能够阻止这种攻击。 默认情况下 IIS 5.0 在某个用户帐户下运行,并不在系统帐户下运行。因此成功利用了 IIS 漏洞的攻击者只能获得用户级别权限,而不能获得管理级别权限。 攻击者必须具备将文件上载到 IIS 服务器的能力。 ASP 报头拒绝服务 攻击者必须具备将文件上载到 IIS 服务器的能力。 IIS 5.0 在失败后会自动重启。 IIS 5.1 和 IIS 6.0 不会受到影响。 WebDAV 拒绝服务 IIS 6.0 不会受到影响。 IIS 5.0 和 5.1 在失败后会自动重启。 默认情况下 IIS Lockdown 工具禁用 WebDAV,这样就能够阻止这种攻击。 严重等级:重定向跨站脚本执行 IIS 4.0:低 IIS 5.0:低 IIS 5.1:低 “服务器端包含文件”网页缓冲区溢出 IIS 4.0:无 IIS 5.0:中等 IIS 5.1:无 ASP 报头拒绝服务 IIS 4.0:中等 IIS 5.0:中等 IIS 5.1:无 WebDAV 拒绝服务 IIS 4.0:无 IIS 5.0:重要 IIS 5.1:重要 所有漏洞的综合严重程度 IIS 4.0:中等 IIS 5.0:重要 IIS 5.1:重要 以上评估http://www.microsoft.com/technet/security/topics/rating.asp是根据以下方面作出的:受该漏洞影响的系统类型、这些系统的典型部署模式以及利用该漏洞将会对这些系统产生的影响。<一两句话说明划分程度级别的理由。不要深究到每一个方面;只给出在此涉及该问题的高级信息即可> 漏洞标识符: 重定向跨站脚本执行:错误!超级链接引用无效。 “服务器端包含文件”网页缓冲区溢出:错误!超级链接引用无效。 ASP 报头拒绝服务 错误!超级链接引用无效。 WebDAV 拒绝服务 错误!超级链接引用无效。 测试过的版本: Microsoft 测试了 IIS 4.0、5.0、5.1 和 6.0 以评估它们是否会受这些漏洞的影响。此前的版本不再受支持,它们可能会也可能不会受这些漏洞的影响。 常见问题解答 问:哪些版本的 Windows 附带 Internet Information Services 6? 答:IIS 6 随 Windows Server 2003 附带。它不会受到本安全公告所述的任何漏洞的影响。 重定向跨站脚本执行 (CAN-2003-0223) 问:此漏洞的影响范围有多大? 答:这是一个跨站脚本执行http://www.microsoft.com/technet/security/crssite.asp漏洞,它允许攻击者向一个受影响的服务器发送请求,这将会导致一个包含脚本的网页被发送到其他用户。该脚本将在用户的浏览器内执行,就好象它来自第三方站点一样。这将允许该脚本使用与第三方站点相应的安全设置运行,同时这也使得攻击者能够访问属于该站点的任何数据。只有用户打开了一个 HTML 邮件或访问了一个恶意用户的站点时,该漏洞才会被利用 - 该代码并不能“注入”现有会话中。 问:什么是重定向? 答:重定向在以下情况出现:当 Web 浏览器向不存在的网页发出请求,而 Web 服务器将此浏览器重定向到其他网页,如一般错误页面或站点主页。例如,网页 不存在,但 Web 服务器不会提示错误,而是将浏览器重定向到另一个网页,该网页向用户提示可能正在寻找的网页,并附有站点地图。此过程就是重定向。 问:什么是跨站脚本执行? 答:CSS 是一个安全漏洞,它可能使恶意用户将代码“注入”用户与网站的会话中。与大多数安全漏洞不同,CSS 不会对任何单独的供应商产品产生影响 - 相反,它影响的是所有运行在 Web 服务器上并且没有防御规划措施的软件。 问:CSS 的工作方式? 答:在执行摘要和FAQ 内有很好的说明。然而,下面其实就很详细地说明了 CSS 的工作方式。假设网站 A 具有搜索功能,允许用户通过键入单词或短语来进行搜索。如果用户键入“banana”作为搜索词,站点就会搜索该词,然后生成一个网页显示“I’m sorry, but I can’t find the word ‘banana’”。该网页被发送到用户的浏览器,该浏览器随后就对此网页进行解析和显示。现在假设,用户输入的搜索词不是“banana”,而是“banana ?SCRIPT? ?Alert(‘Hello’);? ?/SCRIPT?”这样的搜索词。如果搜索功能被编写为盲目地使用任何提供给它的搜索词,它将会搜索整个字符串,并且创建一个网页显示“I’m sorry, but I can’t find the word “banana ?SCRIPT? ?Alert(‘Hello’);? ?/SCRIPT?””。但是,所有以“?SCRIPT?”开头并以“?SCRIPT?”结尾的文本其实都是程序代码,因此当处理该网页的时候,用户的浏览器就会显示一个对话框,对话框上写着“Hello”。 到此为止,本示例仅仅显示了用户如何“转送”代码,使其脱离 Web 服务器而在自己的机器上运行。这不是安全漏洞。不过,这个漏洞有可能被恶意的网站操作者调用,使代码在访问这个站点的用户的计算机上运行。如果站点 B 被一个恶意的用户操作,并且他能够诱使访问该站点的用户点击超级链接,站点 B 就能够进入站点 A,在搜索页上填写恶意脚本,并以该用户的名义提交此页。结果页就会返回给该用户(因为该用户点击了超级链接,所以归根结底他是请求者),并在该用户的计算机上处理。 问:脚本能在用户计算机上做什么? 答:来自站点 B(攻击者的站点)的脚本将会在该用户的计算机上运行,就象它来自站点 A 一样。在实际情况下,这将有两层含义:该脚本将使用站点 A 在用户计算机上相应的安全设置来运行。 来自站点 B 的脚本将能访问用户系统上属于站点 A 的 Cookie 和其他任何数据。 问:该漏洞是由什么问题引起的? 答:产生漏洞是因为负责重定向的 ASP 函数显示了 HTML 文本中未正确编码的 URL。 问:IIS 重定向出了什么问题? 答:负责重定向的 ASP 函数没能正确地为显示在 HTML 文本中的 URL 编码。因此也就有可能在重定向请求中插入脚本,并且导致该脚本返回给 Web 浏览器。 问:攻击者能利用该漏洞做什么? 答:拥有某个网站并能够诱使其他用户点击他站点上的链接的攻击者可以利用该漏洞,通过运行 IIS 的另一个站点来执行跨站脚本执行攻击。如上所述,这使得攻击者能使用其他网站(运行 IIS 的网站)的安全设置在用户浏览器上运行脚本,并且访问属于该站点的 Cookie 和其他数据。但是,大多数浏览器将自动跟随重定向响应报头并跳过此 HTML 文本。这种情况下,客户端就不易受到攻击。 问:攻击者可能如何利用该漏洞? 答:要利用这个漏洞,攻击者需要有一个网页并能够诱使用户点击该网页上的链接,或者需要用电子邮件给该用户发送一个 URL。此 URL 必须包含脚本。该 URL 还需要指向一个在有漏洞的 IIS 服务器上不存在的网页 - 当 IIS 重定向功能处理这一不存在网页的重定向时,它就会将攻击者的脚本传递回浏览器。 问:您认为这种攻击的目的是,攻击者使用我的网站的安全设置在用户的浏览器上运行脚本。攻击者这么做对他有什么好处呢? 答:这因站点而异,取决于攻击者的站点和您的站点的安全区域。 如果两者的安全区域完全相同(默认情况下所有网站的安全区域都是“Internet 区域”,除非用户作了移动),它们就会有完全相同的安全限制,那么攻击者通过漏洞什么也得不到。 如果用户将攻击者的站点放入了一个比您的站点的安全区域还要严格的区域,那么只要您的站点的脚本在用户计算机上能作的事,攻击者的脚本在该用户计算机上同样可以做到。 如果用户将您的站点放入了一个比攻击者站点的安全区域还要严格的区域,那么攻击者也就束手无策了。 不过,非常重要的一点是,无论采取什么样的安全设置,攻击者的脚本始终能够访问用户系统上属于第三方站点的 Cookie 和任何其他数据。这是因为,浏览器只能将攻击者的站点判断为第三方站点。 问:修补程序是如何消除漏洞的呢? 答:修补程序是通过确保在 IIS 重定向请求期间不传递脚本来消除漏洞的。 SSINC 缓冲区溢出 (CAN-2003-0224) 问:该漏洞的影响范围有多大? 答:这是一个缓冲区溢出漏洞。它使攻击者能在 IIS 服务器上以用户权限执行他所选择的代码。 问:该漏洞是由什么问题引起的? 答:因为 IIS 在响应 Server-side Include (SSINC) 页(如 .shtml、.stm 和 .shtm 文件)的请求时,不能正确地对参数进行检查,所以就导致了漏洞的产生。 问:IIS 响应静态网页请求的方式存在什么问题呢? 答:在负责为静态网页服务的组件当中存在缺陷。该组件不能对传递给它的请求进行正确验证,所以一旦过长的请求传递给它时就会造成缓冲区溢出。 问:攻击者能利用该漏洞做什么? 答:该漏洞可以使攻击者在 IIS 服务器上以用户权限执行他所选择的代码。不过要做到这一点,攻击者必须首先将 SSINC 网页上载到 IIS 服务器。 问:IIS Lockdown 工具能阻止这种攻击吗? 答:能 - 默认情况下 IIS Lockdown 工具将删除此 SSINC 脚本映射。 问:在攻击中仅仅获得用户权限对攻击者有何意义? 答:默认情况下,受影响的组件是在用户帐户下运行而不是在系统帐户下运行。用户帐户在服务器上的权限要比系统帐户的权限低的多 - 例如,用户帐户不能添加或删除其他用户帐户或重新启动服务。 问:攻击者可能如何利用该漏洞? 答:攻击者通过将一个特殊命名的 SHTML 网页上载到 IIS 服务器来寻找利用漏洞的机会 - 攻击者需要有明确的权限才能这样做。攻击者还需要了解该 Web 服务器上的目录结构。如果该攻击者向此网页发出请求,就会发生缓冲区溢出,也就允许了他或她在 IIS 用户帐户环境下执行所选代码。 问:修补程序能做什么? 答:修补程序通过确保受影响的 IIS 组件能够正确验证传递给它的输入,消除了这种漏洞。 ASP 报头拒绝服务 (CAN-2003-0225) 问:该漏洞的影响范围有多大? 答:这是一个拒绝服务漏洞,可能会使攻击者造成 IIS 失败。IIS 5.0 可以自动重启,IIS 4.0 需要手动重启。 问:该漏洞是由什么问题引起的? 答:因为ASP 函数 Response.AddHeader 不能对返回到浏览器的报头大小加以限制,所以就导致了漏洞的产生。因此,就有可能有蓄意制作的恶意 ASP 网页生成过大的报头,超过 IIS 能够利用的内存,从而导致 IIS 失败。 问:IIS 生成报头的方式存在什么问题呢? 答:产生漏洞是因为负责重定向的 ASP 函数显示了 HTML 文本中未正确编码的 URL。 问:攻击者能利用此漏洞做什么? 答:攻击者可利用此漏洞造成 IIS 失败并因此而停止网页服务。这对于 IIS 5.0 意义不大,因为它会自动重启,因此“拒绝服务”只是暂时的。IIS 4.0 却需要手动重启。 问:攻击者可能如何利用该漏洞? 答:攻击者需要能将一个恶意的 ASP 文件上载到 IIS 服务器上 - 此恶意的 ASP 会包含有一些代码,在请求该网页后,这些代码就会生成过大的报头。如果此后攻击者向该网页发出请求,代码就会执行,这就导致由于需要过多的内存来完成请求,从而使 IIS 失败。 需要注意的是,攻击者必须有向服务器上载 ASP 文件的权限,才能达到他或她执行基于此漏洞进行攻击的目的。 问:修补程序能做什么? 答:修补程序对能够生成的返回报头的大小加以限制。 WebDAV 拒绝服务 (CAN-2003-0226) 问:该漏洞的影响范围有多大? 答:这是一个拒绝服务。它可能使攻击者造成 IIS 5.0 和 5.1 暂时拒绝服务。 问:该漏洞是由什么问题引起的? 答:该漏洞产生的原因是,在处理包含 XML 命令的过长 WebDAV 请求的方式上存在缺陷。因为在处理某种类型的 XML 错误时,即引起 IIS 失败的错误时,有可能产生错误处理顺序混乱,所以就产生了缺陷。 问:处理 WebDAV 错误存在什么问题呢? 答:过长的 WebDAV 请求有可能引起对 XML 请求的错误处理的顺序混乱。它虽然导致 IIS 失败,但是不论 IIS 5.0 还是 5.1 都会自动重启。 问:攻击者能利用此漏洞做什么? 答:攻击者可利用此漏洞造成 IIS 5.0 或 5.1失败并因此而停止网页服务。但是,不论 IIS 5.0 还是 5.1 都会自动重启。 问:攻击者可能如何利用该漏洞? 答:攻击者通过将含有不正常 XML 数据的过长 WebDAV 请求发送到 IIS 5.0 或 5.1 Web 服务器,从而来利用此漏洞。这可能使对该不正常的 XML 的错误处理的顺序产生混乱,进而导致 IIS 失败。 问:修补程序能做什么? 答:修补程序通过在处理不正常的 XML 数据时强制执行正确的错误处理顺序,从而消除了漏洞。 问:此修补程序是否需要其他修补程序呢? 答:是的 - 它需要先安装来自 Microsoft 安全公告MS02-050 的修补程序。如果安装了此 IIS 累积式修补程序,却没有安装MS02-050 的修补程序,那么客户端证书就会遭到拒绝。在安装 IIS 累积式修补程序的前后安装 MS02-050 修补程序,此功能都会得到恢复。 获取修补程序 该修补程序的下载位置 Microsoft <产品>:http://www.microsoft.com/Downloads/Release.asp?ReleaseID=YYYYYY 有关该修补程序的附加信息 安装平台: IIS 4.0 修补程序可以在运行 Windows NT 4.0 Service Pack 6a 的系统上安装。 IIS 5.0 修补程序可以在运行 Windows 2000 Service Pack 2 或 Service Pack 3 的系统上安装。 IIS 5.1 修补程序可以在运行 Windows XP Professional Gold 和 Service Pack 1 的系统上安装。 包括在将来的 Service Pack 中: 没有计划用于 Windows NT 4.0 的附加 Service Pack。 Windows 2000 Service Pack 4 中将包括 IIS 5.0 修复程序。 Windows XP Service Pack 2 中将包括 IIS 5.1 修复程序。 是否需要重新启动: IIS 4.0:通过停止 IIS 服务,使用 /z 开关参数安装修补程序,然后重启服务,就能避免重新启动。知识库文章 Q327696 提供了有关此过程的附加信息。 IIS 5.0:在大多数情况下,修补程序不需要重新启动。此安装程序会停止所需的服务,应用该修补程序,然后重新启动这些服务。但是,如果由于一些原因所需的服务不能够停止,那么就需要重新启动。如果出现这种情况,系统会显示一条提示,通知您需要重新启动。 IIS 5.1:不需要。(在某些情况下,为了完成修补程序安装过程,可能会出现一个弹出式对话框,提示系统需要重新启动如果出现了该对话框,也可以忽略它) 修补程序是否能卸载:是 替代修补程序: 此修补程序替代了下列 Microsoft 安全公告中提供的修补程序: MS02-062 。 MS02-028 。 MS02-018 。(这是一个累积式修补程序,并且替代了其他修补程序) 验证修补程序安装: IIS 4.0: 要证实已将修补程序安装到计算机上,请确认已在计算机上创建了下面的注册表项: HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Hotfix\\Q811114。 要验证单个文件,请查阅知识库文章 811114 中的文件清单。 IIS 5.0: 要证实已将修补程序安装到计算机上,请确认已在计算机上创建了下面的注册表项: HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Updates\\Windows 2000\\SP4\\Q811114。 要验证单个文件,请使用以下注册表项中提供的日期/时间和版本信息: EY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Updates\\Windows 2000\\SP4\\Q811114\\Filelist。 IIS 5.1: 要证实已将修补程序安装到计算机上,请确认已在计算机上创建了下面的注册表项: HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Updates\\Windows XP\\SP2\\Q811114。 要验证单个文件,请使用以下注册表项中提供的日期/时间和版本信息: HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Updates\\Windows XP\\SP2\\Q811114\\Filelist。 注意事项: 本修补程序要求安装 Microsoft 安全公告 MS02-050 的修补程序。如果安装了此 IIS 累积式修补程序,而没有安装MS02-050的修补程序,那么客户端证书就会被禁用。在安装 IIS 累积式修补程序的前后安装MS02-050的修补程序,此功能都会得到恢复。 本修补程序内并不包括影响 IIS 4.0 服务器的四个漏洞的修复程序,原因是它们需要采取管理措施而不是软件更改。管理员应该确保除了应用本修补程序之外,还采取了下列公告中讨论的管理措施: Microsoft 安全公告MS00-028 Microsoft 安全公告MS00-025 Microsoft 安全公告MS99-025(与 Microsoft 安全公告MS98-004 讨论的是同一个问题) Microsoft 安全公告MS99-013 本修补程序不包括对非 IIS产品,如 Front Page Server Extensions 和 Index Server 的漏洞的修复,尽管这些产品与 IIS 密切相关,并且通常安装在 IIS 服务器上。在本文中,公告所讨论的漏洞包括: Microsoft 安全公告MS02-053 Microsoft 安全公告MS02-050 Microsoft 安全公告MS01-043 Microsoft 安全公告MS01-025 Microsoft 安全公告MS00-084 Microsoft 安全公告MS00-018 Microsoft 安全公告MS00-006 不过还有一个例外。在 Microsoft 安全公告MS01-033 中所讨论的影响 Index Server 的漏洞的修复程序已包含在本修补程序当中了。因为该问题对于 IIS 服务器的严重性,所以我们将它包含在内。 使用 IIS 4.0 的用户应该确保他们是按照正确的安装顺序来安装本修补程序或者其他安全修补程序的。尤其是用户必须确保在安装 IIS 4.0 服务之后应用(或重新应用)Windows NT 4.0 Service Pack 6a。 使用 Site Server 的用户应该警惕以前记录的一个涉及间歇式身份验证错误的问题,该问题已经确认对本修补程序和其他一小部分修补程序有影响。Microsoft知识库文章Q317815 讨论了该问题,并且给出了解决方法。 本地化: 此修补程序的本地化版本可从“获取修补程序”中所述的位置获得。 获取其他安全修补程序: 有关其他安全问题的修补程序可从以下位置获得: 安全修补程序可以从 Microsoft 下载中心通过执行“security_patch”关键字搜索即可方便地找到。 有关客户平台的修补程序可从 WindowsUpdate Web 站点获得。 其他信息 Microsoft 感谢以下机构向我们报告了这些问题并与我们一起致力于保护客户的利益: SPIDynamics SPI Labs 报告了“重定向跨站脚本执行”和“WebDAV 拒绝服务”漏洞。 NSFocus 报告了“服务器端包含文件网页缓冲区溢出”漏洞。 支持: Microsoft 知识库文章 811114 讨论了此问题,此公告发布大约 24 小时后会提供该文章。知识库文章可以在 Microsoft 在线支持 Web 站点上找到。 技术支持可以从 Microsoft 产品支持服务 获得。与安全修补程序相关的支持电话是免费的。 安全性资源: Microsoft TechNet Security Web 站点提供有关 Microsoft 产品安全性的附加信息。 免责声明: Microsoft 知识库中的信息是按“原样”提供的,不带任何形式的担保。Microsoft 否认所有明示或暗示的担保,包括适销性和针对特定目的的适用性的担保。即使 Microsoft Corporation 或其供应商事先已被告知损害发生的可能性,Microsoft Corporation 或其供应商也不就任何直接、间接、意外或必然的企业利润损失或特殊损害承担任何责任。一些州不允许免除或限制对必然或意外损害所负的责任,因此上述限制可能不适用。 修订版本: V1.0(2003 年 5 月 5 日):公告栏创建。