iDefense Security Advisory 06.11.09: Microsoft Windows 2000 Print Spooler Remote Stack Buffer Overflow Vulnerability
iDefense Security Advisory 06.09.09
Jun 09, 2009
The Windows Print Spooler manages the printing process, and loads files
to memory for later printing. For more information about Print Spooler,
please visit following website:
Remote exploitation of a stack buffer overflow vulnerability in
Microsoft Corp.s Windows 2000 operating system could allow an
unauthenticated attacker to execute arbitrary code with system-level
This vulnerability exists in the EnumeratePrintShares function in
win32spl.dll. The vulnerable function does not correctly validate the
length of the printer servers response. When a malformed response is
received from the printer server, the stack buffer can be overflowed,
resulting in an exploitable condition.
Exploitation allows a remote attacker to execute arbitrary code with
To exploit this vulnerability, the attacker has to setup a malicious
printer server that can be accessed by the target system. No user
interaction is required and no authentication is required. The attacker
just needs to connect to the print spooler service and send a request.
This request will cause the target system to enumerate shared printer
resource on the malicious printer server and trigger the vulnerability.
This vulnerability only exists in Windows 2000. The Spooler Service is
running by default on Windows 2000 with SYSTEM privileges.
iDefense has confirmed the existence of this vulnerability in
win32spl.dll version 5.00.2195.7054, as included in Windows 2000
Service Pack 4, with all available patches as of September 2008. All
previous versions are suspected vulnerable.
Windows XP SP2 and later versions of Windows are not affected.
Consider disabling the print spooler service; however, by doing this,
users cannot print locally or remotely.
For hosts that do need the print spooler service running, disable
anonymous connections to the service by removing the print spooler
service from following registry key:
Remove SPOOLSS from the registry key. This will allow only
authenticated access to the print spooler service, disabling the vector
for anonymous attack.
Alternatively, ports 139, 445, 631 both UDP and TCP can be firewalled.
This will largely prevent access to any print services remotely on a
VI. VENDOR RESPONSE
Microsoft has released a patch which addresses this issue. For more
information, consult their advisory at the following URL:
VII. CVE INFORMATION
The Common Vulnerabilities and Exposures (CVE) project has assigned the
name CVE-2009-0228 to this issue. This is a candidate for inclusion in
the CVE list (http://cve.mitre.org/), which standardizes names for
VIII. DISCLOSURE TIMELINE
09/05/2008 - Initial Contact
09/05/2008 - Initial Response
09/05/2008 - PoC Requested
09/08/2008 - PoC Sent
09/24/2008 - Vendor Status Update - no estimated date set
12/12/2008 - Vendor Status Update - new case manger, tentative date set
for April 2009
02/26/2009 - Vendor Status Update - tentative date set for 06/09/2009
03/27/2009 - Vendor confirmed attribution.
04/23/2009 - Requested CVE
04/23/2009 - CVE received
05/28/2009 - Confirmed tentative disclosure date and acknowledgment text
06/09/2009 - Coordinated public disclosure
This vulnerability was discovered by Jun Mao of iDefense Labs.
Get paid for vulnerability research
Free tools, research and upcoming events
X. LEGAL NOTICES
Copyright © 2009 iDefense, Inc.
Permission is granted for the redistribution of this alert
electronically. It may not be edited in any way without the express
written consent of iDefense. If you wish to reprint the whole or any
part of this alert in any other medium other than electronically,
please e-mail email@example.com for permission.
Disclaimer: The information in the advisory is believed to be accurate
at the time of publishing based on currently available information. Use
of the information constitutes acceptance for use in an AS IS condition.
There are no warranties with regard to this information. Neither the
author nor the publisher accepts any liability for any direct,
indirect, or consequential loss or damage arising from use of, or
reliance on, this information.