DOCUMENT:Q234905
TITLE   :An Improperly Formatted HTTP Request Can Cause the INETINFO Process to Fail
PRODUCT :IIS
PROD/VER:4.0
OPER/SYS:WINDOWS NT
KEYWORD :prodiis4 

--------------------------------------------------------------------------------
The information in this article applies to:

 - Microsoft Internet Information Server version 4.0
--------------------------------------------------------------------------------

SYMPTOMS
========

When a web site visitor requests a selected file mapping, this request is mapped to 
an appropriate DLL for processing the web site visitor request. The appropriate DLL 
may include any shipping Microsoft DLL or an installed third-party filter DLL. A 
problem currently exists in the shipping Microsoft DLL's for handling an improperly 
formatted request that uses an HTR, STM, or IDC application mapping. There is the 
possibility that this problem could be exploited by a malicious web user by sending 
an improperly formatted HTTP request to a Microsoft Internet Information Server 
computer which can result in the unstable operation of the web server. 

RESOLUTION
==========

A supported fix that corrects this problem is now available from Microsoft, but
it has not been fully regression tested and should be applied only to systems
experiencing this specific problem. If you are not severely affected by this
specific problem, Microsoft recommends that you wait for the next Windows NT 4.0
service pack that contains this fix.

To resolve this problem immediately, contact Microsoft Product Support Services
to obtain the fix. For a complete list of Microsoft Product Support Services
phone numbers and information on support costs, please go to the following
address on the World Wide Web:

   http://support.microsoft.com/support/supportnet/default.asp

The English version of this fix should have the following file attributes or
later:

   Date       Time                Size    File name     Platform
   -------------------------------------------------------------
   06-09-1999 6:51:10PM           53,504  ism.dll       x86
   06-09-1999 6:36:02PM           82,704  ism.dll       alpha
 
This hotfix has been posted to the following Internet location as Extfixi.exe
(x86) and Extfixa.exe (Alpha):

   ftp://ftp.microsoft.com/bussys/IIS/iis-public/fixes/usa/ext-fix/

NOTE: If this product was already installed on your computer when you purchased
it from the Original Equipment Manufacturer (OEM) and you need this fix, please
call the Pay Per Incident number listed on the above Web site. If you contact
Microsoft to obtain this fix, and if it is determined that you only require the
fix you requested, no fee will be charged. However, if you request additional
technical support, and if your no-charge technical support period has expired,
or if you are not eligible for standard no-charge technical support, you may be
charged a non-refundable fee.

For more information about eligibility for no-charge technical support, see the
following article in the Microsoft Knowledge Base:

   Q154871 Determining If You Are Eligible for No-Charge Technical Support

STATUS
======

Microsoft has confirmed this to be a problem in Internet Information Server 4.0.

MORE INFORMATION
================

The affected application mappings are IDC, HTR and STM.

 - HTR files enable remote administration of user passwords.

 - IDC Internet Database Connector files allows an Internet application to query 
   and update Backend database.

 - STM are used for Server side include files

WORKAROUND
==========

Microsoft has provided a patch to correct this problem; however, additional steps 
can be used to prevent issues similar to this one from impacting any Microsoft 
IIS 4.0 Server. Selecting "Check if file Exists" in the script application mappings 
section of the ISM forces IIS 4.0 to check if the requested script exists or if the 
user has permission to the requested script. If not, the appropriate warning 
message is returned to the browser and the script engine is not invoked.

Perform the following steps to select "Check if file Exists":

1. In Internet Service Manager (ISM), double-click Internet Information Server.

2. Right-click the computer name and then click Properties on the menu that appears.

3. In the Master Properties drop-down box, click "WWW Service", and then click "Edit".

4. Click the "Home Directory" tab and then click "Configuration".

5. Double-click the line in the extension mappings that contains ".HTR".

6. Select the checkbox labeled "Check if file exists".

7. Repeat these steps for STM and IDC application mappings.

8. Close the ISM.

NOTE: When selecting to use this option, the originating TCP\IP address of the request 
and the response is logged in the IIS log if IIS logging is turned on. 

MORE INFORMATION
================

Please see the following reference for more information related to this issue:

   Microsoft Security Bulletin MS99-019, "Patch Available for "Malformed HTR Request" 
   Vulnerability":

      http://www.microsoft.com/security/bulletins/ms99-019.asp

For additional security-related information about Microsoft products, please visit 

   http://www.microsoft.com/security
============================================================================

THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS
PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND.  MICROSOFT DISCLAIMS
ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  IN NO
EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR
ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL,
CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF
MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.  SOME STATES DO NOT ALLOW THE EXCLUSION
OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES
SO THE FOREGOING LIMITATION MAY NOT APPLY.