Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:22619
HistoryOct 14, 2009 - 12:00 a.m.

Microsoft Security Bulletin MS09-062 - Critical Vulnerabilities in GDI+ Could Allow Remote Code Execution (957488)

2009-10-1400:00:00
vulners.com
148

Microsoft Security Bulletin MS09-062 - Critical
Vulnerabilities in GDI+ Could Allow Remote Code Execution (957488)
Published: October 13, 2009

Version: 1.0
General Information
Executive Summary

This security update resolves several privately reported vulnerabilities in Microsoft Windows GDI+. These vulnerabilities could allow remote code execution if a user viewed a specially crafted image file using affected software or browsed a Web site that contains specially crafted content. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

This security update is rated Critical for all supported editions of Windows XP and Windows Server 2003; Windows Vista and Windows Vista Service Pack 1; Windows Vista x64 Edition and Windows Vista x64 Edition Service Pack 1; Windows Server 2008 for 32-bit Systems, Windows Server 2008 for x64-based Systems, and Windows Server 2008 for Itanium-based Systems; Microsoft Internet Explorer 6 Service Pack 1 when installed on Microsoft Windows 2000 Service Pack 4, SQL Server 2000 Reporting Services Service Pack 2, all supported editions of SQL Server 2005, Microsoft Report Viewer 2005 Service Pack 1 Redistributable Package, Microsoft Report Viewer 2008 Redistributable Package, and Microsoft Report Viewer 2008 Redistributable Package Service Pack 1.

This security update is rated Important for all supported editions of Microsoft .NET Framework 1.1 and Microsoft .NET Framework 2.0 on Microsoft Windows 2000; Microsoft Office XP; Microsoft Office 2003; all affected Office Viewer software for Microsoft Office 2003; 2007 Microsoft Office System; all affected Office Viewer software for 2007 Microsoft Office System; Microsoft Office Compatibility Pack, Microsoft Expression Web, Microsoft Expression Web 2, Microsoft Office Groove 2007 and Microsoft Office Groove 2007 Service Pack 1; Microsoft Office Project 2002; Microsoft Office Visio 2002; Microsoft Works 8.5; and Microsoft Forefront Client Security 1.0.

For more information, see the subsection, Affected and Non-Affected Software, in this section.

The security update addresses the vulnerabilities by introducing proper data validations within GDI+ when rendering WMF images, modifying the way that GDI+ manages a heap buffer when reading a PNG file, modifying the way that GDI+ allocates a buffer used when reading TIFF files, This update modifies the way that GDI+ manages buffers when certain .NET API calls are made, modifying the way that GDI+ calculates the required size of a buffer while parsing a PNG image, , and modifying the way that Microsoft Office opens specially crafted files. For more information about the vulnerabilities, see the Frequently Asked Questions (FAQ) subsection for the specific vulnerability entry under the next section, Vulnerability Information.

Recommendation. Microsoft recommends that customers apply the update immediately.

Known Issues. Microsoft Knowledge Base Article 957488 documents the currently known issues that customers may experience when installing this security update. The article also documents recommended solutions for these issues.
Top of sectionTop of section
Affected and Non-Affected Software

The following software have been tested to determine which versions or editions are affected. Other versions or editions are either past their support life cycle or are not affected. To determine the support life cycle for your software version or edition, visit Microsoft Support Lifecycle.

Microsoft Windows and Components
Operating System Component Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update
Microsoft Windows

Windows XP Service Pack 2 and Windows XP Service Pack 3
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows XP Professional x64 Edition Service Pack 2
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Server 2003 Service Pack 2
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Server 2003 x64 Edition Service Pack 2
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Server 2003 with SP2 for Itanium-based Systems
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Vista and Windows Vista Service Pack 1
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Vista x64 Edition and Windows Vista x64 Edition Service Pack 1
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Server 2008 for 32-bit Systems*
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Server 2008 for x64-based Systems*
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052

Windows Server 2008 for Itanium-based Systems
(KB958869)

Not applicable

Remote Code Execution

Critical

MS08-052
Internet Explorer

Microsoft Windows 2000 Service Pack 4

Microsoft Internet Explorer 6 Service Pack 1
(KB958869)

Remote Code Execution

Critical

MS08-052
Microsoft .NET Framework

Microsoft Windows 2000 Service Pack 4

Microsoft .NET Framework 1.1 Service Pack 1
(KB971108)

Microsoft .NET Framework 2.0 Service Pack 1
(KB971110)

Remote Code Execution

Important

MS08-052

Microsoft Windows 2000 Service Pack 4

Microsoft .NET Framework 2.0 Service Pack 2
(KB971111)

Remote Code Execution

Important

None

*Server Core installation not affected. The vulnerabilities addressed by this update do not affect supported editions of Windows Server 2008 or Windows Server 2008 R2 as indicated, when installed using the Server Core installation option. For more information on this installation option, see the MSDN articles, Server Core and Server Core for Windows Server 2008 R2. Note that the Server Core installation option does not apply to certain editions of Windows Server 2008 and Windows Server 2008 R2; see Compare Server Core Installation Options.

Microsoft Office
Office Suite and Other Software Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update
Microsoft Office Suites

Microsoft Office XP Service Pack 3
(KB974811)*

Remote Code Execution

Important

MS08-052

Microsoft Office 2003 Service Pack 3
(KB972580)**

Remote Code Execution

Important

MS08-052

2007 Microsoft Office System Service Pack 1
(KB972581)***

Remote Code Execution

Important

MS08-052

2007 Microsoft Office System Service Pack 2
(KB972581)***

Remote Code Execution

Important

None
Other Office Software

Microsoft Office Project 2002 Service Pack 1
(KB974811)*

Remote Code Execution

Important

MS08-052

Microsoft Office Visio 2002 Service Pack 2
(KB975365)

Remote Code Execution

Important

MS08-052

Microsoft Office Word Viewer, Microsoft Word Viewer 2003, Microsoft Word Viewer 2003 Service Pack 3, Microsoft Office Excel Viewer 2003, Microsoft Office Excel Viewer 2003 Service Pack 3
(KB972580)**

Remote Code Execution

Important

MS08-052

Microsoft Office Excel Viewer, PowerPoint Viewer 2007, PowerPoint Viewer 2007 Service Pack 1
(KB972581)***

Remote Code Execution

Important

MS08-052

PowerPoint Viewer 2007 Service Pack 2
(KB972581)***

Remote Code Execution

Important

None

Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats Service Pack 1
(KB972581)***

Remote Code Execution

Important

MS08-052

Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats Service Pack 2
(KB972581)***

Remote Code Execution

Important

None

Microsoft Expression Web and Microsoft Expression Web 2
(KB972581)***

Remote Code Execution

Important

MS08-052

Microsoft Office Groove 2007 and Microsoft Office Groove 2007 Service Pack 1
(KB972581)***

Remote Code Execution

Important

MS08-052

Microsoft Works 8.5
(KB973636)

Remote Code Execution

Important

MS09-024

*These updates are identical.

**These updates are identical.

***These updates are identical.

Note Office Communicator 2005 and Office Communicator 2007 distribute a copy of gdiplus.dll that contains the affected code. However, Microsoft's analysis has shown that there are no reliable attack vectors exposed in these products.

Microsoft SQL Server

Depending on your software version or edition, you may need to choose between GDR and QFE software update links below in order to manually install your update from the Microsoft Download Center. For more information on determining which update to install on your system, see the Frequently Asked Questions (FAQ) Related to This Security Update subsection, in this section.
GDR Software Updates QFE Software Updates Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update

Not applicable

SQL Server 2000 Reporting Services Service Pack 2
(KB970899)

Remote Code Execution

Critical

MS08-052

SQL Server 2005 Service Pack 2
(KB970895)

SQL Server 2005 Service Pack 2
(KB970896)

Remote Code Execution

Critical

MS09-004

SQL Server 2005 x64 Edition Service Pack 2
(KB970895)

SQL Server 2005 x64 Edition Service Pack 2
(KB970896)

Remote Code Execution

Critical

MS09-004

SQL Server 2005 for Itanium-based Systems Service Pack 2
(KB970895)

SQL Server 2005 for Itanium-based Systems Service Pack 2
(KB970896)

Remote Code Execution

Critical

MS09-004

SQL Server 2005 Service Pack 3
(KB970892)

SQL Server 2005 Service Pack 3
(KB970894)

Remote Code Execution

Critical

None

SQL Server 2005 x64 Edition Service Pack 3
(KB970892)

SQL Server 2005 x64 Edition Service Pack 3
(KB970894)

Remote Code Execution

Critical

None

SQL Server 2005 for Itanium-based Systems Service Pack 3
(KB970892)

SQL Server 2005 for Itanium-based Systems Service Pack 3
(KB970894)

Remote Code Execution

Critical

None

Developer Tools
Software Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update

Microsoft Visual Studio .NET 2003 Service Pack 1
(KB971022)

None

None[1]

MS08-052

Microsoft Visual Studio 2005 Service Pack 1
(KB971023)

None

None[1]

MS08-052

Microsoft Visual Studio 2008
(KB972221)

None

None[1]

MS08-052

Microsoft Visual Studio 2008 Service Pack 1
(KB972222)

None

None[1]

None

Microsoft Report Viewer 2005 Service Pack 1 Redistributable Package
(KB971117)

Remote Code Execution

Critical

MS08-052

Microsoft Report Viewer 2008 Redistributable Package
(KB971118)

Remote Code Execution

Critical

MS08-052

Microsoft Report Viewer 2008 Redistributable Package Service Pack 1
(KB971119)

Remote Code Execution

Critical

None

Microsoft Visual FoxPro 8.0 Service Pack 1 when installed on Microsoft Windows 2000 Service Pack 4
(KB971104)

None

None[1]

MS08-052

Microsoft Visual FoxPro 9.0 Service Pack 2 when installed on Microsoft Windows 2000 Service Pack 4
(KB971105)

None

None[1]

MS08-052

Microsoft Platform SDK Redistributable: GDI+
(KB975337)

None

None[1]

MS08-052

[1]Severity ratings do not apply to this update because Microsoft has not identified any attack vectors relating to the vulnerabilities discussed in this bulletin specific to these software. However, this security update is being offered to developers who use this software so that they may issue their own updated version of their applications. See the entry in the Frequently Asked Questions (FAQ) Related to This Security Update section, below.

Security Software
Software Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update

Microsoft Forefront Client Security 1.0 when installed on Microsoft Windows 2000 Service Pack 4
(KB975962)

Remote Code Execution

Important

MS08-052

Non-Affected Software
Software Component
Operating Systems and Components

Microsoft Windows 2000 Service Pack 4

Not applicable

Windows Vista Service Pack 2

Not applicable

Windows Vista x64 Edition Service Pack 2

Not applicable

Windows Server 2008 for 32-bit Systems Service Pack 2

Not applicable

Windows Server 2008 for x64-based Systems Service Pack 2

Not applicable

Windows Server 2008 for Itanium-based Systems Service Pack 2

Not applicable

Windows 7 for 32-bit Systems

Not applicable

Windows 7 for x64-based Systems

Not applicable

Windows Server 2008 R2 for x64-based Systems

Not applicable

Windows Server 2008 R2 for Itanium-based Systems

Not applicable

Microsoft Windows 2000 Service Pack 4

Microsoft Internet Explorer 5.01 Service Pack 4
Windows Messenger 5.1

Windows XP Service Pack 2 and Windows XP Service Pack 3

Microsoft Internet Explorer 6
Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7
Windows Messenger 5.1

Windows XP Professional x64 Edition Service Pack 2

Microsoft Internet Explorer 6
Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7
Windows Messenger 5.1

Windows Server 2003 Service Pack 2

Microsoft Internet Explorer 6
Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7
Windows Messenger 5.1

Windows Server 2003 x64 Edition Service Pack 2

Microsoft Internet Explorer 6
Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7
Windows Messenger 5.1

Windows Server 2003 with SP2 for Itanium-based Systems

Microsoft Internet Explorer 6
Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7

Windows Vista, Windows Vista Service Pack 1, and Windows Vista Service Pack 2

Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7

Windows Vista x64 Edition, Windows Vista x64 Edition Service Pack 1, and Windows Vista x64 Edition Service Pack 2

Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7

Windows Server 2008 for 32-bit Systems and Windows Server 2008 for 32-bit Systems Service Pack 2

Windows Internet Explorer 7
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7

Windows Server 2008 for x64-based Systems and Windows Server 2008 for x64-based Systems Service Pack 2

Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7

Windows Server 2008 for Itanium-based Systems and Windows Server 2008 for Itanium-based Systems Service Pack 2

Windows Internet Explorer 7
Windows Internet Explorer 8
Microsoft .NET Framework 1.0 Service Pack 3
Microsoft .NET Framework 1.1 Service Pack 1
Microsoft .NET Framework 2.0
Microsoft .NET Framework 2.0 Service Pack 1
Microsoft .NET Framework 2.0 Service Pack 2
Microsoft .NET Framework 3.0
Microsoft .NET Framework 3.0 Service Pack 1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 3.5 Service Pack 1
Windows Messenger 4.7
Other Office Software

Microsoft Visio 2003 Viewer

Microsoft Visio 2007 Viewer and Microsoft Visio 2007 Viewer Service Pack 1

Microsoft Office SharePoint Server 2007

Microsoft Office SharePoint Server 2007 Service Pack 1

Microsoft Works 9.0

Microsoft Works Suite 2005

Microsoft Works Suite 2006

Microsoft Office 2004 for Mac

Microsoft Office 2008 for Mac

Microsoft SQL Server

SQL Server 7.0 Service Pack 4

SQL Server 2000 Service Pack 4

SQL Server 2000 Itanium-based Edition Service Pack 4

Microsoft Data Engine (MSDE) 1.0

Microsoft SQL Server 2000 Desktop Engine (MSDE 2000)

Microsoft SQL Server 2005 Express Edition Service Pack 2

Top of sectionTop of section

Frequently Asked Questions (FAQ) Related to This Security Update

Where are the file information details?
The file information details can be found in Microsoft Knowledge Base Article 957488.

What are the known issues that customers may experience when installing this security update?
Microsoft Knowledge Base Article 957488 documents the currently known issues that customers may experience when they install this security update. The article also documents recommended solutions for these issues.

There are both GDR and QFE updates offered for my version of SQL. How do I know which update to use?
First, determine your SQL Server version number. For more information on determining your SQL Server version number, see Microsoft Knowledge Base Article 321185.

Second, in the table below, locate the version range that your SQL Server version number falls within. The corresponding update is the update you need to install.

Note If your SQL Server version number does not fall within any of the ranges in the table below, your SQL Server version is no longer supported. Please upgrade to the latest Service Pack or SQL Server product in order to apply this and future security updates.
SQL Server Version Range

9.00.3042-9.00.3079

9.00.3150-9.00.3352

9.00.4035-9.00.4052

9.00.4205-9.00.4261
SQL Server Update

SQL Server 2005 Service Pack 2 GDR
(KB970895)

SQL Server 2005 Service Pack 2 QFE
(KB970896)

SQL Server 2005 Service Pack 3 GDR
(KB970892)

SQL Server 2005 Service Pack 3 QFE
(KB970894)

For additional installation instructions, see the Security Update Information subsection for your SQL Server edition in the Update Information section.

I don’t have Microsoft Works 8 on my system, but Microsoft Office installed a Works subdirectory with gdiplus.dll in it. Is my system vulnerable?
The copy of gdiplus.dll in the Works subdirectory is not used by any vulnerable software and will not need to be updated when Microsoft Works is not installed.

I have a non-vulnerable version of software installed, why am I being offered this update?
Some of the non-affected software including Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats contain the vulnerable shared office components, but because they do not access the vulnerable code, they are not affected by this vulnerability. However, since the vulnerable code is present, this update will be offered.

The last two Microsoft Security Bulletins for GDI+, MS04-028and MS08-052, list affected and non-affected software that are not listed in this bulletin. Why?
The software listed in this bulletin have been tested to determine which supported versions or editions are affected and which supported versions are not affected. Other versions or editions listed in the MS04-028 and MS08-052 are past their support life cycle. To determine the support life cycle for your software version or edition, visit Microsoft Support Lifecycle.

Why are Microsoft Visual Studio, Microsoft Visual FoxPro,and Microsoft Platform SDK Redistributable: GDI+listed in the Affected Software table if they are not impacted by the vulnerabilities described by this bulletin?
Microsoft has not identified any attack vectors for these vulnerabilities specific to the affected software updated for Microsoft Visual Studio, Microsoft Visual FoxPro, or Microsoft Platform SDK Redistributable: GDI+. This security update is being offered to developers who use Microsoft Visual Studio, Microsoft Visual FoxPro, or Microsoft Platform SDK Redistributable: GDI+ so that they may issue their own updated version of their applications.

Is Microsoft Windows 2000 Service Pack 4 affected by the vulnerabilities listed in this bulletin?
No. By default, Microsoft Windows 2000 Service Pack 4 is not affected, and will not be offered the update. However, the following software are vulnerable when installed on Microsoft Windows 2000 Service Pack 4:

Microsoft Internet Explorer 6*

Microsoft .NET Framework 1.1 Service Pack 1**

Microsoft .NET Framework 2.0 Service Pack 1**

Microsoft .NET Framework 2.0 Service Pack 2**

RSClientPrint ActiveX Control*

Microsoft Forefront Client Security 1.0*

*These software are only vulnerable when installed on Microsoft Windows 2000 Service Pack 4.

**These software are vulnerable on all supported operating systems. The security updates for these software are only offered for Windows 2000 Service Pack 4. Customers who apply the security updates for supported editions of Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008 will also be protected by the vulnerabilities in these software.

Additionally, the updates for developers using Microsoft Visual FoxPro 8.0 Service Pack 1, Microsoft Visual FoxPro 9.0 Service Pack 2, and Microsoft Platform SDK Redistributable: GDI+ only apply for application developers who develop their software on systems running Microsoft Windows 2000 Service Pack 4.

Why is Windows Server 2008 Server Core being offered this update?
The vulnerabilities addressed by this update do not affect supported editions of Windows Server 2008 if Windows Server 2008 was installed using the Server Core installation option, even though the files affected by these vulnerabilities may be present on the system. However, users with the affected files will still be offered this update because the update files are newer (with higher version numbers) than the files that are currently on your system. For more information on this installation option, see Server Core. Note that the Server Core installation option does not apply to certain editions of Windows Server 2008; see Compare Server Core Installation Options.

I use Microsoft Office 2003 Service Pack 2. Are any additional security features included in this update?
Yes, as part of the servicing model for Microsoft Office 2003, when users of Microsoft Office 2003 Service Pack 2 install this update, their systems will be upgraded to security functionality that was initially released with Microsoft Office 2003 Service Pack 3. All updates released after January 1, 2008 for Microsoft Office 2003 Service Pack 2 will include these security features, which were introduced in Microsoft Office 2003 Service Pack 3. We have thoroughly tested this update, but as with all updates, we recommend that users perform testing appropriate to the environment and configuration of their systems. For more information on this issue, please see Microsoft Knowledge Base Article 951646.

If I have an installation of SQL Server, how am I affected?
When SQL Server Reporting Services is installed, the affected installations of SQL Server software may host the RSClientPrint ActiveX control. This ActiveX control distributes a copy of gdiplus.dll containing the affected code. Customers are only impacted when the RSClientPrint ActiveX control is installed on Microsoft Windows 2000 operating systems. If the RSClientPrint ActiveX control is installed on any other operating system, the system version of GDI+ will be used and the corresponding operating system update will protect them.

Customers with affected installations of SQL Server that are installed on Windows 2000 operating systems and have the RSClientPrint ActiveX control should apply the update immediately.

SQL Server Reporting Services is an optional component and must be installed for this security update to apply. Affected installations of SQL Server will only be offered this update if SQL Server Reporting Services is installed.

Which editions of Microsoft SQL Server 2005 Service Pack 2 include SQL Server Reporting Services?
SQL Server Reporting Services is an optional component on the following editions of Microsoft SQL Server 2005 Service Pack 2:

Microsoft SQL Server 2005 Enterprise Edition

Microsoft SQL Server 2005 Standard Edition

Microsoft SQL Server 2005 Developer Edition

Microsoft SQL Server 2005 Workgroup Edition

Microsoft SQL Server 2005 Evaluation Edition

Microsoft SQL Server 2005 Enterprise X64 Edition

Microsoft SQL Server 2005 Standard X64 Edition

Microsoft SQL Server 2005 Developer x64 Edition

Microsoft SQL Server 2005 Evaluation x64 Edition

Microsoft SQL Server 2005 Enterprise Edition for Itanium-based Systems

Microsoft SQL Server 2005 Standard Edition for Itanium-based Systems

Microsoft SQL Server 2005 Developer Edition for Itanium-based Systems

Microsoft SQL Server 2005 Evaluation Edition for Itanium-based Systems

Microsoft SQL Server 2005 Express Edition with Advanced Services

What is the RSClientPrint ActiveX control?
The Microsoft ActiveX control, RSClientPrint, provides client-side printing for reports viewed in HTML Viewer. It provides a Print dialog box so that a user can initiate a print job, preview a report, specify pages to print, and change the margins. During a client-side print operation, the report server renders the report as an Enhanced Metafile (EMF) image and uses the print capabilities of the operating system to create the print job and send it to a printer. For more information on the RSClientPrint ActiveX control, see Using the RSClientPrint Control in Custom Applications.

I have SQL Server Reporting Services installed and I have Microsoft Windows 2000 clients. What actions should I take?
First, you should apply the security update to your SQL Server Reporting Services servers. Once that installation is complete, you should have your Microsoft Windows 2000 clients connect to the SQL Server Reporting Services server: this will automatically update the ActiveX control on the Microsoft Windows 2000 systems.

I have SQL Server Reporting Services installed and I have Windows clients for versions other than Microsoft Windows 2000. What actions should I take?
You should apply the security update available for the version of Microsoft Windows appropriate to the Windows client systems. Customers who do not have Microsoft Windows 2000 clients do not need to apply the update to their SQL Server Reporting Services servers. Microsoft recommends these customers install the update to the affected installations of SQL Server at the earliest convenience if the potential exists that their SQL Server Reporting Services servers will support Microsoft Windows 2000 clients.

As a defense-in-depth measure, a future Update Rollup for ActiveX Kill Bits will include a kill bit to prevent the RSClientPrint ActiveX control from running in Internet Explorer. Customers who apply this future kill bit update and have not updated their affected installations of SQL Server at this time will not be able to initiate print jobs until their SQL Servers are updated with this security update.

Is there a preferred order for updating my operating systems and installations of SQL Server?
The vulnerability addressed in this security update affects Microsoft Windows 2000 Service Pack 4 operating systems with the RSClientPrint ActiveX control, as well as the affected SQL Server software.

For affected installations of SQL Server software that have not applied the security update:

Customers with affected installations of SQL Server software installed on Microsoft Windows 2000 operating systems with the RSClientPrint ActiveX control installed should apply the security update for maximum security.

Customers with Microsoft Windows 2000 operating systems with the RSClientPrint ActiveX control installed must manually apply the provided kill bit workaround for the RSClientPrint ActiveX control for maximum security. Customers will not be able to initiate print jobs from these systems until their affected installations of SQL Server are updated with the security update.

Customers who are running Windows XP onwards and have installed the operating system update do not need to take any further action, as the RSClientPrint ActiveX control will use the operating system version of gdiplus.dll.

For affected installations of SQL Server software that have applied the security update:

Customers with Microsoft Windows 2000 Service Pack 4 operating systems with the RSClientPrint ActiveX control installed will be offered the updated ActiveX control when they next attempt to initiate a print job.

Customers who are running Windows XP onwards and have installed the operating system update do not need to take any further action, as the RSClientPrint ActiveX control will use the operating system version of gdiplus.dll. However, these clients will also be offered the updated ActiveX control when they next attempt to initiate a print job.

I am a third-party application developer and I use gdiplus.dll in my application. Is my application vulnerable and how do I update it?
Developers who redistribute gdiplus.dll should ensure that they update the version of gdiplus.dll installed with their application by downloading the update provided in this bulletin. Developers are encouraged to follow recommended best practices for using a shared component. For more information on best practices on shared component use, please see the Microsoft Knowledge Base Article 835322 on Isolated Applications.

I am developing software which contains the redistributable file gdiplus.dll. What do I do?
You should install the security update included in this security bulletin for your development software. If you have redistributed gdiplus.dll with your application, you should issue an updated version of your application to your customers with the updated version of this file included in the download of this security update for your development software.

If third-party applications use or install the affected gdiplus.dll component, could I still be vulnerable even after I have installed all required Microsoft security updates?
No, this security update replaces and re-registers the affected component provided with the operating system. If third party applications follow the recommended best practices for using a shared component as a side-by-side assembly then they are also not affected. Customers are potentially at risk if third party applications do not follow the recommended best practices and instead redistribute an old version of gdiplus.dll with their application. Customers who wish to manually check for the registered affected files can compare applications installed on their systems against those listed in Microsoft Knowledge Base Article 957488. Customers are encouraged to contact their third party solutions developer for additional information.

Why does this update address several reported security vulnerabilities?
This update contains support for several vulnerabilities because the modifications that are required to address these issues are located in related files. Instead of having to install several updates that are almost the same, customers need to install this update only.

Does this update contain any security-related changes to functionality?
After installing this security update, customers can selectively disable GDI+ image parsers for certain file formats. As a defense-in-depth measure, customers can reduce their attack surface by editing the registry to disable the BMP, EMF, GIF, ICO, JPEG, PNG, TIFF, and WMF formats. The instructions for disabling the BMP, GIF, ICO, JPEG, PNG, and TIFF formats can be found in Microsoft Knowledge Base Article 958911. The instructions for disabling the EMF and WMF formats can be found in Microsoft Knowledge Base Article 941835.

What is GDI+?
GDI+ is a graphics device interface that provides two-dimensional vector graphics, imaging, and typography to applications and programmers.

What is VML?
Vector Markup Language (VML) is an XML-based exchange, editing, and delivery format for high-quality vector graphics on the Web that meets the needs of both productivity users and graphic design professionals. XML is a simple, flexible, and open text-based language that complements HTML. For more information on the VML, see the product documentation.

I am using an older release of the software discussed in this security bulletin. What should I do?
The affected software listed in this bulletin have been tested to determine which releases are affected. Other releases are past their support life cycle. To determine the support life cycle for your software release, visit Microsoft Support Lifecycle.

It should be a priority for customers who have older releases of the software to migrate to supported releases to prevent potential exposure to vulnerabilities. For more information about the Windows Product Lifecycle, visit Microsoft Support Lifecycle. For more information about the extended security update support period for these software versions or editions, visit Microsoft Product Support Services.

Customers who require custom support for older releases must contact their Microsoft account team representative, their Technical Account Manager, or the appropriate Microsoft partner representative for custom support options. Customers without an Alliance, Premier, or Authorized Contract can contact their local Microsoft sales office. For contact information, visit Microsoft Worldwide Information, select the country, and then click Go to see a list of telephone numbers. When you call, ask to speak with the local Premier Support sales manager. For more information, see the Windows Operating System Product Support Lifecycle FAQ.
Top of sectionTop of section
Vulnerability Information

Severity Ratings and Vulnerability Identifiers

The following severity ratings assume the potential maximum impact of the vulnerability. For information regarding the likelihood, within 30 days of this security bulletin's release, of the exploitability of the vulnerability in relation to its severity rating and security impact, please see the Exploitability Index in the October bulletin summary. For more information, see Microsoft Exploitability Index.
Vulnerability Severity Rating and Maximum Security Impact by Affected Software
Affected Software GDI+ WMF Integer Overflow Vulnerability - CVE-2009-2500 GDI+ PNG Heap Overflow Vulnerability - CVE-2009-2501 GDI+ TIFF Buffer Overflow Vulnerability - CVE-2009-2502 GDI+ TIFF Memory Corruption Vulnerability - CVE-2009-2503 GDI+ .NET API Vulnerability - CVE-2009-2504 GDI+ PNG Integer Overflow Vulnerability - CVE-2009-3126 Memory Corruption Vulnerability - CVE-2009-2528 Office BMP Integer Overflow Vulnerability - CVE-2009-2518 Aggregate Severity Rating
Windows 2000 and Components

Microsoft Internet Explorer 6 Service Pack 1 when installed on Microsoft Windows 2000 Service Pack 4

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

Microsoft .NET Framework 1.1 Service Pack 1 when installed on Microsoft Windows 2000 Service Pack 4

None[1]

None[1]

None[1]

None[1]

Important
Remote Code Execution

None[1]

Not applicable

Not applicable

Important

Microsoft .NET Framework 2.0 Service Pack 1 when installed on Microsoft Windows 2000 Service Pack 4

None[1]

None[1]

None[1]

None[1]

Important
Remote Code Execution

None[1]

Not applicable

Not applicable

Important

Microsoft .NET Framework 2.0 Service Pack 2 when installed on Microsoft Windows 2000 Service Pack 4

None[1]

None[1]

None[1]

None[1]

Important
Remote Code Execution

None[1]

Not applicable

Not applicable

Important
Windows XP and Components

Windows XP Service Pack 2 and Windows XP Service Pack 3

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

Windows XP Professional x64 Edition Service Pack 2

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical
Windows Server 2003 and Components

Windows Server 2003 Service Pack 2

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical

Windows Server 2003 x64 Edition Service Pack 2

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical

Windows Server 2003 with SP2 for Itanium-based Systems

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical
Windows Vista and Components

Windows Vista and Windows Vista Service Pack 1

Not applicable

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical

Windows Vista x64 Edition and Windows Vista x64 Edition Service Pack 1

Not applicable

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical
Windows Server 2008 and Components

Windows Server 2008 for 32-bit Systems*

Not applicable

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical

Windows Server 2008 for x64-based Systems*

Not applicable

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical

Windows Server 2008 for Itanium-based Systems

Not applicable

Not applicable

Not applicable

Not applicable

Critical
Remote Code Execution

Not applicable

Not applicable

Not applicable

Critical
Microsoft Office Suites

Microsoft Office XP Service Pack 3

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important

Microsoft Office 2003 Service Pack 3

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

2007 Microsoft Office System Service Pack 1

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

2007 Microsoft Office System Service Pack 2

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important
Other Office Software

Microsoft Office Project 2002 Service Pack 1

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Visio 2002 Service Pack 2

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Office Word Viewer, Microsoft Word Viewer 2003, Microsoft Word Viewer 2003 Service Pack 3, Microsoft Office Excel Viewer 2003, Microsoft Office Excel Viewer 2003 Service Pack 3

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Office Excel Viewer, Microsoft Office PowerPoint Viewer 2007, Microsoft Office PowerPoint Viewer 2007 Service Pack 1

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Office PowerPoint Viewer 2007 Service Pack 2

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats Service Pack 1

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats Service Pack 2

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Expression Web and Microsoft Expression Web 2

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Office Groove 2007 and Microsoft Office Groove 2007 Service Pack 1

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

Microsoft Works 8.5

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important
SQL Server

SQL Server 2000 Reporting Services Service Pack 2

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

SQL Server 2005 Service Pack 2

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

SQL Server 2005 x64 Edition Service Pack 2

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

SQL Server 2005 for Itanium-based Systems Service Pack 2

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

SQL Server 2005 Service Pack 3

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

SQL Server 2005 x64 Edition Service Pack 3

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

SQL Server 2005 for Itanium-based Systems Service Pack 3

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical
Developer Tools

Microsoft Visual Studio .NET 2003 Service Pack 1

None[1]

None[1]

None[1]

None[1]

None[1]

None[1]

Not applicable

Not applicable

None[1]

Microsoft Visual Studio 2005 Service Pack 1

None[1]

None[1]

None[1]

None[1]

None[1]

None[1]

Not applicable

Not applicable

None[1]

Microsoft Visual Studio 2008

None[1]

None[1]

None[1]

None[1]

None[1]

None[1]

Not applicable

Not applicable

None[1]

Microsoft Visual Studio 2008 Service Pack 1

None[1]

None[1]

None[1]

None[1]

None[1]

None[1]

Not applicable

Not applicable

None[1]

Microsoft Report Viewer 2005 Service Pack 1 Redistributable Package

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

Microsoft Report Viewer 2008 Redistributable Package

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

Microsoft Report Viewer 2008 Redistributable Package Service Pack 1

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Not applicable

Not applicable

Critical

Microsoft Visual FoxPro 8.0 Service Pack 1 when installed on Microsoft Windows 2000 Service Pack 4

None[1]

None[1]

None[1]

None[1]

None[1]

None[1]

Not applicable

Not applicable

None[1]

Microsoft Visual FoxPro 9.0 Service Pack 2 when installed on Microsoft Windows 2000 Service Pack 4

None[1]

None[1]

None[1]

None[1]

None[1]

None[1]

Not applicable

Not applicable

None[1]

Microsoft Platform SDK Redistributable: GDI+

None[1]

None[1]

None[1]

None[1]

None[1]

None[1]

Not applicable

Not applicable

None[1]
Security Software

Microsoft Forefront Client Security 1.0 when installed on Microsoft Windows 2000 Service Pack 4

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Important
Remote Code Execution

Not applicable

Not applicable

Important

*Server Core installation not affected. The vulnerabilities addressed by this update do not affect supported editions of Windows Server 2008 or Windows Server 2008 R2 as indicated, when installed using the Server Core installation option. For more information on this installation option, see the MSDN articles, Server Core and Server Core for Windows Server 2008 R2. Note that the Server Core installation option does not apply to certain editions of Windows Server 2008 and Windows Server 2008 R2; see Compare Server Core Installation Options.

[1]Severity ratings do not apply to this update because Microsoft has not identified any attack vectors relating to the vulnerabilities discussed in this bulletin specific to these software. However, this security update is being offered to developers who use this software so that they may issue their own updated version of their applications. See the entry in the Frequently Asked Questions (FAQ) Related to This Security Update section, below.
Top of sectionTop of section

GDI+ WMF Integer Overflow Vulnerability - CVE-2009-2500

A remote code execution vulnerability exists in the way that GDI+ allocates buffer size when handling WMF image files. The vulnerability could allow remote code execution if a user opens a specially crafted WMF image file or browses to a Web site that contains specially crafted content. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-2500.

Mitigating Factors for GDI+ WMF Integer Overflow Vulnerability - CVE-2009-2500

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.

By default, Internet Explorer on Windows Server 2003 and Windows Server 2008 runs in a restricted mode that is known as Enhanced Security Configuration. This mode sets the security level for the Internet zone to High. This is a mitigating factor for Web sites that you have not added to the Internet Explorer Trusted sites zone. See the FAQ subsection of this vulnerability section for more information about Internet Explorer Enhanced Security Configuration.

The vulnerability could be exploited by an attacker who convinced a user to open a specially crafted file. There is no way for an attacker to force a user to open a specially crafted file.
Top of sectionTop of section

Workarounds for GDI+ WMF Integer Overflow Vulnerability - CVE-2009-2500

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Disable metafile processing

  1. Click Start, click Run, type Regedit, and then click OK.

  2. Locate and then click the following registry subkey:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\GRE_Initialize

  1. On the Edit menu, select New, and then click DWORD.

  2. Type DisableMetaFiles, and then press ENTER.

  3. On the Edit menu, click Modify to modify the DisableMetaFiles registry entry.

  4. In the Value data box, type 1, and then click OK.

  5. Exit Registry Editor.

  6. Reboot the computer.

Impact of workaround. Metafile processing will stop working.

How to undo the workaround.

  1. Click Start, click Run, type Regedit, and then click OK.

  2. Locate and then click the following registry subkey:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\GRE_Initialize

  1. On the Edit menu, click Modify on the DisableMetaFiles registry entry.

  2. In the Value data box, type 0, and then click OK.

  3. Exit Registry Editor.

  4. Reboot the computer.

Disable metafile processing through GPO

  1. Save the following to a file with a .REG extension (e.g. Disable_MetaFiles.reg):

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\GRE_Initialize]

"DisableMetaFiles"=dword:00000001

  1. Run the above registry script on the target machine with the following command from an administrator command prompt:

Regedit.exe /s Disable_MetaFiles.reg

  1. Reboot the computer.

Impact of workaround. Metafile processing will stop working.

Restrict access to gdiplus.dll

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N

  1. Restart

Impact of workaround. Windows Picture and Fax Viewer (on editions prior to Windows Vista) and other applications that rely on GDI+ will not be able to view images. Also, thumbnails in Windows Explorer (on versions prior to Vista) will not display.

How to undo the workaround.

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone
cacls "%programfiles(x86)%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone

  1. Restart

Unregister vgx.dll

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the un-registration process has succeeded. Click OK to close the dialog box.

Impact of workaround. Applications that render VML will no longer do so once vgx.dll has been unregistered.

How to undo the workaround.

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the registration process has succeeded. Click OK to close the dialog box.

Prevent RSClientPrint from running in Internet Explorer

You can disable attempts to instantiate RSClientPrint in Internet Explorer by setting the kill bit for the control in the registry.

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

For detailed steps that you can use to prevent a control from running in Internet Explorer, see Microsoft Knowledge Base Article 240797. Follow these steps in this article to create a Compatibility Flags value in the registry to prevent RSClientPrint from being instantiated in Internet Explorer.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Impact of workaround. There is no impact as long as the object is not intended to be used in Internet Explorer.

How to undo the workaround.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Read e-mails in plain text

To help protect yourself from the e-mail attack vector, read e-mail messages in plain text format.

Microsoft Office Outlook 2002 users who have applied Office XP Service Pack 1 or a later version and Microsoft Office Outlook Express 6 users who have applied Internet Explorer 6 Service Pack 1 or a later version can enable this setting and view e-mail messages that are not digitally signed or e-mail messages that are not encrypted in plain text only.

Digitally signed e-mail messages or encrypted e-mail messages are not affected by the setting and may be read in their original formats. For more information about how to enable this setting in Outlook 2002, see Microsoft Knowledge Base Article 307594.

For information about this setting in Outlook Express 6, see Microsoft Knowledge Base Article 291387.

Impact of workaround. E-mail messages that are viewed in plain text format will not contain pictures, specialized fonts, animations, or other rich content. Additionally:

The changes are applied to the preview pane and to open messages.

Pictures become attachments so that they are not lost.

Because the message is still in Rich Text or HTML format in the store, the object model (custom code solutions) may behave unexpectedly.
Top of sectionTop of section

FAQ for GDI+ WMF Integer Overflow Vulnerability - CVE-2009-2500

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

What causes the vulnerability?
The vulnerability results from GDI+ improperly validating and restricting buffer lengths passed to the heap.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain the same user rights as the logged-on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

How could an attacker exploit the vulnerability?
An attacker could host a specially crafted Web site that is designed to exploit this vulnerability through Internet Explorer and then convince a user to view the Web site. This can also include compromised Web sites and Web sites that accept or host user-provided content or advertisements. These Web sites could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or in an Instant Messenger request that takes users to the attacker's Web site. It could also be possible to display specially crafted Web content by using banner advertisements or by using other methods to deliver Web content to affected systems.

In an e-mail attack scenario, an attacker could exploit the vulnerability by sending Outlook users a specially crafted e-mail, or by sending a specially-crafted Office Document to the user and by convincing the user to open the file or read the message…

Attackers could also exploit this vulnerability by hosting a malicious image on a network share and then convincing a user to browse to the folder in Windows Explorer.

What systems are primarily at risk from the vulnerability?
This vulnerability requires that a user is logged on and reading e-mail messages, visiting Web sites, or opening files from a network share for any malicious action to occur. Therefore, any systems where e-mail messages are read, where Internet Explorer is used frequently, or where users have network share access, such as workstations or terminal servers, are at the most risk from this vulnerability. Systems that are not typically used to visit Web sites, such as most server systems, are at a reduced risk.

What does the update do?
The update addresses the vulnerability by introducing proper data validations within GDI+ when rendering WMF images.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

GDI+ PNG Heap Overflow Vulnerability - CVE-2009-2501

A remote code execution vulnerability exists in the way that GDI+ allocates memory. The vulnerability could allow remote code execution if a user opens a specially crafted PNG image file. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-2501.

Mitigating Factors for GDI+ PNG Heap Overflow Vulnerability - CVE-2009-2501

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.

By default, Internet Explorer on Windows Server 2003 and Windows Server 2008 runs in a restricted mode that is known as Enhanced Security Configuration. This mode sets the security level for the Internet zone to High. This is a mitigating factor for Web sites that you have not added to the Internet Explorer Trusted sites zone. See the FAQ subsection of this vulnerability section for more information about Internet Explorer Enhanced Security Configuration.
Top of sectionTop of section

Workarounds for GDI+ PNG Heap Overflow Vulnerability - CVE-2009-2501

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Restrict access to gdiplus.dll

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N

  1. Restart

Impact of workaround. Windows Picture and Fax Viewer (on editions prior to Windows Vista) and other applications that rely on GDI+ will not be able to view images. Also, thumbnails in Windows Explorer (on versions prior to Vista) will not display.

How to undo the workaround.

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone
cacls "%programfiles(x86)%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone

  1. Restart

Unregister vgx.dll

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the un-registration process has succeeded. Click OK to close the dialog box.

Impact of workaround. Applications that render VML will no longer do so once vgx.dll has been unregistered.

How to undo the workaround.

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the registration process has succeeded. Click OK to close the dialog box.

Prevent RSClientPrint from running in Internet Explorer

You can disable attempts to instantiate RSClientPrint in Internet Explorer by setting the kill bit for the control in the registry.

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

For detailed steps that you can use to prevent a control from running in Internet Explorer, see Microsoft Knowledge Base Article 240797. Follow these steps in this article to create a Compatibility Flags value in the registry to prevent RSClientPrint from being instantiated in Internet Explorer.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Impact of workaround. There is no impact as long as the object is not intended to be used in Internet Explorer.

How to undo the workaround.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Read e-mails in plain text

To help protect yourself from the e-mail attack vector, read e-mail messages in plain text format.

Microsoft Office Outlook 2002 users who have applied Office XP Service Pack 1 or a later version and Microsoft Office Outlook Express 6 users who have applied Internet Explorer 6 Service Pack 1 or a later version can enable this setting and view e-mail messages that are not digitally signed or e-mail messages that are not encrypted in plain text only.

Digitally signed e-mail messages or encrypted e-mail messages are not affected by the setting and may be read in their original formats. For more information about how to enable this setting in Outlook 2002, see Microsoft Knowledge Base Article 307594.

For information about this setting in Outlook Express 6, see Microsoft Knowledge Base Article 291387.

Impact of workaround. E-mail messages that are viewed in plain text format will not contain pictures, specialized fonts, animations, or other rich content. Additionally:

The changes are applied to the preview pane and to open messages.

Pictures become attachments so that they are not lost.

Because the message is still in Rich Text or HTML format in the store, the object model (custom code solutions) may behave unexpectedly.
Top of sectionTop of section

FAQ for GDI+ PNG Heap Overflow Vulnerability - CVE-2009-2501

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

What causes the vulnerability?
This vulnerability is caused by an unchecked buffer in the PNG processing by GDI+.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain the same user rights as the logged-on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

How could an attacker exploit the vulnerability?
An attacker could host a specially crafted Web site that is designed to exploit this vulnerability through Internet Explorer and then convince a user to view the Web site. This can also include compromised Web sites and Web sites that accept or host user-provided content or advertisements. These Web sites could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or in an Instant Messenger request that takes users to the attacker's Web site. It could also be possible to display specially crafted Web content by using banner advertisements or by using other methods to deliver Web content to affected systems.

In an e-mail attack scenario, an attacker could exploit the vulnerability by sending Outlook users a specially crafted e-mail, or by sending a specially-crafted Office Document to the user and by convincing the user to open the file or read the message. .

Attackers could also exploit this vulnerability by hosting a malicious image on a network share and then convincing a user to browse to the folder in Windows Explorer.

What systems are primarily at risk from the vulnerability?
This vulnerability requires that a user is logged on and reading e-mail messages, visiting Web sites, or opening files from a network share for any malicious action to occur. Therefore, any systems where e-mail messages are read, where Internet Explorer is used frequently, or where users have network share access, such as workstations or terminal servers, are at the most risk from this vulnerability. Systems that are not typically used to visit Web sites, such as most server systems, are at a reduced risk.

What does the update do?
The update removes the vulnerability by modifying the way that GDI+ manages a heap buffer when reading a PNG file.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

GDI+ TIFF Buffer Overflow Vulnerability - CVE-2009-2502

A remote code execution vulnerability exists in the way that GDI+ allocates memory. The vulnerability could allow remote code execution if a user opens a specially crafted TIFF file. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-2502.

Mitigating Factors for GDI+ TIFF Buffer Overflow Vulnerability - CVE-2009-2502

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.

By default, Internet Explorer on Windows Server 2003 and Windows Server 2008 runs in a restricted mode that is known as Enhanced Security Configuration. This mode sets the security level for the Internet zone to High. This is a mitigating factor for Web sites that you have not added to the Internet Explorer Trusted sites zone. See the FAQ subsection of this vulnerability section for more information about Internet Explorer Enhanced Security Configuration.
Top of sectionTop of section

Workarounds for GDI+ TIFF Buffer Overflow Vulnerability - CVE-2009-2502

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Restrict access to gdiplus.dll

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N

  1. Restart

Impact of workaround. Windows Picture and Fax Viewer (on editions prior to Windows Vista) and other applications that rely on GDI+ will not be able to view images. Also, thumbnails in Windows Explorer (on versions prior to Vista) will not display.

How to undo the workaround.

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone
cacls "%programfiles(x86)%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone

  1. Restart

Unregister vgx.dll

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the un-registration process has succeeded. Click OK to close the dialog box.

Impact of workaround. Applications that render VML will no longer do so once vgx.dll has been unregistered.

How to undo the workaround.

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the registration process has succeeded. Click OK to close the dialog box.

Prevent RSClientPrint from running in Internet Explorer

You can disable attempts to instantiate RSClientPrint in Internet Explorer by setting the kill bit for the control in the registry.

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

For detailed steps that you can use to prevent a control from running in Internet Explorer, see Microsoft Knowledge Base Article 240797. Follow these steps in this article to create a Compatibility Flags value in the registry to prevent RSClientPrint from being instantiated in Internet Explorer.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Impact of workaround. There is no impact as long as the object is not intended to be used in Internet Explorer.

How to undo the workaround.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Read e-mails in plain text

To help protect yourself from the e-mail attack vector, read e-mail messages in plain text format.

Microsoft Office Outlook 2002 users who have applied Office XP Service Pack 1 or a later version and Microsoft Office Outlook Express 6 users who have applied Internet Explorer 6 Service Pack 1 or a later version can enable this setting and view e-mail messages that are not digitally signed or e-mail messages that are not encrypted in plain text only.

Digitally signed e-mail messages or encrypted e-mail messages are not affected by the setting and may be read in their original formats. For more information about how to enable this setting in Outlook 2002, see Microsoft Knowledge Base Article 307594.

For information about this setting in Outlook Express 6, see Microsoft Knowledge Base Article 291387.

Impact of workaround. E-mail messages that are viewed in plain text format will not contain pictures, specialized fonts, animations, or other rich content. Additionally:

The changes are applied to the preview pane and to open messages.

Pictures become attachments so that they are not lost.

Because the message is still in Rich Text or HTML format in the store, the object model (custom code solutions) may behave unexpectedly.
Top of sectionTop of section

FAQ for GDI+ TIFF Buffer Overflow Vulnerability - CVE-2009-2502

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

What causes the vulnerability?
This vulnerability is caused by an unchecked buffer in the TIFF processing by GDI+.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain the same user rights as the logged-on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

How could an attacker exploit the vulnerability?
An attacker could host a specially crafted Web site that is designed to exploit this vulnerability through Internet Explorer and then convince a user to view the Web site. This can also include compromised Web sites and Web sites that accept or host user-provided content or advertisements. These Web sites could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or in an Instant Messenger request that takes users to the attacker's Web site. It could also be possible to display specially crafted Web content by using banner advertisements or by using other methods to deliver Web content to affected systems.

In an e-mail attack scenario, an attacker could exploit the vulnerability by sending Outlook users a specially crafted e-mail, or by sending a specially-crafted Office Document to the user and by convincing the user to open the file or read the message…

Attackers could also exploit this vulnerability by hosting a malicious image on a network share and then convincing a user to browse to the folder in Windows Explorer.

What systems are primarily at risk from the vulnerability?
This vulnerability requires that a user is logged on and reading e-mail messages, visiting Web sites, or opening files from a network share for any malicious action to occur. Therefore, any systems where e-mail messages are read, where Internet Explorer is used frequently, or where users have network share access, such as workstations or terminal servers, are at the most risk from this vulnerability. Systems that are not typically used to visit Web sites, such as most server systems, are at a reduced risk.

What does the update do?
The update removes the vulnerability by modifying the way that GDI+ allocates a buffer used when reading TIFF files.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

GDI+ TIFF Memory Corruption Vulnerability - CVE-2009-2503

A remote code execution vulnerability exists in the way that GDI+ allocates memory. The vulnerability could allow remote code execution if a user opens a specially crafted TIFF file. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-2503.

Mitigating Factors for GDI+ TIFF Memory Corruption Vulnerability - CVE-2009-2503

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.

By default, Internet Explorer on Windows Server 2003 and Windows Server 2008 runs in a restricted mode that is known as Enhanced Security Configuration. This mode sets the security level for the Internet zone to High. This is a mitigating factor for Web sites that you have not added to the Internet Explorer Trusted sites zone. See the FAQ subsection of this vulnerability section for more information about Internet Explorer Enhanced Security Configuration.
Top of sectionTop of section

Workarounds for GDI+ TIFF Memory Corruption Vulnerability - CVE-2009-2503

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Restrict access to gdiplus.dll

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N

  1. Restart

Impact of workaround. Windows Picture and Fax Viewer (on editions prior to Windows Vista) and other applications that rely on GDI+ will not be able to view images. Also, thumbnails in Windows Explorer (on versions prior to Vista) will not display.

How to undo the workaround.

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone
cacls "%programfiles(x86)%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone

  1. Restart

Unregister vgx.dll

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the un-registration process has succeeded. Click OK to close the dialog box.

Impact of workaround. Applications that render VML will no longer do so once vgx.dll has been unregistered.

How to undo the workaround.

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the registration process has succeeded. Click OK to close the dialog box.

Prevent RSClientPrint from running in Internet Explorer

You can disable attempts to instantiate RSClientPrint in Internet Explorer by setting the kill bit for the control in the registry.

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

For detailed steps that you can use to prevent a control from running in Internet Explorer, see Microsoft Knowledge Base Article 240797. Follow these steps in this article to create a Compatibility Flags value in the registry to prevent RSClientPrint from being instantiated in Internet Explorer.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Impact of workaround. There is no impact as long as the object is not intended to be used in Internet Explorer.

How to undo the workaround.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Read e-mails in plain text

To help protect yourself from the e-mail attack vector, read e-mail messages in plain text format.

Microsoft Office Outlook 2002 users who have applied Office XP Service Pack 1 or a later version and Microsoft Office Outlook Express 6 users who have applied Internet Explorer 6 Service Pack 1 or a later version can enable this setting and view e-mail messages that are not digitally signed or e-mail messages that are not encrypted in plain text only.

Digitally signed e-mail messages or encrypted e-mail messages are not affected by the setting and may be read in their original formats. For more information about how to enable this setting in Outlook 2002, see Microsoft Knowledge Base Article 307594.

For information about this setting in Outlook Express 6, see Microsoft Knowledge Base Article 291387.

Impact of workaround. E-mail messages that are viewed in plain text format will not contain pictures, specialized fonts, animations, or other rich content. Additionally:

The changes are applied to the preview pane and to open messages.

Pictures become attachments so that they are not lost.

Because the message is still in Rich Text or HTML format in the store, the object model (custom code solutions) may behave unexpectedly.
Top of sectionTop of section

FAQ for GDI+ TIFF Memory Corruption Vulnerability - CVE-2009-2503

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

What causes the vulnerability?
This vulnerability is caused by an unchecked buffer in the TIFF processing by GDI+.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain the same user rights as the logged-on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

How could an attacker exploit the vulnerability?
An attacker could host a specially crafted Web site that is designed to exploit this vulnerability through Internet Explorer and then convince a user to view the Web site. This can also include compromised Web sites and Web sites that accept or host user-provided content or advertisements. These Web sites could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or in an Instant Messenger request that takes users to the attacker's Web site. It could also be possible to display specially crafted Web content by using banner advertisements or by using other methods to deliver Web content to affected systems.

In an e-mail attack scenario, an attacker could exploit the vulnerability by sending Outlook users a specially crafted e-mail, or by sending a specially-crafted Office Document to the user and by convincing the user to open the file or read the message…

Attackers could also exploit this vulnerability by hosting a malicious image on a network share and then convincing a user to browse to the folder in Windows Explorer.

What systems are primarily at risk from the vulnerability?
This vulnerability requires that a user is logged on and reading e-mail messages, visiting Web sites, or opening files from a network share for any malicious action to occur. Therefore, any systems where e-mail messages are read, where Internet Explorer is used frequently, or where users have network share access, such as workstations or terminal servers, are at the most risk from this vulnerability. Systems that are not typically used to visit Web sites, such as most server systems, are at a reduced risk.

What does the update do?
The update removes the vulnerability by modifying the way that GDI+ allocates a buffer used when reading TIFF files.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

GDI+ .NET API Vulnerability - CVE-2009-2504

A remote code execution vulnerability exists in GDI+ that can allow a malicious Microsoft .NET application to gain unmanaged code execution privileges… Microsoft .NET applications that are not malicious are not at risk for being compromised because of this vulnerability.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-2504.

Mitigating Factors for GDI+ .NET API Vulnerability - CVE-2009-2504

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

It is very unlikely that an attacker could realistically influence a non-malicious .NET application to make the API calls to the vulnerable functions in the right way to trigger the vulnerability.

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user or ASP.NET account. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.

By default, Internet Explorer on Windows Server 2003 and Windows Server 2008 runs in a restricted mode that is known as Enhanced Security Configuration. This mode sets the security level for the Internet zone to High. This is a mitigating factor for Web sites that you have not added to the Internet Explorer Trusted sites zone. See the FAQ subsection of this vulnerability section for more information about Internet Explorer Enhanced Security Configuration.

The vulnerability could be exploited by an attacker who convinced a user to open a specially crafted file. There is no way for an attacker to force a user to open a specially crafted file.

The vulnerability could not be exploited automatically through e-mail. For an attack to be successful a user must open an attachment this is sent in an e-mail message.
Top of sectionTop of section

Workarounds for GDI+ .NET API Vulnerability - CVE-2009-2504

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Restrict access to gdiplus.dll

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N

  1. Restart

Impact of workaround. Windows Picture and Fax Viewer (on editions prior to Windows Vista) and other applications that rely on GDI+ will not be able to view images. Also, thumbnails in Windows Explorer (on versions prior to Vista) will not display.

How to undo the workaround.

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone
cacls "%programfiles(x86)%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone

  1. Restart

Disable XAML Browser Applications in Internet Explorer

You can help protect against this vulnerability by changing your settings to prompt before running XAML Browser Applications or to disable XAML Browser Applications altogether in the Internet and Local intranet security zone. To do this, perform the following steps:

  1. In Internet Explorer, click Internet Options on the Tools menu.

  2. Click the Security tab.

  3. Click Internet, and then click Custom Level.

  4. Under Settings, in the .NET Framework section, under XAML browser applications, click Prompt or Disable, and then click OK.

  5. Click Local intranet, and then click Custom Level.

  6. Under Settings, in the .NET Framework section, under XAML browser applications, click Prompt or Disable, and then click OK.

  7. If you are prompted to confirm that you want to change these settings, click Yes.

  8. Click OK to return to Internet Explorer.

Impact of workaround. XBAP applications will not run or will not run without a prompt.

Note Disabling XAML Browser Applications in the Internet and Local intranet security zones may cause some Web sites to work incorrectly. If you have difficulty using a Web site after you change this setting, and you are sure the site is safe to use, you can add that site to your list of trusted sites. This will allow the site to work correctly.

How to undo the workaround.

  1. In Internet Explorer, click Internet Options on the Tools menu.

  2. Click the Security tab.

  3. Click Internet, and then click Custom Level.

  4. Under Settings, in the .NET Framework section, under XAML browser applications, click Enable, and then click OK.

  5. Click Local intranet, and then click Custom Level.

  6. Under Settings, in the .NET Framework section, under XAML browser applications, click Enable, and then click OK.

  7. If you are prompted to confirm that you want to change these settings, click Yes.

  8. Click OK to return to Internet Explorer.

Disable partially trusted .NET applications

By preventing all .NET applications without full trust from running, this vulnerability is effectively shielded as .NET applications with full trust can already make any change to the system. To disable all .NET applications running at partial trust, run the following commands from an elevated administrator command prompt:

caspol -pp off
caspol -m -resetlockdown
caspol -pp on

Impact of workaround. Some .NET applications will not run.

How to undo the workaround.

To reset the .NET security policies to defaults, run the following commands from an elevated administrator command prompt:

caspol -pp off
caspol -m -reset
caspol -pp on

Prevent RSClientPrint from running in Internet Explorer

You can disable attempts to instantiate RSClientPrint in Internet Explorer by setting the kill bit for the control in the registry.

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

For detailed steps that you can use to prevent a control from running in Internet Explorer, see Microsoft Knowledge Base Article 240797. Follow these steps in this article to create a Compatibility Flags value in the registry to prevent RSClientPrint from being instantiated in Internet Explorer.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Impact of workaround. There is no impact as long as the object is not intended to be used in Internet Explorer.

How to undo the workaround.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.
Top of sectionTop of section

FAQ for GDI+ .NET API Vulnerability - CVE-2009-2504

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could execute code either in the context of the currently logged on user, or in the context of the service account associated with an application pool identity.

What causes the vulnerability?
This vulnerability is a result of an integer overflow in certain GDI+ APIs that are accessible from .NET Framework applications.

What is CAS?
Code Access Security (CAS) is a mechanism that helps limit the access that code has to protected resources and operations. For more information about CAS, see MSDN article, Introduction to Code Access Security.

What is an XBAP?
An XAML browser application (XBAP) combines features of both Web applications and rich-client applications. Like Web applications, XBAPs can be published to a Web server and launched from Internet Explorer. Like rich-client applications, XBAPs can take advantage of the capabilities of WPF. For more information about XBAPs, see MSDN article, Windows Presentation Foundation XAML Browser Applications Overview.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain the same user rights as the logged-on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In the Web hosting scenario, an attacker who successfully exploits this vulnerability could obtain the same permissions as the service account associated with the application pool identity of the application pool that a Microsoft .NET application is running under. Depending on Application Pool Isolation configuration and permissions granted to the service account, an attacker might be able to take control over other application pools on the Web server or be able to take complete control of the affected system. For more information about application pool identities and configuration, see TechNet article, Configure Application Pool Identity.

How could an attacker exploit the vulnerability?
There are three scenarios possible for exploitation of this vulnerability: a Web browsing scenario, a Web hosting scenario, and a Microsoft .NET Framework application scenario. These scenarios are described below:

Web browsing scenario
An attacker could host a specially crafted Web site that contains a specially crafted XBAP (XAML Browser Application) that could exploit this vulnerability and then convince a user to view the Web site. The attacker could also take advantage of compromised Web sites and Web sites that accept or host user-provided content or advertisements. These Web sites could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or in an Instant Messenger message that takes users to the attacker's Web site. It could also be possible to display specially crafted Web content by using banner advertisements or by using other methods to deliver Web content to affected systems.

Web hosting scenario
If a web hosting environment allows users to upload custom ASP.NET applications, an attacker user could upload a malicious ASP.NET application that uses this vulnerability to break out of the CAS sandbox used by the hosting company to prevent ASP.NET code from performing harmful actions on the server system.

Microsoft .NET Framework application scenario
An attacker could place a malicious Microsoft .NET Framework application on a network share and lure users on that network to execute this application.

What systems are primarily at risk from the vulnerability?
There are two types of systems at risk from this vulnerability, described below: systems that are using the Web browsing scenario, and systems that are using the Web hosting scenario.

Web browsing scenario
Successful exploitation of this vulnerability requires that a user is logged on and is visiting Web sites using a Web browser capable of instantiating XBAPs. Therefore, any systems where a Web browser is used frequently, such as workstations or terminal servers, are at the most risk from this vulnerability. Servers could be at more risk if administrators allow users to browse and read e-mail on servers. However, best practices strongly discourage allowing this.

Web hosting scenario
Web hosting sites that allow users to upload custom ASP.NET applications are at increased risk.

What does the update do?
This update modifies the way that GDI+ manages buffers when certain .NET API calls are made.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

GDI+ PNG Integer Overflow Vulnerability - CVE-2009-3126

A remote code execution vulnerability exists in the way that GDI+ allocates memory. The vulnerability could allow remote code execution if a user opens a specially crafted PNG image file. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-3126.

Mitigating Factors for GDI+ PNG Integer Overflow Vulnerability - CVE-2009-3126

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.

By default, Internet Explorer on Windows Server 2003 and Windows Server 2008 runs in a restricted mode that is known as Enhanced Security Configuration. This mode sets the security level for the Internet zone to High. This is a mitigating factor for Web sites that you have not added to the Internet Explorer Trusted sites zone. See the FAQ subsection of this vulnerability section for more information about Internet Explorer Enhanced Security Configuration.

The vulnerability could be exploited by an attacker who convinced a user to open a specially crafted file. There is no way for an attacker to force a user to open a specially crafted file.

The vulnerability could not be exploited automatically through e-mail. For an attack to be successful a user must open an attachment this is sent in an e-mail message.
Top of sectionTop of section

Workarounds for GDI+ PNG Integer Overflow Vulnerability - CVE-2009-3126

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Restrict access to gdiplus.dll

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /P everyone:N
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /P everyone:N
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /P everyone:N
cacls "%programfiles%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VGX\vgx.dll" /E /P everyone:N

  1. Restart

Impact of workaround. Windows Picture and Fax Viewer (on editions prior to Windows Vista) and other applications that rely on GDI+ will not be able to view images. Also, thumbnails in Windows Explorer (on versions prior to Vista) will not display.

How to undo the workaround.

  1. Run the following commands from an elevated administrator command prompt

for /F "tokens=" %G IN ('dir /b /s %windir%\Microsoft.NET\Framework\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s %windir%\winsxs\gdiplus.dll') DO cacls %G /E /R everyone
for /F "tokens=" %G IN ('dir /b /s ^"%windir%\Downloaded Program Files\gdiplus.dll^"') DO cacls %G /E /R everyone
for /F "tokens=
" %G IN ('dir /b /s ^"%programfiles%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
for /F "tokens=*" %G IN ('dir /b /s ^"%programfiles^(86^)%\microsoft office\gdiplus.dll^"') DO cacls "%G" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft Shared\VFP\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 8\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Visual FoxPro 9\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Digital Image 2006\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Common Files\Microsoft shared\Works Shared\gdiplus.dll" /E /R everyone
cacls "%programfiles%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles(x86)%\Microsoft Works\gdiplus.dll" /E /R everyone
cacls "%programfiles%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone
cacls "%programfiles(x86)%\ Common Files\Microsoft Shared\VGX\vgx.dll" /E /R everyone

  1. Restart

Unregister vgx.dll

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the un-registration process has succeeded. Click OK to close the dialog box.

Impact of workaround. Applications that render VML will no longer do so once vgx.dll has been unregistered.

How to undo the workaround.

  1. Click Start, click Run, type "%SystemRoot%\System32\regsvr32.exe" "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll", and then click OK.

  2. A dialog box appears to confirm that the registration process has succeeded. Click OK to close the dialog box.

Prevent RSClientPrint from running in Internet Explorer

You can disable attempts to instantiate RSClientPrint in Internet Explorer by setting the kill bit for the control in the registry.

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

For detailed steps that you can use to prevent a control from running in Internet Explorer, see Microsoft Knowledge Base Article 240797. Follow these steps in this article to create a Compatibility Flags value in the registry to prevent RSClientPrint from being instantiated in Internet Explorer.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=dword:00000400

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.

Impact of workaround. There is no impact as long as the object is not intended to be used in Internet Explorer.

How to undo the workaround.

Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\{41861299-EAB2-4DCC-986C-802AE12AC499}]

"Compatibility Flags"=-

You can apply this .reg file to individual systems by double-clicking it. You can also apply it across domains by using Group Policy. For more information about Group Policy, visit the following Microsoft Web sites:

Group Policy collection

What is Group Policy Object Editor?

Core Group Policy tools and settings

Note You must restart Internet Explorer for your changes to take effect.
Top of sectionTop of section

FAQ for GDI+ PNG Integer Overflow Vulnerability - CVE-2009-3126

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

What causes the vulnerability?
This vulnerability is caused by incorrect calculation of the memory required for parsing a PNG processed by GDI+.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain the same user rights as the logged-on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

How could an attacker exploit the vulnerability?
An attacker could host a specially crafted Web site that is designed to exploit this vulnerability through Internet Explorer and then convince a user to view the Web site. This can also include compromised Web sites and Web sites that accept or host user-provided content or advertisements. These Web sites could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or in an Instant Messenger request that takes users to the attacker's Web site. It could also be possible to display specially crafted Web content by using banner advertisements or by using other methods to deliver Web content to affected systems.

What systems are primarily at risk from the vulnerability?
This vulnerability requires that a user is logged on and reading e-mail messages, visiting Web sites, or opening files from a network share for any malicious action to occur. Therefore, any systems where e-mail messages are read, where Internet Explorer is used frequently, or where users have network share access, such as workstations or terminal servers, are at the most risk from this vulnerability. Systems that are not typically used to visit Web sites, such as most server systems, are at a reduced risk.

What does the update do?
The update removes the vulnerability by modifying the way that GDI+ calculates the required size of a buffer while parsing a PNG image.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

Memory Corruption Vulnerability - CVE-2009-2528

A remote code execution vulnerability exists in Microsoft Office that could allow remote code execution if a user opens a specially crafted Office file that includes a malformed object. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-2528.

Mitigating Factors for Memory Corruption Vulnerability - CVE-2009-2528

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.

The vulnerability could not be exploited automatically through e-mail. For an attack to be successful a user must open an attachment this is sent in an e-mail message.
Top of sectionTop of section

Workarounds for Memory Corruption Vulnerability - CVE-2009-2528

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Do not open Office files that you receive from untrusted sources or that you receive unexpectedly from trusted sources. This vulnerability could be exploited when a user opens a specially crafted file.
Top of sectionTop of section

FAQ for Memory Corruption Vulnerability - CVE-2009-2528

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could take complete control of an affected system remotely. An attacker could then install programs or view, change, or delete data; or create new accounts with full user rights.

What causes the vulnerability?
The vulnerability exists in the way that Microsoft Office parses Office Art Property Tables when opening a specially crafted Office document.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could run arbitrary code as the logged-on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

How could an attacker exploit the vulnerability?
This vulnerability requires that a user open a specially crafted Office document with an affected version of Microsoft Office.

What systems are primarily at risk from the vulnerability?
Systems where Microsoft Office is used, including workstations and terminal servers, are primarily at risk. Servers could be at more risk if administrators allow users to log on to servers and to run programs. However, best practices strongly discourage allowing this.

What does the update do?
This update removes the vulnerability by changing the way that Microsoft Office opens specially crafted Office Documents.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.
Top of sectionTop of section
Top of sectionTop of section

Office BMP Integer Overflow Vulnerability - CVE-2009-2518

A remote code execution vulnerability exists in the way that Microsoft Office handles specially crafted Office Documents containing BMP images. The vulnerability could allow remote code execution if an Outlook user opens a specially crafted e-mail or opens an Office Document with a malformed Bitmap file. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2009-2518.

Mitigating Factors for Office BMP Integer Overflow Vulnerability - CVE-2009-2518

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

An attacker who successfully exploited this vulnerability could gain the same user rights as the local user. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

In a Web-based attack scenario, an attacker could host a Web site that contains a Web page that is used to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these Web sites. Instead, an attacker would have to convince users to visit the Web site, typically by getting them to click a link in an e-mail message or Instant Messenger message that takes users to the attacker’s Web site.
Top of sectionTop of section

Workarounds for Office BMP Integer Overflow Vulnerability - CVE-2009-2518

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

Do not open Office files that you receive from untrusted sources or that you receive unexpectedly from trusted sources

This vulnerability could be exploited when a user opens a specially crafted file.

Read e-mails in plain text

To help protect yourself from the e-mail attack vector, read e-mail messages in plain text format.

Microsoft Office Outlook 2002 users who have applied Office XP Service Pack 1 or a later version and Microsoft Office Outlook Express 6 users who have applied Internet Explorer 6 Service Pack 1 or a later version can enable this setting and view e-mail messages that are not digitally signed or e-mail messages that are not encrypted in plain text only.

Digitally signed e-mail messages or encrypted e-mail messages are not affected by the setting and may be read in their original formats. For more information about how to enable this setting in Outlook 2002, see Microsoft Knowledge Base Article 307594.

For information about this setting in Outlook Express 6, see Microsoft Knowledge Base Article 291387.

Impact of workaround. E-mail messages that are viewed in plain text format will not contain pictures, specialized fonts, animations, or other rich content. Additionally:

The changes are applied to the preview pane and to open messages.

Pictures become attachments so that they are not lost.

Because the message is still in Rich Text or HTML format in the store, the object model (custom code solutions) may behave unexpectedly.
Top of sectionTop of section

FAQ for Office BMP Integer Overflow Vulnerability - CVE-2009-2518

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights.

What causes the vulnerability?
When a user opens a specially crafted Office file containing a specially crafted BMP, it may corrupt system memory in such a way that an attacker could execute arbitrary code.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could run arbitrary code as the logged on user. If a user is logged on with administrative user rights, an attacker could take complete control of the affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.

How could an attacker exploit the vulnerability?
In an e-mail attack scenario, an attacker could exploit the vulnerability by sending Outlook users a specially crafted e-mail, or by sending a specially-crafted Office Document to the user and by convincing the user to open the file or read the message.

In a Web-based attack scenario, an attacker would have to host a Web site that contains an Office Document that is used to attempt to exploit this vulnerability. In addition, compromised Web sites and Web sites that accept or host user-provided content could contain specially crafted content that could exploit this vulnerability. An attacker would have no way to force users to visit a specially crafted Web site. Instead, an attacker would have to convince them to visit the Web site, typically by getting them to click a link that takes them to the attacker's site.

What systems are primarily at risk from the vulnerability?
Systems where the affected software is used, including workstations and terminal servers, are primarily at risk. Servers could be at more risk if administrators allow users to log on to servers and to run programs. However, best practices strongly discourage allowing this.

What does the update do?
The update removes the vulnerability by modifying the way that Microsoft Office opens specially crafted files.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers and had not seen any examples of proof of concept code published when this security bulletin was originally issued.

Other Information
Acknowledgments

Microsoft thanks the following for working with us to help protect customers:

Yamata Li of Palo Alto Networks for reporting the GDI+ WMF Integer Overflow Vulnerability (CVE-2009-2500)

Thomas Garnier of SkyRecon for reporting the GDI+ PNG Heap Overflow Vulnerability (CVE-2009-2501)

Wushi of VeriSign iDefense Labs for reporting the GDI+ TIFF Buffer Overflow Vulnerability (CVE-2009-2502)

Ivan Fratric of Zero Day Initiative, Tavis Ormandy of Google Inc., and Carlo Di Dato (aka shinnai) for reporting the GDI+ TIFF Memory Corruption Vulnerability (CVE-2009-2503)

Tavis Ormandy of Google Inc. for reporting the GDI+ PNG Integer Overflow Vulnerability (CVE-2009-3126)

Marsu Pilami of VeriSign iDefense Labs for reporting the Memory Corruption Vulnerability (CVE-2009-2528)

Carsten H. Eiram of Secunia for reporting the Office BMP Integer Overflow Vulnerability (CVE-2009-2518)
Top of sectionTop of section
Microsoft Active Protections Program (MAPP)

To improve security protections for customers, Microsoft provides vulnerability information to major security software providers in advance of each monthly security update release. Security software providers can then use this vulnerability information to provide updated protections to customers via their security software or devices, such as antivirus, network-based intrusion detection systems, or host-based intrusion prevention systems. To determine whether active protections are available from security software providers, please visit the active protections Web sites provided by program partners, listed in Microsoft Active Protections Program (MAPP) Partners.

Support

Customers in the U.S. and Canada can receive technical support from Security Support or 1-866-PCSAFETY. There is no charge for support calls that are associated with security updates. For more information about available support options, see Microsoft Help and Support.

International customers can receive support from their local Microsoft subsidiaries. There is no charge for support that is associated with security updates. For more information about how to contact Microsoft for support issues, visit the International Support Web site.

Disclaimer

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.

Revisions

V1.0 (October 13, 2009): Bulletin published.