[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

IIS5.1 Directory Authentication Bypass by using “:$I30:$Index_Allocation”

Although IIS5 is very old, finding one is not impossible! Therefore, I want to introduce a technique to bypass the IIS authentication methods on a directory.
This vulnerability is because of using Alternate Data Stream to open a protected folder.
All of IIS authentication methods can be circumvented. In this technique, we can add a ?:$i30:$INDEX_ALLOCATION? to a directory name to bypass the authentication.
In a protected folder such as ?AuthNeeded? which includes ?secretfile.asp?:
It is possible to run ?secretfile.asp? by using:
Instead of:

More description:
Why IIS6 and 7 are not vulnerable:
- In these versions, IIS does not accept colon (?:?) character from the URL before the querystring.

Why we cannot use ?::$Data? in IIS 5.1 anymore:
- IIS rejects the request if its URL contains ?::$? (before querystring).

Why IIS5 is vulnerable to ?Directory Authentication Bypass? by using ?:$I30:$Index_Allocation?:
- IIS only verifies the directory name to check for authentication. Therefore, we can use ?http://victim.com/SecretFolder:$I30:$Index_Allocation/? instead of ?http://victim.com/SecretFolder? to bypass the authentication.

Is it possible to bypass something else by using ?:$I30:$Index_Allocation? on a NTFS partition:
- If a checking is only based on the directory name, it can be bypassed by using this method.

Download this advisory from: http://soroush.secproject.com/downloadable/IIS5.1_Authentication_Bypass.pdf
or: http://0me.me/demo/IIS/IIS5.1_Authentication_Bypass.pdf

More here: