Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:22160
HistoryJul 14, 2009 - 12:00 a.m.

Microsoft Security Bulletin MS09-028 - Critical Vulnerabilities in Microsoft DirectShow Could Allow Remote Code Execution (971633)

2009-07-1400:00:00
vulners.com
21

Microsoft Security Bulletin MS09-028 - Critical
Vulnerabilities in Microsoft DirectShow Could Allow Remote Code Execution (971633)
Published: July 14, 2009

Version: 1.0
General Information
Executive Summary

This security update resolves one publicly disclosed vulnerability and two privately reported vulnerabilities in Microsoft DirectShow. The vulnerabilities could allow remote code execution if a user opened a specially crafted QuickTime media file. An attacker who successfully exploited any of these vulnerabilities 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.

This security update is rated Critical for all supported editions of Microsoft Windows 2000, Windows XP, and Windows Server 2003. For more information, see the subsection, Affected and Non-Affected Software, in this section.

The security update addresses the vulnerabilities by correcting the way that DirectShow parses QuickTime media files and validates pointer values and size fields within QuickTime media 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.

This security update also addresses the vulnerability first described in Microsoft Security Advisory 971778.

Recommendation. The majority of customers have automatic updating enabled and will not need to take any action because this security update will be downloaded and installed automatically. Customers who have not enabled automatic updating need to check for updates and install this update manually. For information about specific configuration options in automatic updating, see Microsoft Knowledge Base Article 294871.

For administrators and enterprise installations, or end users who want to install this security update manually, Microsoft recommends that customers apply the update immediately using update management software, or by checking for updates using the Microsoft Update service.

See also the section, Detection and Deployment Tools and Guidance, later in this bulletin.

Known Issues. Microsoft Knowledge Base Article 971633 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.

Affected Software
Operating System Component Maximum Security Impact Aggregate Severity Rating Bulletins Replaced by this Update
DirectX 7.0

Microsoft Windows 2000 Service Pack 4

DirectX 7.0

Remote Code Execution

Critical

MS08-033
DirectX 8.1

Microsoft Windows 2000 Service Pack 4

DirectX 8.1

Remote Code Execution

Critical

MS09-011
DirectX 9.0

Microsoft Windows 2000 Service Pack 4

DirectX 9.0*

Remote Code Execution

Critical

MS09-011

Windows XP Service Pack 2 and Windows XP Service Pack 3

DirectX 9.0*

Remote Code Execution

Critical

MS09-011

Windows XP Professional x64 Edition Service Pack 2

DirectX 9.0*

Remote Code Execution

Critical

MS09-011

Windows Server 2003 Service Pack 2

DirectX 9.0*

Remote Code Execution

Critical

MS09-011

Windows Server 2003 x64 Edition Service Pack 2

DirectX 9.0*

Remote Code Execution

Critical

MS09-011

Windows Server 2003 with SP2 for Itanium-based Systems

DirectX 9.0*

Remote Code Execution

Critical

MS09-011

*The update for DirectX 9.0 also applies to DirectX 9.0a, DirectX 9.0b, and DirectX 9.0c.

Non-Affected Software
Operating System

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

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

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

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

Windows Server 2008 for Itanium-based Systems and Windows Server 2008 for Itanium-based Systems Service Pack 2
Top of sectionTop of section

Frequently Asked Questions (FAQ) Related to This Security Update

Where are the file information details?
Refer to the reference tables in the Security Update Deployment section for the location of the file information details.

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.

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 July bulletin summary. For more information, see Microsoft Exploitability Index.
Vulnerability Severity Rating and Maximum Security Impact by Affected Software
Affected Software DirectX NULL Byte Overwrite Vulnerability - CVE-2009-1537 DirectX Pointer Validation Vulnerability - CVE-2009-1538 DirectX Size Validation Vulnerability - CVE-2009-1539 Aggregate Severity Rating
DirectX 7.0

Microsoft Windows 2000 Service Pack 4 with DirectX 7.0

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
DirectX 8.1

Microsoft Windows 2000 Service Pack 4 with DirectX 8.1

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
DirectX 9.0

Microsoft Windows 2000 Service Pack 4 with DirectX 9.0*

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical

Windows XP Service Pack 2 and Windows XP Service Pack 3 with DirectX 9.0*

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical

Windows XP Professional x64 Edition Service Pack 2 with DirectX 9.0*

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical

Windows Server 2003 Service Pack 2 with DirectX 9.0*

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical

Windows Server 2003 x64 Edition Service Pack 2 with DirectX 9.0*

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical

Windows Server 2003 with SP2 for Itanium-based Systems with DirectX 9.0*

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical
Remote Code Execution

Critical

*The update for DirectX 9.0 also applies to DirectX 9.0a, DirectX 9.0b, and DirectX 9.0c.
Top of sectionTop of section

DirectX NULL Byte Overwrite Vulnerability - CVE-2009-1537

A remote code execution vulnerability exists in the way that Microsoft DirectShow parses QuickTime media files. This vulnerability could allow code execution if a user opened a specially crafted QuickTime file. If a user is logged on with administrative user rights, 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-1537.

Mitigating Factors for DirectX NULL Byte Overwrite Vulnerability - CVE-2009-1537

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 persuade 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.

All supported editions of Windows Vista and Windows Server 2008 are not affected by this issue.
Top of sectionTop of section

Workarounds for DirectX NULL Byte Overwrite Vulnerability - CVE-2009-1537

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 the parsing of QuickTime content in quartz.dll

To modify the registry key, follow these steps:

Warning Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. For information about how to edit the registry, view the "Changing Keys And Values" Help topic in Registry Editor (Regedit.exe) or view the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe.

Note We recommend backing up the registry as specified in the steps below before you edit it.

Using the Interactive Method

For 32-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Locate the following subkey:
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

For 64-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Locate the following subkey:
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup1.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

Locate the following subkey:
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup2.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

Using a Managed Deployment Script

Create a backup copy of the registry keys by using a managed deployment script that contains the following commands:

For 32-bit Windows systems:
Regedit.exe /e QuickTime_Decoder_Backup.reg
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

For 64-bit Windows systems:
Regedit.exe /e QuickTime_Decoder_Backup1.reg
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}
Regedit.exe /e QuickTime_Decoder_Backup2.reg
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

Next, save the following to a file with a .REG extension, such as Disable_QuickTime_Parser.reg:

For 32-bit Windows systems:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]

For 64-bit Windows systems:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]
[-HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]

Run the above registry script on the target machine with the following command from an elevated command prompt:
Regedit.exe /s Disable_QuickTime_Parser.reg

Impact of workaround. QuickTime content playback will be disabled.

How to undo the workaround.

Using the Interactive Method

For 32-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Click the File menu and select Import.

In the Import Registry File dialog box, select QuickTime_Parser_Backup.reg and click Open.

For 64-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Click the File menu and select Import.

In the Import Registry File dialog box, select QuickTime_Parser_Backup1.reg and click Open.

In the Import Registry File dialog box, select QuickTime_Parser_Backup2.reg and click Open.

Using a Managed Deployment Script

For 32-bit Windows systems, restore the original state by running the following command:

Regedit.exe /s QuickTime_Parser_Backup.reg

For 64-bit Windows systems, restore the original state by running the following command:

Regedit.exe /s QuickTime_Parser_Backup1.reg
Regedit.exe /s QuickTime_Parser_Backup2.reg

Modify the Access Control List (ACL) on quartz.dll

To modify the ACL on quartz.dll to be more restrictive, follow these steps:

On Windows XP and Windows Server 2003 (all editions), run the following command from a command prompt (requires administrative privileges):

For 32-bit Windows systems:

Echo y| cacls %WINDIR%\SYSTEM32\quartz.DLL /E /P everyone:N

For 64-bit Windows systems:

Echo y| cacls %WINDIR%\SYSTEM32\quartz.DLL /E /P everyone:N
Echo y| cacls %WINDIR%\SYSWOW64\quartz.DLL /E /P everyone:N

Impact of workaround: Windows Media Player will not be able to play .AVI or .WAV files.

How to undo the workaround:

On Windows XP and Windows Server 2003 (all editions), run the following command from a command prompt (requires administrative privileges)

For 32-bit Windows systems:

cacls %WINDIR%\SYSTEM32\quartz.dll /E /R everyone

For 64-bit Windows systems:

cacls %WINDIR%\SYSTEM32\quartz.dll /E /R everyone
cacls %WINDIR%\SYSWOW64\quartz.dll /E /R everyone

Unregister quartz.dll

To unregister this DLL, run the following command from an elevated command prompt:

For 32-bit Windows systems:

Regsvr32.exe –u %WINDIR%\system32\quartz.dll

For 64-bit Windows systems:

Regsvr32.exe –u %WINDIR%\system32\quartz.dll
Regsvr32.exe –u %WINDIR%\syswow64\quartz.dll

Impact of workaround: Windows Media Player will not be able to play .AVI or .WAV files.

How to undo the workaround: Run the following command from an elevated command prompt:

For 32-bit Windows systems:

Regsvr32.exe %WINDIR%\system32\quartz.dll

For 64-bit Windows systems:

Regsvr32.exe %WINDIR%\system32\quartz.dll
Regsvr32.exe %WINDIR%\syswow64\quartz.dll

For non-multimedia folder types, the Windows shell attack vector can be mitigated by using Windows Classic Folders

To change folder options:

Click Start, click Control Panel, click Appearance and Themes, and then click Folder Options. Or, open any folder, such as My Documents, and on the Tools menu, click Folder Options.

On the General tab, under Tasks, select Use Windows classic folders.
Top of sectionTop of section

FAQ for DirectX NULL Byte Overwrite Vulnerability - CVE-2009-1537

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; view, change, or delete data; or create new accounts with full user rights.

What causes the vulnerability?
The Microsoft DirectShow component does not properly parse specially crafted QuickTime media files.

What is DirectX?
Microsoft DirectX is a feature of the Windows operating system. It is used for streaming media on Microsoft Windows operating systems to enable graphics and sound when playing games or watching video.

What is DirectShow?
DirectX consists of a set of low-level Application Programming Interfaces (APIs) used by Windows programs for multimedia support. Within DirectX, the DirectShow technology performs client-side audio and video sourcing, manipulation and rendering.

Microsoft DirectShow is used for streaming media on Microsoft Windows operating systems. DirectShow is used for high-quality capture and playback of multimedia streams. It automatically detects and uses video and audio acceleration hardware when available, but also supports systems without acceleration hardware. DirectShow is also integrated with other DirectX technologies. Some examples of applications that you can create using DirectShow include DVD players, video editing applications, AVI to ASF converters, MP3 players, and digital video capture applications.

What is the QuickTime Movie Parser Filter?
The QuickTime Movie Parser filter splits Apple QuickTime data into audio and video streams. It supports QuickTime 2.0 and earlier. It connects to a source filter such as the Async File Source filter or the URL File Source filter. The Parser uses the AVI Decompressor or QT Decompressor filter to decompress QuickTime files. The filter creates one output pin for the video stream and one output pin for the audio stream. For more information, see the MSDN article, QuickTime Movie Parser Filter.

This component has been removed from Windows Vista and later operating systems. It is available for use in the Microsoft Windows 2000, Windows XP, and Windows Server 2003 operating systems.

What might an attacker use the vulnerability to do?
If a user is logged on with administrative user rights, 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.

How could an attacker exploit the vulnerability?
This vulnerability requires that a user open a specially crafted QuickTime file or receive specially crafted streaming content from a Web site or any application that delivers Web content.

In an e-mail attack scenario, an attacker could exploit the vulnerability by sending a media file with a specially crafted QuickTime file embedded in it to the user and by convincing the user to open the file.

In a Web-based attack scenario, an attacker would have to host a Web site that contains specially crafted content 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 in an e-mail message or Instant Messenger message that takes them to the attacker's site.

Finally, if a specially crafted QuickTime file is placed in a folder or network share, simply hovering the mouse over the file is enough to cause the Windows shell to crash.

What systems are primarily at risk from the vulnerability?
Workstations and terminal servers are primarily at risk. Servers could be at more risk if users who should not have sufficient administrative permissions are given the ability to log on to servers and to run programs. However, best practices strongly discourage allowing this.

What does the update do?
The update addresses the vulnerability by correcting the way that DirectShow parses QuickTime media files.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
While the initial report was provided through responsible disclosure, the vulnerability was later disclosed publicly by a separate party. This security bulletin addresses the publicly disclosed vulnerability, as well as additional issues discovered through internal investigations.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
Yes. When the security bulletin was released, Microsoft had received information that this vulnerability was being exploited.
Top of sectionTop of section
Top of sectionTop of section

DirectX Pointer Validation Vulnerability - CVE-2009-1538

A remote code execution vulnerability exists in the way that Microsoft DirectShow validates certain values when updating a pointer. This vulnerability could allow code execution if a user opened a specially crafted QuickTime file. If a user is logged on with administrative user rights, 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-1538.

Mitigating Factors for DirectX Pointer Validation Vulnerability - CVE-2009-1538

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 persuade 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.

All supported editions of Windows Vista and Windows Server 2008 are not affected by this issue.
Top of sectionTop of section

Workarounds for DirectX Pointer Validation Vulnerability - CVE-2009-1538

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 the parsing of QuickTime content in quartz.dll

To modify the registry key, follow these steps:

Warning Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. For information about how to edit the registry, view the "Changing Keys And Values" Help topic in Registry Editor (Regedit.exe) or view the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe.

Note We recommend backing up the registry as specified in the steps below before you edit it.

Using the Interactive Method

For 32-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Locate the following subkey:
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

For 64-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Locate the following subkey:
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup1.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

Locate the following subkey:
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup2.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

Using a Managed Deployment Script

Create a backup copy of the registry keys by using a managed deployment script that contains the following commands:

For 32-bit Windows systems:
Regedit.exe /e QuickTime_Decoder_Backup.reg
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

For 64-bit Windows systems:
Regedit.exe /e QuickTime_Decoder_Backup1.reg
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}
Regedit.exe /e QuickTime_Decoder_Backup2.reg
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

Next, save the following to a file with a .REG extension, such as Disable_QuickTime_Parser.reg:

For 32-bit Windows systems:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]

For 64-bit Windows systems:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]
[-HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]

Run the above registry script on the target machine with the following command from an elevated command prompt:
Regedit.exe /s Disable_QuickTime_Parser.reg

Impact of workaround. QuickTime content playback will be disabled.

How to undo the workaround.

Using the Interactive Method

For 32-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Click the File menu and select Import.

In the Import Registry File dialog box, select QuickTime_Parser_Backup.reg and click Open.

For 64-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Click the File menu and select Import.

In the Import Registry File dialog box, select QuickTime_Parser_Backup1.reg and click Open.

In the Import Registry File dialog box, select QuickTime_Parser_Backup2.reg and click Open.

Using a Managed Deployment Script

For 32-bit Windows systems, restore the original state by running the following command:

Regedit.exe /s QuickTime_Parser_Backup.reg

For 64-bit Windows systems, restore the original state by running the following command:

Regedit.exe /s QuickTime_Parser_Backup1.reg
Regedit.exe /s QuickTime_Parser_Backup2.reg

Modify the Access Control List (ACL) on quartz.dll

To modify the ACL on quartz.dll to be more restrictive, follow these steps:

On Windows XP and Windows Server 2003 (all editions), run the following command from a command prompt (requires administrative privileges):

For 32-bit Windows systems:

Echo y| cacls %WINDIR%\SYSTEM32\quartz.DLL /E /P everyone:N

For 64-bit Windows systems:

Echo y| cacls %WINDIR%\SYSTEM32\quartz.DLL /E /P everyone:N
Echo y| cacls %WINDIR%\SYSWOW64\quartz.DLL /E /P everyone:N

Impact of workaround: Windows Media Player will not be able to play .AVI or .WAV files.

How to undo the workaround:

On Windows XP and Windows Server 2003 (all editions), run the following command from a command prompt (requires administrative privileges)

For 32-bit Windows systems:

cacls %WINDIR%\SYSTEM32\quartz.dll /E /R everyone

For 64-bit Windows systems:

cacls %WINDIR%\SYSTEM32\quartz.dll /E /R everyone
cacls %WINDIR%\SYSWOW64\quartz.dll /E /R everyone

Unregister quartz.dll

To unregister this DLL, run the following command from an elevated command prompt:

For 32-bit Windows systems:

Regsvr32.exe –u %WINDIR%\system32\quartz.dll

For 64-bit Windows systems:

Regsvr32.exe –u %WINDIR%\system32\quartz.dll
Regsvr32.exe –u %WINDIR%\syswow64\quartz.dll

Impact of workaround: Windows Media Player will not be able to play .AVI or .WAV files.

How to undo the workaround: Run the following command from an elevated command prompt:

For 32-bit Windows systems:

Regsvr32.exe %WINDIR%\system32\quartz.dll

For 64-bit Windows systems:

Regsvr32.exe %WINDIR%\system32\quartz.dll
Regsvr32.exe %WINDIR%\syswow64\quartz.dll

For non-multimedia folder types, the Windows shell attack vector can be mitigated by using Windows Classic Folders

To change folder options:

Click Start, click Control Panel, click Appearance and Themes, and then click Folder Options. Or, open any folder, such as My Documents, and on the Tools menu, click Folder Options.

On the General tab, under Tasks, select Use Windows classic folders.
Top of sectionTop of section

FAQ for DirectX Pointer Validation Vulnerability - CVE-2009-1538

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; view, change, or delete data; or create new accounts with full user rights.

What causes the vulnerability?
The Microsoft DirectShow component does not properly validate certain values when updating a pointer.

What is DirectX?
Microsoft DirectX is a feature of the Windows operating system. It is used for streaming media on Microsoft Windows operating systems to enable graphics and sound when playing games or watching video.

What is DirectShow?
DirectX consists of a set of low-level Application Programming Interfaces (APIs) used by Windows programs for multimedia support. Within DirectX, the DirectShow technology performs client-side audio and video sourcing, manipulation and rendering.

Microsoft DirectShow is used for streaming media on Microsoft Windows operating systems. DirectShow is used for high-quality capture and playback of multimedia streams. It automatically detects and uses video and audio acceleration hardware when available, but also supports systems without acceleration hardware. DirectShow is also integrated with other DirectX technologies. Some examples of applications that you can create using DirectShow include DVD players, video editing applications, AVI to ASF converters, MP3 players, and digital video capture applications.

What is the QuickTime Movie Parser Filter?
The QuickTime Movie Parser filter splits Apple QuickTime data into audio and video streams. It supports QuickTime 2.0 and earlier. The input pin connects to a source filter such as the Async File Source filter or the URL File Source filter. The Parser uses the AVI Decompressor or QT Decompressor filter to decompress QuickTime files. The filter creates one output pin for the video stream and one output pin for the audio stream. For more information, see the MSDN article, QuickTime Movie Parser Filter.

This component has been removed from Windows Vista and later operating systems. It is available for use in the Microsoft Windows 2000, Windows XP, and Windows Server 2003 operating systems.

What might an attacker use the vulnerability to do?
If a user is logged on with administrative user rights, 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.

How could an attacker exploit the vulnerability?
This vulnerability requires that a user open a specially crafted QuickTime file or receive specially crafted streaming content from a Web site or any application that delivers Web content.

In an e-mail attack scenario, an attacker could exploit the vulnerability by sending a media file with a specially crafted QuickTime file embedded in it to the user and by convincing the user to open the file.

In a Web-based attack scenario, an attacker would have to host a Web site that contains specially crafted content 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 in an e-mail message or Instant Messenger message that takes them to the attacker's site.

What systems are primarily at risk from the vulnerability?
Workstations and terminal servers are primarily at risk. Servers could be at more risk if users who should not have sufficient administrative permissions are given the ability to log on to servers and to run programs. However, best practices strongly discourage allowing this.

What does the update do?
The update addresses the vulnerability by correcting the way that DirectShow validates values when updating a pointer.

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

DirectX Size Validation Vulnerability - CVE-2009-1539

A remote code execution vulnerability exists in the way that Microsoft DirectShow validates specific fields in QuickTime media files. This vulnerability could allow code execution if a user opened a specially crafted QuickTime file. If a user is logged on with administrative user rights, 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-1539.

Mitigating Factors for DirectX Size Validation Vulnerability - CVE-2009-1539

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 persuade 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.

All supported editions of Windows Vista and Windows Server 2008 are not affected by this issue.
Top of sectionTop of section

Workarounds for DirectX Size Validation Vulnerability - CVE-2009-1539

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 the parsing of QuickTime content in quartz.dll

To modify the registry key, follow these steps:

Warning Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. For information about how to edit the registry, view the "Changing Keys And Values" Help topic in Registry Editor (Regedit.exe) or view the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe.

Note We recommend backing up the registry as specified in the steps below before you edit it.

Using the Interactive Method

For 32-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Locate the following subkey:
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

For 64-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Locate the following subkey:
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup1.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

Locate the following subkey:
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

On the File menu, click Export.

In the Export Registry File dialog box, enter QuickTime_Parser_Backup2.reg and click Save.

Note This will create a backup of this registry key in the My Documents folder by default.

Press the Delete key on the keyboard to delete the registry key. When prompted to delete the registry key via the Confirm Key Delete dialog box, click Yes.

Using a Managed Deployment Script

Create a backup copy of the registry keys by using a managed deployment script that contains the following commands:

For 32-bit Windows systems:
Regedit.exe /e QuickTime_Decoder_Backup.reg
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

For 64-bit Windows systems:
Regedit.exe /e QuickTime_Decoder_Backup1.reg
HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}
Regedit.exe /e QuickTime_Decoder_Backup2.reg
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}

Next, save the following to a file with a .REG extension, such as Disable_QuickTime_Parser.reg:

For 32-bit Windows systems:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]

For 64-bit Windows systems:
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]
[-HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D51BD5A0-7548-11CF-A520-0080C77EF58A}]

Run the above registry script on the target machine with the following command from an elevated command prompt:
Regedit.exe /s Disable_QuickTime_Parser.reg

Impact of workaround. QuickTime content playback will be disabled.

How to undo the workaround.

Using the Interactive Method

For 32-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Click the File menu and select Import.

In the Import Registry File dialog box, select QuickTime_Parser_Backup.reg and click Open.

For 64-bit Windows systems:

Click Start, click Run, type Regedit in the Open box, and then click OK.

Click the File menu and select Import.

In the Import Registry File dialog box, select QuickTime_Parser_Backup1.reg and click Open.

In the Import Registry File dialog box, select QuickTime_Parser_Backup2.reg and click Open.

Using a Managed Deployment Script

For 32-bit Windows systems, restore the original state by running the following command:

Regedit.exe /s QuickTime_Parser_Backup.reg

For 64-bit Windows systems, restore the original state by running the following command:

Regedit.exe /s QuickTime_Parser_Backup1.reg
Regedit.exe /s QuickTime_Parser_Backup2.reg

Modify the Access Control List (ACL) on quartz.dll

To modify the ACL on quartz.dll to be more restrictive, follow these steps:

On Windows XP and Windows Server 2003 (all editions), run the following command from a command prompt (requires administrative privileges):

For 32-bit Windows systems:

Echo y| cacls %WINDIR%\SYSTEM32\quartz.DLL /E /P everyone:N

For 64-bit Windows systems:

Echo y| cacls %WINDIR%\SYSTEM32\quartz.DLL /E /P everyone:N
Echo y| cacls %WINDIR%\SYSWOW64\quartz.DLL /E /P everyone:N

Impact of workaround: Windows Media Player will not be able to play .AVI or .WAV files.

How to undo the workaround:

On Windows XP and Windows Server 2003 (all editions), run the following command from a command prompt (requires administrative privileges)

For 32-bit Windows systems:

cacls %WINDIR%\SYSTEM32\quartz.dll /E /R everyone

For 64-bit Windows systems:

cacls %WINDIR%\SYSTEM32\quartz.dll /E /R everyone
cacls %WINDIR%\SYSWOW64\quartz.dll /E /R everyone

Unregister quartz.dll

To unregister this DLL, run the following command from an elevated command prompt:

For 32-bit Windows systems:

Regsvr32.exe –u %WINDIR%\system32\quartz.dll

For 64-bit Windows systems:

Regsvr32.exe –u %WINDIR%\system32\quartz.dll
Regsvr32.exe –u %WINDIR%\syswow64\quartz.dll

Impact of workaround: Windows Media Player will not be able to play .AVI or .WAV files.

How to undo the workaround: Run the following command from an elevated command prompt:

For 32-bit Windows systems:

Regsvr32.exe %WINDIR%\system32\quartz.dll

For 64-bit Windows systems:

Regsvr32.exe %WINDIR%\system32\quartz.dll
Regsvr32.exe %WINDIR%\syswow64\quartz.dll

For non-multimedia folder types, the Windows shell attack vector can be mitigated by using Windows Classic Folders

To change folder options:

Click Start, click Control Panel, click Appearance and Themes, and then click Folder Options. Or, open any folder, such as My Documents, and on the Tools menu, click Folder Options.

On the General tab, under Tasks, select Use Windows classic folders.
Top of sectionTop of section

FAQ for DirectX Size Validation Vulnerability - CVE-2009-1539

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; view, change, or delete data; or create new accounts with full user rights.

What causes the vulnerability?
The Microsoft DirectShow component does not properly validate certain size fields within QuickTime media files.

What is DirectX?
Microsoft DirectX is a feature of the Windows operating system. It is used for streaming media on Microsoft Windows operating systems to enable graphics and sound when playing games or watching video.

What is DirectShow?
DirectX consists of a set of low-level Application Programming Interfaces (APIs) used by Windows programs for multimedia support. Within DirectX, the DirectShow technology performs client-side audio and video sourcing, manipulation and rendering.

Microsoft DirectShow is used for streaming media on Microsoft Windows operating systems. DirectShow is used for high-quality capture and playback of multimedia streams. It automatically detects and uses video and audio acceleration hardware when available, but also supports systems without acceleration hardware. DirectShow is also integrated with other DirectX technologies. Some examples of applications that you can create using DirectShow include DVD players, video editing applications, AVI to ASF converters, MP3 players, and digital video capture applications.

What is the QuickTime Movie Parser Filter?
The QuickTime Movie Parser filter splits Apple QuickTime data into audio and video streams. It supports QuickTime 2.0 and earlier. The input pin connects to a source filter such as the Async File Source filter or the URL File Source filter. The Parser uses the AVI Decompressor or QT Decompressor filter to decompress QuickTime files. The filter creates one output pin for the video stream and one output pin for the audio stream. For more information, see the MSDN article, QuickTime Movie Parser Filter.

This component has been removed from Windows Vista and later operating systems. It is available for use in the Microsoft Windows 2000, Windows XP, and Windows Server 2003 operating systems.

What might an attacker use the vulnerability to do?
If a user is logged on with administrative user rights, 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.

How could an attacker exploit the vulnerability?
This vulnerability requires that a user open a specially crafted QuickTime file or receive specially crafted streaming content from a Web site or any application that delivers Web content.

In an e-mail attack scenario, an attacker could exploit the vulnerability by sending a media file with a specially crafted QuickTime file embedded in it to the user and by convincing the user to open the file.

In a Web-based attack scenario, an attacker would have to host a Web site that contains specially crafted content 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 in an e-mail message or Instant Messenger message that takes them to the attacker's site.

Finally, if a specially crafted QuickTime file is placed in a folder or network share, simply hovering the mouse over the file is enough to cause the Windows shell to crash.

What systems are primarily at risk from the vulnerability?
Workstations and terminal servers are primarily at risk. Servers could be at more risk if users who should not have sufficient administrative permissions are given the ability to log on to servers and to run programs. However, best practices strongly discourage allowing this.

What does the update do?
The update addresses the vulnerability by correcting the way that DirectShow validates size fields within QuickTime media 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:

Thomas Garnier of SkyRecon and Zheng Wenbin, Liu Qi, and Song Shenlei of Qihoo 360 Security Center for reporting the DirectX NULL Byte Overwrite Vulnerability (CVE-2009-1537)

Yamata Li of Palo Alto Networks for reporting the DirectX Pointer Validation Vulnerability (CVE-2009-1538)

Aaron Portnoy of TippingPoint DVLabs and an anonymous researcher working with TippingPoint's Zero Day Initiative, Thomas Garnier of SkyRecon, and Yamata Li of Palo Alto Networks for reporting the DirectX Size Validation Vulnerability (CVE-2009-1539)
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.
Top of sectionTop of section
Revisions

V1.0 (July 14, 2009): Bulletin published.