TUCoPS :: Web :: IIS :: sax08.txt

Securax-sa-08 IIS4.0 Denial Of Service (part 1) NSA Guide to the Secure Configuration and Administration of IIS


=====================================================================
Securax-SA-08 					Security Advisory
belgian.networking.security 			Dutch
=====================================================================
Topic: IIS4.0 Denial Of Service (part 1)
Announced: 2000-11-03
Updated: 2000-11-03
Affects: IIS 4.0
None affected: Apache, IIS 3.0, IIS5.0
Obsoletes: /
=====================================================================
 
THE ENTIRE ADVISORY HAS BEEN BASED UPON TRIAL AND ERROR
RESULTS. THEREFORE WE CANNOT ENSURE YOU THE INFORMATION BELOW IS
100% CORRECT. THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT PRIOR
NOTICE.
PLEASE, IF YOU HAPPEN TO FIND MORE INFORMATION CONCERNING
THE BUG DISCUSSED IN THIS ADVISORY, PLEASE SHARE THIS ON BUQTRAQ.
THANK YOU,
 

First:

 In the past, several bugs were found that look very similar to the one discussed here, 
 (http://www.securityfocus.com/bid/1101)
 (http://www.securityfocus.com/bid/1642)
 (the ./././././ DoS by USSRlabs)
 
 However, I think this is a new one, (I found servers that were not vulnerable to the above 
 bugs, but were vulnerable to this one... ofcourse I could be wrong.. my apologies if this is
 the  case. 
 
I. Background
 
 While beta testing a new stress tool, I noticed that "forbidden" unicode representations 
 for the ascii "0" character such as %C0%80 and %E0%80%80 were handled as correct
  filenames on IIS4.0 check "http://www.securitywatch.com/%C0%80"
 (Btw: this site is not vulnerable to the DoS! )
 
 Normally that should result in a 404, but instead it returns a 200.
 (Try to use it on a server that does relaying .. fun to see :-)
 
 On IIS5.0 (e.g. www.microsoft.com) this will not return a 404 nor a 200 but a 302, with an
 invalid header, causing browsers to panic.. 

II. Problem Description
 
 If we create a very long URL with  /%C0%80/%C0%80% [...snip...] C0%80 IIS will 
 stop functioning until the complete string is interpreted / decoded.
 
 If the string does not return a 404 on IIS4, try to add an existing directory to the string.
 
 It might be possible to use this "feature" in combination with other (future?) exploits.
 (like those +230 %20's with .htw) 
 
 
 I think the DoS problem is solved with the latest UNICODE patches... although those
 strings still return a 200 code... and they obviously should not.

 Maybe using multiple sockets would allow it to be used on IIS5.0 too. (not tested)

 
III. Impact
 
 This denial of service should not work on well configured IIS servers, but we all know
 these are in a minority.
 
IV. Solution
 
 Be sure to install all IIS patches ever released, that should be sufficient ?
 Following the Microsoft recommended limitation for urls should also do the trick.
 
 Just set the following registry entry to the maximum-length URL you want to accept:
 Hive 
 HKEY_LOCAL_MACHINE \SYSTEM
 Key
 CurrentControlSet\Services\W3SVC\Parameters
  
 Name
 MaxClientRequestBuffer
 
 Value Type
 DWORD
 
 

V. Credits
 
 Zoa_Chien (zoachien@securax.org) 
 Segfau|t (for fixxin mi speling eroors)

VI. Source code
none.
 

 


TUCoPS is optimized to look best in Firefox® on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2024 AOH