Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:23624
HistoryApr 15, 2010 - 12:00 a.m.

Microsoft Security Bulletin MS10-019 - Critical Vulnerabilities in Windows Could Allow Remote Code Execution (981210)

2010-04-1500:00:00
vulners.com
15

Microsoft Security Bulletin MS10-019 - Critical
Vulnerabilities in Windows Could Allow Remote Code Execution (981210)
Published: April 13, 2010 | Updated: April 14, 2010

Version: 1.1
General Information
Executive Summary

This security update resolves two privately reported vulnerabilities in Windows Authenticode Verification that could allow remote code execution. An attacker who successfully exploited either 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.

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

The security update addresses the vulnerabilities by performing additional verification operations when signing and verifying a portable executable or cabinet file. 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. 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. None
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
Microsoft Windows 2000

Microsoft Windows 2000 Service Pack 4

Authenticode Signature Verification 5.1
(KB978601)

Cabinet File Viewer Shell Extension 5.1
(KB979309)

Remote Code Execution

Critical

None
Windows XP

Windows XP Service Pack 2 and Windows XP Service Pack 3

Authenticode Signature Verification 5.1
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None

Windows XP Professional x64 Edition Service Pack 2

Authenticode Signature Verification 5.1
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None
Windows Server 2003

Windows Server 2003 Service Pack 2

Authenticode Signature Verification 5.1
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None

Windows Server 2003 x64 Edition Service Pack 2

Authenticode Signature Verification 5.1
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None

Windows Server 2003 with SP2 for Itanium-based Systems

Authenticode Signature Verification 5.1
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None
Windows Vista

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

Authenticode Signature Verification 6.0
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None

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

Authenticode Signature Verification 6.0
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None
Windows Server 2008

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

Authenticode Signature Verification 6.0*
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None

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

Authenticode Signature Verification 6.0*
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None

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

Authenticode Signature Verification 6.0
(KB978601)

Cabinet File Viewer Shell Extension 6.0
(KB979309)

Remote Code Execution

Critical

None
Windows 7

Windows 7 for 32-bit Systems

Authenticode Signature Verification 6.1
(KB978601)

Cabinet File Viewer Shell Extension 6.1
(KB979309)

Remote Code Execution

Critical

None

Windows 7 for x64-based Systems

Authenticode Signature Verification 6.1
(KB978601)

Cabinet File Viewer Shell Extension 6.1
(KB979309)

Remote Code Execution

Critical

None
Windows Server 2008 R2

Windows Server 2008 R2 for x64-based Systems

Authenticode Signature Verification 6.1*
(KB978601)

Cabinet File Viewer Shell Extension 6.1
(KB979309)

Remote Code Execution

Critical

None

Windows Server 2008 R2 for Itanium-based Systems

Authenticode Signature Verification 6.1
(KB978601)

Cabinet File Viewer Shell Extension 6.1
(KB979309)

Remote Code Execution

Critical

None

*Server Core installation affected. This update applies, with the same severity rating, to supported editions of Windows Server 2008 or Windows Server 2008 R2 as indicated, whether or not 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.
Top of sectionTop of section

Frequently Asked Questions (FAQ) Related to This Security Update

Are both updates required for my system?
Yes, the update for each component, Authenticode Signature Verification and Cabinet File Viewer Shell Extension, are required for each operating system. You must install both updates as applies to the operating system that you have.

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.

Does this update contain any security-related changes to functionality?
Yes. In addition to the changes that are listed in the Vulnerability Information section of this bulletin, this update includes a change that disables Authenticode version 1 signature on portable executable files and performs additional verification on cabinet files.

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. For more information about the product lifecycle, visit the Microsoft Support Lifecycle Web site.

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. To determine the support lifecycle for your software release, see Select a Product for Lifecycle Information. For more information about service packs for these software releases, see Lifecycle Supported Service Packs.

Customers who require custom support for older software 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 the Microsoft Worldwide Information Web site, select the country in the Contact Information list, 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 Microsoft Support Lifecycle Policy 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 April bulletin summary. For more information, see Microsoft Exploitability Index.
Vulnerability Severity Rating and Maximum Security Impact by Affected Software
Affected Software WinVerifyTrust Signature Validation Vulnerability - CVE-2010-0486 Cabview Corruption Validation Vulnerability - CVE-2010-0487 Aggregate Severity Rating
Microsoft Windows 2000 Service Pack 4

Authenticode Signature Verification 5.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 5.1

Not applicable

Critical
Remote Code Execution

Critical
Windows XP Service Pack 2 and Windows XP Service Pack 3

Authenticode Signature Verification 5.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

Critical
Windows XP Professional x64 Edition Service Pack 2

Authenticode Signature Verification 5.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

Critical
Windows Server 2003 Service Pack 2

Authenticode Signature Verification 5.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

Critical
Windows Server 2003 x64 Edition Service Pack 2

Authenticode Signature Verification 5.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

Critical
Windows Server 2003 with SP2 for Itanium-based Systems

Authenticode Signature Verification 5.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

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

Authenticode Signature Verification 6.0

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

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

Authenticode Signature Verification 6.0

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

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

Authenticode Signature Verification 6.0*

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

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

Authenticode Signature Verification 6.0*

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

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

Authenticode Signature Verification 6.0

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.0

Not applicable

Critical
Remote Code Execution

Critical
Windows 7 for 32-bit Systems

Authenticode Signature Verification 6.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.1

Not applicable

Critical
Remote Code Execution

Critical
Windows 7 for x64-based Systems

Authenticode Signature Verification 6.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.1

Not applicable

Critical
Remote Code Execution

Critical
Windows Server 2008 R2 for x64-based Systems

Authenticode Signature Verification 6.1*

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.1

Not applicable

Critical
Remote Code Execution

Critical
Windows Server 2008 R2 for Itanium-based Systems

Authenticode Signature Verification 6.1

Critical
Remote Code Execution

Not applicable

Critical

Cabinet File Viewer Shell Extension 6.1

Not applicable

Critical
Remote Code Execution

Critical

*Server Core installation affected. This update applies, with the same severity rating, to supported editions of Windows Server 2008 and Windows Server 2008 R2, whether or not 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.
Top of sectionTop of section

WinVerifyTrust Signature Validation Vulnerability - CVE-2010-0486

A remote code execution vulnerability exists in the Windows Authenticode Signature Verification function used for portable executable (PE) and cabinet file formats. An anonymous attacker could exploit the vulnerability by modifying an existing signed executable file to manipulate unverified portions of the signature and file in such a way as to add malicious code to the file without invalidating the signature. 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-2010-0486.

Mitigating Factors for WinVerifyTrust Signature Validation Vulnerability - CVE-2010-0486

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.
Top of sectionTop of section

Workarounds for WinVerifyTrust Signature Validation Vulnerability - CVE-2010-0486

Microsoft has not identified any workarounds for this vulnerability.
Top of sectionTop of section

FAQ for WinVerifyTrust Signature Validation Vulnerability - CVE-2010-0486

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could run arbitrary code with elevated privileges on vulnerable systems. 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 is caused when the Windows Authenticode Signature Verification function omits fields from the file digest when signing and verifying a PE or cabinet file.

What is the Windows Authenticode Signature Verification function?
The Windows Authenticode Signature Verification function, or WinVerifyTrust, performs a trust verification action on a specified object. The function passes the inquiry to a trust provider that supports the action identifier, if one exists. The WinVerifyTrust function performs two actions: signature checking on a specified object and trust verification action. For more information, see the MSDN article, WinVerifyTrust Function.

What is the Windows Authenticode Portable Executable Signature Format?
Authenticode is a digital signature format that is used to determine the origin and integrity of software binaries. Authenticode uses Public-Key Cryptography Standards (PKCS) #7 signed data and X.509 certificates to bind an Authenticode-signed binary to the identity of a software publisher. The term "Authenticode" signature refers to a digital signature format that is generated and verified using the Authenticode Signature Verification Function. For more information on this format, see the Windows article, Windows Authenticode Portable Executable Signature Format.

What is a cabinet file?
A cabinet is a single file, usually suffixed with .CAB, that stores compressed files in a file library. A compressed file can be spread over several cabinet files. During installation, the setup application decompresses the files stored in a cabinet and copies them to the user's system. For more information, see the MSDN article, Cabinet Files.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could cause Windows to install or run arbitrary code. 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 requires that a user, Windows feature, or application run or install a specially crafted, signed PE or cabinet file. An attacker could modify an existing signed file to include malicious code without invalidating the signature. This code would execute in the context of the privilege in which it was launched.

What systems are primarily at risk from the vulnerability?
All affected operating systems are at risk.

What does the update do?
The update addresses the vulnerability by performing additional verification when signing and verifying a portable executable or cabinet 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

Cabview Corruption Validation Vulnerability - CVE-2010-0487

A remote code execution vulnerability exists in the Windows Authenticode Signature verification for cabinet (.cab) file formats. An anonymous attacker could exploit the vulnerability by modifying an existing signed cabinet file to point the unverified portions of the signature to malicious code, and then convincing a user to open or view the specially crafted cabinet 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.

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

Mitigating Factors for Cabview Corruption Validation Vulnerability - CVE-2010-0487

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…
Top of sectionTop of section

Workarounds for Cabview Corruption Validation Vulnerability - CVE-2010-0487

Microsoft has not identified any workarounds for this vulnerability.
Top of sectionTop of section

FAQ for Cabview Corruption Validation Vulnerability - CVE-2010-0487

What is the scope of the vulnerability?
This is a remote code execution vulnerability. An attacker who successfully exploited this vulnerability could run arbitrary code with elevated privileges on vulnerable systems. 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 is caused when the Windows Cabinet File Viewer omits fields from the file digest when signing and verifying a cabinet file.

What is the Windows Cabinet File Viewer?
The Windows Cabinet File Viewer (cabview.dll) serves as the viewer shell extension of the Windows operating system for cabinet files. This component allows viewing, opening, browsing, and extracting cabinet files and archives.

What is a cabinet file?
A cabinet is a single file, usually suffixed with .CAB, that stores compressed files in a file library. A compressed file can be spread over several cabinet files. During installation, the setup application decompresses the files stored in a cabinet and copies them to the user's system. For more information, see the MSDN article, Cabinet Files.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could cause Windows to install or run arbitrary code. 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 requires that a user open a specially crafted cabinet file. An attacker could modify an existing signed cabinet file to point the unverified portions of the signature to malicious code. This code would execute in the context of the privilege in which it was launched.

What systems are primarily at risk from the vulnerability?
All affected operating systems are at risk.

What does the update do?
The update addresses the vulnerability by enforcing the processing of all fields from the file digest when signing and verifying a cabinet 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.

Other Information
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 (April 13, 2010): Bulletin published.

V1.1 (April 14, 2010): Corrected the server core notation, for Windows Server 2008 and Windows Server 2008 R2, to apply only to the KB978601 update.