Microsoft Security Bulletin MS07-064 – Critical
Vulnerabilities in DirectX Could Allow Remote Code Execution (941568)
Published: December 11, 2007
Version: 1.0
General Information
Executive Summary
This critical security update resolves two privately reported vulnerabilities in Microsoft DirectX. These vulnerabilities could allow code execution if a user opened a specially crafted file used for streaming media in DirectX. 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.
This is a critical security update for all supported editions of Microsoft Windows 2000, Windows XP, Windows Server 2003 and Windows Vista. For more information, see the subsection, Affected and Non-Affected Software, in this section.
For more information about these 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 941568 documents the currently known issues that customers may experience when they install 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 and DirectX 8.1
Microsoft Windows 2000 Service Pack 4
DirectX 7.0
Remote Code Execution
Critical
MS05-050
Microsoft Windows 2000 Service Pack 4
DirectX 8.1
Remote Code Execution
Critical
MS05-050
DirectX 9.0c
Microsoft Windows 2000 Service Pack 4
DirectX 9.0c
Remote Code Execution
Critical
MS05-050
Windows XP Service Pack 2
DirectX 9.0c
Remote Code Execution
Critical
MS05-050
Windows XP Professional x64 Edition and Windows XP Professional x64 Edition Service Pack 2
DirectX 9.0c
Remote Code Execution
Critical
MS05-050
Windows Server 2003 Service Pack1 and Windows Server 2003 Service Pack 2
DirectX 9.0c
Remote Code Execution
Critical
MS05-050
Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition Service Pack 2
DirectX 9.0c
Remote Code Execution
Critical
MS05-050
Windows Server 2003 with SP1 for Itanium-based Systems and Windows Server 2003 with SP2 for Itanium-based Systems
DirectX 9.0c
Remote Code Execution
Critical
MS05-050
DirectX 10.0
Windows Vista
DirectX 10.0
Remote Code Execution
Critical
None
Windows Vista x64 Edition
DirectX 10.0
Remote Code Execution
Critical
None
Top of sectionTop of section
Frequently Asked Questions (FAQ) Related to This Security Update
What are the known issues that customers may experience when installing this security update?
Microsoft Knowledge Base Article 941568 documents the currently known issues that customers may experience when they install this security update. The article also documents recommended solutions for these issues.
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.
Does this update contain any security-related changes to functionality?
Yes. Besides the changes that are listed in the Frequently Asked Questions (FAQ) subsection for the specific vulnerability entry under the bulletin section, Vulnerability Information, this update includes defense-in-depth changes to DirectX.
Top of sectionTop of section
Vulnerability Information
Severity Ratings and Vulnerability Identifiers
Affected Software Microsoft DirectX Code Execution Vulnerability Parsing SAMI Files - CVE-2007-3901 Microsoft DirectX Code Execution Vulnerability Parsing WAV and AVI Files - CVE-2007-3895 Aggregate Severity Rating
DirectX 7.0 on Microsoft Windows 2000 Service Pack 4
Critical
Remote Code Execution
Critical
Remote Code Execution
Critical
DirectX 8.1 on Microsoft Windows 2000 Service Pack 4
Critical
Remote Code Execution
Critical
Remote Code Execution
Critical
DirectX 9.0c on Microsoft Windows 2000 Service Pack 4
Not affected
Critical
Remote Code Execution
Critical
DirectX 9.0c on Windows XP Service Pack 2
Not affected
Critical
Remote Code Execution
Critical
DirectX 9.0c on Windows XP Professional x64 Edition and Windows XP Professional x64 Edition Service Pack 2
Not affected
Critical
Remote Code Execution
Critical
DirectX 9.0c on Windows Server 2003 Service Pack 1 and Windows Server 2003 Service Pack 2
Not affected
Critical
Remote Code Execution
Critical
DirectX 9.0c on Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition Service Pack 2
Not affected
Critical
Remote Code Execution
Critical
DirectX 9.0c on Windows Server 2003 with SP1 for Itanium-based Systems and Windows Server 2003 with SP2 for Itanium-based Systems
Not affected
Critical
Remote Code Execution
Critical
DirectX 10.0 on Windows Vista
Not affected
Critical
Remote Code Execution
Critical
DirectX 10.0 on Windows Vista x64 Edition
Not affected
Critical
Remote Code Execution
Critical
Top of sectionTop of section
Microsoft DirectX Code Execution Vulnerability Parsing SAMI Files – CVE-2007-3901
A remote code execution vulnerability exists in the way DirectX handles supported format files. This vulnerability could allow code execution if a user opened a specially crafted 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-2007-3901.
Mitigating Factors for Microsoft DirectX Code Execution Vulnerability Parsing SAMI Files - CVE-2007-3901
Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state that could reduce the severity of exploitation of vulnerability. The following mitigating factors may be helpful in your situation:
•
The vulnerability cannot be exploited automatically through e-mail when a user views or previews e-mail messages. For an attack to be successful, a user must open an attachment that is sent in an e-mail message.
•
The vulnerability cannot be exploited through a Web-based attack scenario with Windows Media Player 6.4 on Windows 2000 Service Pack 4.
Top of sectionTop of section
Workarounds for Microsoft DirectX Code Execution Vulnerability Parsing SAMI Files - CVE-2007-3901
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:
•
Modify the Access Control List for quartz.dll
On Windows XP (all editions), run the following command from a command prompt:
Echo y| Cacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /E /P everyone:N
On Windows Vista (all editions), run the following command from an elevated command prompt:
Takeown.exe /f %WINDIR%\SYSTEM32\QUARTZ.DLL
Icacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /save %TEMP%\QUARTZ_ACL.TXT
Icacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /deny everyone:(F)
Impact of workaround: WAV and AVI files will fail to play in DirectX-enabled applications on Windows Vista. All files will fail to play in DirectX-enabled applications on Windows XP.
How to undo the workaround: On Windows XP (all editions), run the following command from a command prompt:
Cacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /E /R everyone
On Windows Vista (all editions), run the following command from an elevated command prompt:
Icacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /grant everyone:(F)
Icacls.exe %WINDIR%\SYSTEM32 /restore %TEMP%\QUARTZ_ACL.TXT
•
Unregister the quartz.dll
Regsvr32.exe –u %WINDIR%\SYSTEM32\QUARTZ.DLL
Impact of workaround: WAV and AVI files will fail to play in DirectX-enabled applications on Windows Vista. All files will fail to play in DirectX-enabled applications on Windows XP.
How to undo the workaround: Run the following command from an elevated command prompt:
Regsvr32.exe %WINDIR%\SYSTEM32\QUARTZ.DLL
Top of sectionTop of section
FAQ for Microsoft DirectX Code Execution Vulnerability Parsing SAMI Files - CVE-2007-3901
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?
Microsoft DirectShow, an intergraded technology of DirectX, does not perform sufficient parsing of the parameters of Synchronized Accessible Media Interchange (SAMI) file types.
What is DirectShow?
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 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 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?
Exploitation of this vulnerability would require a user to open a specially crafted format file. However, since the vulnerability is in the streaming component of Microsoft Windows, attacks can be launched from a specially crafted Web site or any application that delivers Web content.
What systems are primarily at risk from the vulnerability?
This vulnerability requires that a user is logged on and opens the specially crafted file. 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 removes the vulnerability by increasing the validation that the DirectX parser performs on supported file types.
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
Microsoft DirectX Code Execution Vulnerability Parsing WAV and AVI Files – CVE-2007-3895
A remote code execution vulnerability exists in the way DirectX handles WAV and AVI format files. This vulnerability could allow code execution if a user visits a specially crafted Web site or opens an e-mail message with specially crafted content. 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-2007-3895.
Mitigating Factors for Microsoft DirectX Code Execution Vulnerability Parsing WAV and AVI Files – CVE-2007-3895
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:
•
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.
•
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 an e-mail-based attack of this exploit, customers who read e-mail in plain text are at less risk from this vulnerability.
Top of sectionTop of section
Workarounds for Microsoft DirectX Code Execution Vulnerability Parsing WAV and AVI Files – CVE-2007-3895
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:
•
Modify the Access Control List for quartz.dll
On Windows XP (all editions), run the following command from a command prompt:
Echo y| Cacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /E /P everyone:N
On Windows Vista (all editions), run the following command from an elevated command prompt:
Takeown.exe /f %WINDIR%\SYSTEM32\QUARTZ.DLL
Icacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /save %TEMP%\QUARTZ_ACL.TXT
Icacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /deny everyone:(F)
Impact of workaround: WAV and AVI files will fail to play in DirectX-enabled applications on Windows Vista. All files will fail to play in DirectX-enabled applications on Windows XP.
How to undo the workaround: On Windows XP (all editions), run the following command from a command prompt:
Cacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /E /R everyone
On Windows Vista (all editions), run the following command from an elevated command prompt:
Icacls.exe %WINDIR%\SYSTEM32\QUARTZ.DLL /grant everyone:(F)
Icacls.exe %WINDIR%\SYSTEM32 /restore %TEMP%\QUARTZ_ACL.TXT
•
Unregister the quartz.dll
Regsvr32.exe –u %WINDIR%\SYSTEM32\QUARTZ.DLL
Impact of workaround: WAV and AVI files will fail to play in DirectX-enabled applications on Windows Vista. All files will fail to play in DirectX-enabled applications on Windows XP.
How to undo the workaround: Run the following command from an elevated command prompt:
Regsvr32.exe %WINDIR%\SYSTEM32\QUARTZ.DLL
Top of sectionTop of section
FAQ for Microsoft DirectX Code Execution Vulnerability Parsing WAV and AVI Files – CVE-2007-3895
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?
DirectShow, an intergraded technology of DirectX, does not perform sufficient validation of WAV and AVI file parameters.
What is DirectShow?
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. It is also integrated with other DirectX technologies. Some of the types of applications that you can create by using DirectShow include DVD players, video editing applications, AVI to ASF converters, MP3 players, and digital video capture applications.
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 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?
Exploitation of this vulnerability would require a user to open a specially crafted format file. However, since the vulnerability is in the streaming component of Microsoft Windows, attacks can be launched from a specially crafted Web site or applications that deliver Web content.
What systems are primarily at risk from the vulnerability?
Exploitation of this vulnerability would require a user to open a specially crafted format file. However, since the vulnerability can be triggered by Windows Media Player or other media player with Web-based playback functionality, attacks can be launched from a specially crafted Web site or applications that deliver Web content.
What does the update do?
The update removes the vulnerability by increasing the validation that the DirectShow parser performs on supported file types.
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:
•
Jun Mao of VeriSign iDefense Labs for reporting the Microsoft DirectX Code Execution Parsing SAMI Files Vulnerability - CVE-2007-3901.
•
Peter Winter-Smith of NGSSoftware for reporting the Microsoft DirectX Code Execution Vulnerability Parsing WAV Files - CVE-2007-3895.
•
Jung-hyung Lee and Minseong Kim of AhnLab for working with us on defense-in-depth changes to DirectX.
Support
•
Customers in the U.S. and Canada can receive technical support from Microsoft Product Support Services at 1-866-PCSAFETY. There is no charge for support calls that are associated with security updates.
•
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 (December 11, 2007): Bulletin published.