Microsoft Excel is the spreadsheet application within Microsoft Office.
Remote exploitation of a use after free vulnerability in Microsoft Corp.'s Excel could allow an attacker to execute arbitrary code with the privileges of the current user. The vulnerability occurs when parsing an SST record with a length that is below the minimum size of a well-formed SST record. When this occurs, a pointer to an array of strings is freed while a stale reference to it remains. During further processing of the file when parsing the Worksheet stream, specific SST records can be used to store a pointer inside the stale array reference. This can lead a memory corruption vulnerability, which allows for the execution of arbitrary code.
Exploitation of this vulnerability results in the execution of arbitrary code with the privileges of the user opening the file. To exploit this vulnerability, an attacker needs to convince a user to open a malicious file. Attackers typically accomplish this by e-mailing a targeted user the file or hosting the file on a Web page. Note that attackers cannot exploit Office file format vulnerabilities in a drive-by manner; at a minimum, a targeted user must click an "open" dialog or choose to view an attachment.
Exploitation of this vulnerability will require sculpting the heap in such a way that a useful structure (such as an object pointer) is located in the previously freed buffer. Since Excel does not offer complete control over the heap like a browser-based vulnerability does, more effort is required to shape the heap properly. The difficulty of this will depend on the attacker's familiarity with Excel internals.
The following Microsoft products are vulnerable:
The vulnerability occurs in the core parsing code of Excel, which cannot be disabled; however, it is possible to disable the opening of the older binary format files by using MOICE to convert the file to the newer XML-based format.
Microsoft Corp. has released patches which addresses this issue. For more information, consult their advisory at the following URL:
The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2012-1887 to this issue. This is a candidate for inclusion in the CVE list (http://cve.mitre.org/), which standardizes names for security problems.
03/21/2012 Initial Vendor Notification
03/21/2012 Initial Vendor Reply
11/13/2012 Coordinated Public Disclosure
The discoverer of this vulnerability wishes to remain anonymous.
Get paid for vulnerability research
Free tools, research and upcoming events
Copyright © 2012 Verisign, Inc.
Permission is granted for the redistribution of this alert electronically. It may not be edited in any way without the express written consent of iDefense. If you wish to reprint the whole or any part of this alert in any other medium other than electronically, please e-mail customer service for permission.
Disclaimer: The information in the advisory is believed to be accurate at the time of publishing based on currently available information. Use of the information constitutes acceptance for use in an AS IS condition. There are no warranties with regard to this information. Neither the author nor the publisher accepts any liability for any direct, indirect, or consequential loss or damage arising from use of, or reliance on, this information.