CERT-SEI

Buffer Overflow in UPnP Service On Microsoft Windows

Original release date: December 20, 2001
Last revised: --
Source: CERT/CC

A complete revision history can be found at the end of this file.

Systems Affected

  • Microsoft Windows XP
  • Microsoft Windows ME
  • Microsoft Windows 98
  • Microsoft Windows 98SE

Overview

Vulnerabilities in software included by default on Microsoft Windows XP, and optionally on Windows ME and Windows 98, may allow an intruder to execute arbitrary code on vulnerable systems, to launch denial-of-service attacks against vulnerable systems, or to use vulnerable systems to launch denial-of-service attacks against third-party systems.

I. Description

There is a vulnerability in the Universal Plug and Play (UPnP) service on Microsoft Windows XP and Microsoft Windows ME that could permit an intruder to execute arbitrary code with administrative privileges on a vulnerable system. The UPnP service is enabled by default on XP. Microsoft does not ship Windows ME with UPnP enabled by default, but some PC manufacturers do. UPnP may be optionally installed on Windows 98 and Windows 98SE. This vulnerability was discovered by Eeye Digital Security. For more information, see

http://www.eeye.com/html/Research/Advisories/AD20011220.html
http://www.microsoft.com/technet/security/bulletin/MS01-059.asp

Universal Plug and Play (UPnP) is a set of protocols that allow computer systems and network devices to work together with little or no prior configuration.

One vulnerability is a buffer overflow in the code that handles UPnP NOTIFY directives. This vulnerability permits an intruder to send a malicious NOTIFY directive to a vulnerable computer and cause the computer to run code of the intruder's choice. The code will run with full privileges on all vulnerable systems, including Windows XP. This can permit an attacker to take complete control of the system.

A second vulnerability in the Microsoft Windows implementation of UPnP could allow an intruder to consume memory and processor time on vulnerable systems, resulting in performance degradation. Variations on this problem can allow an intruder to use a vulnerable system to launch a denial-of-service attack against a third-party.

For more information about these vulnerabilities, see

http://www.kb.cert.org/vuls/id/951555
http://www.kb.cert.org/vuls/id/411059

These vulnerabilities have been assigned the CVE identifiers CAN-2001-0876 and CAN-2001-0877, respectively.

II. Impact

Intruders can gain complete control of vulnerable systems, or interrupt the normal operation of vulnerable systems.

III. Solution

Apply a patch from your vendor

Microsoft has provided patch information in their bulletin. Please see MS01-059, available from

http://www.microsoft.com/technet/security/bulletin/MS01-059.asp

Block Access to UPnP Service

Until a patch can be applied, you can reduce your exposure to this problem by blocking access to ports 1900 and 5000 at your network border. This does not eliminate your exposure to attacks originating from within your network, however.

Note that Microsoft Internet Connection Firewall, which runs by default on Windows XP, does not provide complete protection against this attack. Specifically, an intruder can still use a broadcast or multicast address to reach the UPnP service on Microsoft Windows. On systems that don't require UPnP, it can be disabled.

Author: Shawn V. Hernan

Copyright 2001 Carnegie Mellon University.

Revision History

December 20,2001: Initial release