Microsoft 安全公告(MS02-018):.htr ISAPI缓冲溢出

/ns/ld/win/data/20020513030448.htm

涉及程序:
IIS 4.0/5.0

描述:
Microsoft IIS 4.0/5.0 .htr映射远程堆溢出漏洞

详细:
Microsoft IIS(Internet Information Server)是MS Windows系统默认自带的Web服务器软件。

IIS 4.0/5.0对.htr文件的映射请求处理存在堆溢出漏洞,远程攻击者可以利用此漏洞得到主机本地普通用户访问权限。

默认安装的IIS提供对以.htr为后缀的文件请求的支持,一般来说 .htr 文件用来设置基于Web的口令,文件请求被映射到一个ISAPI扩展,ISM.DLL程序来处理。当请求被传递给ISM.DLL ISAPI过滤器来处理时,一个经过精心构造的特别的请求会导致处理过程中发生堆溢出问题。这是由于ISM.DLL分配的一个缓冲区比实际接受的用户输入数据长度小一个字节,因此导致一个单字节溢出的发生。

如果攻击者使用随机数据,可能使IIS服务崩溃(IIS 5.0会自动重启)。如果精心构造发送的数据,也可能改变程序执行流程执行任意代码。然而,根据微软的公告,只有在某些很偶然的情况下才有可能允许成功地执行攻击者提交地代码。

成功地利用这个漏洞,对于IIS 4.0,远程攻击者可以获取SYSTEM权限;对于IIS 5.0攻击者可以获取IWAM_computername用户的权限。

受影响的系统:
Microsoft IIS 4.0
- Microsoft Windows NT 4.0
Microsoft IIS 5.0
- Microsoft Windows 2000

解决方案:
建议您如果不需要使用".htr"映射,应该立刻删除".htr"脚本映射。
可以参考如下步骤删除上述脚本映射:
1. 打开Internet 服务管理器
2. 右击你的服务器,在菜单中选择"属性"栏
3. 选择"主属性"
4. 选择 WWW 服务 | 编辑 | 主目录 | 配置
5. 在扩展名列表中删除".htr"项。
6. 保存设置,然后重启IIS服务。

下载补丁:
Microsoft IIS 4.0:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=37931
Microsoft IIS 5.0:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=37824