首页 -> 安全研究
安全研究
安全漏洞
Microsoft IIS 4.0/5.0 Unicode解码错误可远程执行命令漏洞(MS00-078)
发布日期:2000-10-11
更新日期:2000-10-11
受影响系统:
Microsoft IIS 4.0不受影响系统:
- Microsoft Windows NT 4.0 SP6a
- Microsoft Windows NT 4.0 SP6
- Microsoft Windows NT 4.0 SP5
- Microsoft Windows NT 4.0 SP4
- Microsoft Windows NT 4.0 SP3
- Microsoft Windows NT 4.0 SP2
- Microsoft Windows NT 4.0 SP1
- Microsoft Windows NT 4.0
Microsoft IIS 5.0
- Microsoft Windows 2000 Server SP2
- Microsoft Windows 2000 Server SP1
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Professional SP2
- Microsoft Windows 2000 Professional SP1
- Microsoft Windows 2000 Professional
- Microsoft Windows 2000 Datacenter Server SP2
- Microsoft Windows 2000 Datacenter Server SP1
- Microsoft Windows 2000 Datacenter Server
- Microsoft Windows 2000 Advanced Server SP2
- Microsoft Windows 2000 Advanced Server SP1
- Microsoft Windows 2000 Advanced Server
Microsoft Personal Web Server 4.0
- Microsoft Windows NT 4.0
- Microsoft Windows 98
- Microsoft Windows 95
Microsoft IIS 5.0描述:
- Microsoft Windows 2000 Server SP3
Microsoft IIS 5.0
- Microsoft Windows 2000 Professional SP3
Microsoft IIS 5.0
- Microsoft Windows 2000 Datacenter Server SP3
Microsoft IIS 5.0
- Microsoft Windows 2000 Advanced Server SP3
BUGTRAQ ID: 1806
CVE(CAN) ID: CVE-2000-0884
IIS是Microsoft出品的一个广泛应用的Internet Web服务器软件,随Windows NT和Windows 2000捆绑发售。默认情况下IIS的某些目录是允许通过提交HTTP请求执行可执行文件的。
NSFOCUS安全小组发现IIS 4.0和IIS 5.0在Unicode字符解码的实现中存在一个安全漏洞,导致用户可以远程通过IIS执行任意命令。当IIS打开文件时,如果该文件名包含unicode字符,它会对其进行解码,如果用户提供一些特殊的编码,将导致IIS错误的打开或者执行某些Web根目录以外的文件和程序。
对于IIS 5.0/4.0中文版,当IIS收到的URL请求的文件名中包含一个特殊的编码例如"%c1%hh"或者"%c0%hh",它会首先将其解码变成:0xc10xhh, 然后尝试打开这个文件,Windows系统认为0xc10xhh可能是Unicode编码,因此它会首先将其解码,如果 0x00<= %hh < 0x40的话,采用的解码的格式与下面的格式类似:
%c1%hh -> (0xc1 - 0xc0) * 0x40 + 0xhh
%c0%hh -> (0xc0 - 0xc0) * 0x40 + 0xhh
因此,利用这种编码,我们可以构造很多字符,例如:
%c1%1c -> (0xc1 - 0xc0) * 0x40 + 0x1c = 0x5c = '/'
%c0%2f -> (0xc0 - 0xc0) * 0x40 + 0x2f = 0x2f = '\'
攻击者可以利用这个漏洞来绕过IIS的路径检查,去执行或者打开任意的文件。
Rain Forest Puppy <rfp@WIRETRIP.NET>测试发现对于英文版的IIS 4.0/5.0,此问题同样存在,只是编码格式略有不同,变成"%c0%af"或者"%c1%9c"。
<*来源:Nsfocus Security Team (security@nsfocus.com)
链接:http://www.microsoft.com/technet/security/bulletin/MS00-078.asp
http://www.macromedia.com/v1/handlers/index.cfm?ID=17965&Method=Full
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
(1) 如果系统包含某个可执行目录,就可能执行任意系统命令。下面的URL可能
列出当前目录的内容:
http://www.victim.com/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir
(2) 利用这个漏洞查看系统文件内容也是可能的:
http://www.victim.com/a.asp/..%c1%1c../..%c1%1c../winnt/win.ini
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 如果不需要可执行的CGI,可以删除可执行虚拟目录,例如 /scripts等等。
* 如果确实需要可执行的虚拟目录,建议可执行虚拟目录单独在一个分区。
厂商补丁:
Microsoft
---------
Microsoft已经为此发布了一个安全公告(MS00-078)以及相应补丁:
MS00-078:Patch Available for "Web Server Folder Traversal" Vulnerability
链接:http://www.microsoft.com/technet/security/bulletin/MS00-078.asp
补丁下载:
Microsoft IIS 4.0:
http://www.microsoft.com/ntserver/nts/downloads/critical/q269862/default.asp
Microsoft IIS 5.0:
http://www.microsoft.com/windows2000/downloads/critical/q269862/default.asp
浏览次数:6695
严重程度:0(网友投票)
绿盟科技给您安全的保障