IIS服务泄漏文件内容 |
这是一个NSFOCUS安全小组发现的漏洞。当微软IIS 4.0/5.0(远东地区版本)在处理包含有不完整的双字节编码字符的HTTP命令请求时,会导致WEB目录下的文件内容被泄漏给远程攻击者。
Microsoft IIS远东地区版本包括中文(简体/繁体),日文,韩文版,由于特定的文字格式使它们都是使用的双字节编码格式。而当IIS接收到用户提交的一个HTTP请求时,如果文件名中包含非ASCII字符,IIS会检查这个字符是否为双字节编码中的前导字符(例如,日文的前导字符包含两段字符:0x81-0x9F, 0xE0-0xFC)。如果是前导字符,它会继续检查下一个字符是否为结尾字符。如果没有下一个字符,IIS会简单地丢弃这个前导字符,因为它并没有构成一个完整的双字节编码。然而,这种处理将导致IIS打开不同的文件而不是用户在请求中指定的文件。
攻击者通过提交一个特殊格式的URL, 可以使IIS使用某个ISAPI动态链接库打开某种它所不能解释的类型的文件,并获得该文件的内容。依赖于系统安装的ISAPI应用程序的类型,攻击者可能获得WEB根目录或者虚拟目录下的文件内容,这些文件可以是普通文本文件(.asp, .ini, .asa等等),也可以是二进制文件(.exe等等)。
黑客们会使用Unicode的方法利用这个漏洞:
Unicode(统一的字符编码标准, 采用双字节对字符进行编码)可以说是近一段时期以来最为流行的攻击入侵手段,仅国内近期就有江民公司等几个大的网站被这种入侵