Public Vulnerability Reports

Microsoft Office Excel SST Invalid Length Use-after-Free Vulnerability

13.11.12

BACKGROUND

Microsoft Excel is the spreadsheet application within Microsoft Office.

DESCRIPTION

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.

ANALYSIS

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.

DETECTION

The following Microsoft products are vulnerable:

  • Microsoft Excel 2003 Service Pack 3
  • Microsoft Excel 2007 Service Pack 2
  • Microsoft Excel 2007 Service Pack 3
  • Microsoft Excel 2010 Service Pack 1 (32-bit editions)
  • Microsoft Excel 2010 Service Pack 1 (64-bit editions)
  • Microsoft Office 2008 for Mac
  • Microsoft Office for Mac 2011

WORKAROUND

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.

VENDOR RESPONSE

Microsoft Corp. has released patches which addresses this issue. For more information, consult their advisory at the following URL:

http://technet.microsoft.com/en-us/security/bulletin/ms12-076

CVE INFORMATION

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.

DISCLOSURE TIMELINE

03/21/2012 Initial Vendor Notification
03/21/2012 Initial Vendor Reply
11/13/2012 Coordinated Public Disclosure

CREDIT

The discoverer of this vulnerability wishes to remain anonymous.

Get paid for vulnerability research
http://labs.idefense.com/methodology/vulnerability/vcp.php

Free tools, research and upcoming events
http://labs.idefense.com/

LEGAL NOTICES

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.