Microsoft PowerPoint is the presentation application that is included with Microsoft Corp's Office productivity software suite. More information is available at the following website.
Remote exploitation of multiple stack-based buffer overflow vulnerabilities in Microsoft Corp.'s PowerPoint could allow an attacker to execute arbitrary code with the privileges of the current user.
The vulnerabilities exist within the importer for PowerPoint 95 format files. This functionality is contained within the PP7X32.DLL.
The first vulnerability occurs when reading data that describes a sound object embedded in the file. A record length value is read in from the file. This value is then used to control how many bytes are stored in a fixed size stack buffer. There is no check performed to ensure that the buffer can hold the number of bytes specified. This can lead to a stack buffer overflow.
The second vulnerability occurs when reading in record name strings from the file. A string from the file is copied into a fixed size stack buffer without verifying that the destination buffer is large enough to hold the string. This results in a stack buffer overflow.
Exploitation of these vulnerabilities results in the execution of arbitrary code with the privileges of the user opening the file. To exploit these vulnerabilities, an attacker needs to convince a user to open a malicious file. After opening the file, no further interaction is needed to trigger the vulnerability.
Since the vulnerabilities are stack based buffer overflows, and it is possible to overwrite SEH handlers and function pointers stored on the stack, exploitation is relatively simple.
iDefense has confirmed the existence of these vulnerabilities in the following versions of PowerPoint:
PowerPoint 2000 SP3
PowerPoint XP SP3
PowerPoint 2003 SP2 PowerPoint 2003 SP3 contains the vulnerable code, but by default it is unable to open PPT95 format files. This is due to the Office 2003 SP3 File Block Policy, which limits the file formats that Office applications will open without special permissions. If the targeted user has disabled the File Block Policy settings in PowerPoint 2003 SP3, then they are vulnerable. However, this is a non-default configuration. More on this policy can be found at the following URL.
Office 2007 and Office 2007 SP1 are not vulnerable to these issues.
Use the cacls program to deny access to the DLL containing the vulnerable code, PP7X32.DLL. This will prevent the vulnerable DLL from loading in PowerPoint, which will also prevent users from importing PowerPoint 95 files. If Office 2003 SP3 is being used, then the default behavior is to block the opening of PowerPoint 95 files. If the default behavior has been changed, restoring it is an effective workaround.
[Quoted vendor response if available. Otherwise include vendor fix details.]
The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2009-1128 to this issue. This is a candidate for inclusion in the CVE list (http://cve.mitre.org/), which standardizes names for security problems.
06/16/2008 - Initial Contact
06/16/2008 - PoC Sent
06/17/2008 - Initial Response
06/18/2008 - Confirmation received - no estimated release date
07/22/2008 - Status Update Requested
07/23/2008 - Status Update Received - Update planned in November
12/11/2008 - Status Update Received - no estimated release date
02/19/2009 - Status Update Received - new case manager, estimated release date 06/09/2009
04/23/2009 - Status Update - release on track
05/12/2009 - Coordinated Public Disclosure
This vulnerability was reported to iDefense by Marsu.
Get paid for vulnerability research
Free tools, research and upcoming events
Copyright © 2009 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.