iDefense Security Advisory 04.17.08 - Remote exploitation of an integer underflow vulnerability in OpenOffice, as included in various vendors' operating system distributions, allows attackers to execute arbitrary code with the privileges of the logged in user. The vulnerability exists within the code responsible for converting the QPRO file into an internal representation used by OpenOffice. A 16-bit integer is read in from the file, and later used as a loop counter that controls how many values are stored into local stack buffers. When verifying the value of this counter, the code decrements the counter without checking to see if this operation will underflow. This results in the loop running for many iterations, which leads to a stack based buffer overflow. This allows for the execution of arbitrary code. iDefense has confirmed the existence of this vulnerability in OpenOffice version 2.3. Other versions may also be affected.
f84858db4e28dc1273900ceb08e2ed51b2cf68abf337f43d22cc8d9b211cb5d2
iDefense Security Advisory 04.17.08
http://labs.idefense.com/intelligence/vulnerabilities/
Apr 17, 2008
I. BACKGROUND
OpenOffice is an open-source desktop office suite for many of today's
popular operating systems. One of the file formats that OpenOffice
supports is Quattro Pro (QPRO). This format is used by Corel's
QuattroPro spreadsheet application. More information is available from
the following URL.
http://www.openoffice.org/
II. DESCRIPTION
Remote exploitation of an integer underflow vulnerability in OpenOffice,
as included in various vendors' operating system distributions, allows
attackers to execute arbitrary code with the privileges of the logged
in user.
The vulnerability exists within the code responsible for converting the
QPRO file into an internal representation used by OpenOffice. A 16-bit
integer is read in from the file, and later used as a loop counter that
controls how many values are stored into local stack buffers. When
verifying the value of this counter, the code decrements the counter
without checking to see if this operation will underflow. This results
in the loop running for many iterations, which leads to a stack based
buffer overflow. This allows for the execution of arbitrary code.
III. ANALYSIS
Exploitation of this vulnerability results in the execution of arbitrary
code with the privileges of the user opening the file. In order to
exploit this vulnerability, an attacker must persuade a user to open a
malicious file.
IV. DETECTION
iDefense has confirmed the existence of this vulnerability in OpenOffice
version 2.3. Other versions may also be affected.
V. WORKAROUND
Renaming the shared library that contains the vulnerable code will
prevent OpenOffice from opening QPRO files. On Fedora Core 7, the
library can be found at:
/usr/lib/openoffice.org/program/libsc680li.so
Renaming this file to libsc680li.so.bak will prevent it from being
loaded. In addition to preventing the use of QPRO files, this also
prevents users from opening various other file formats.
VI. VENDOR RESPONSE
The OpenOffice.org team has addressed this vulnerability with the
release of version 2.4. For more information, consult the OOo Security
Bulletin at the following URL.
http://www.openoffice.org/security/cves/CVE-2007-5745.html
VII. CVE INFORMATION
The Common Vulnerabilities and Exposures (CVE) project has assigned the
name CVE-2007-5747 to this issue. This is a candidate for inclusion in
the CVE list (http://cve.mitre.org/), which standardizes names for
security problems.
VIII. DISCLOSURE TIMELINE
10/29/2007 Initial vendor notification
10/30/2007 Initial vendor response
04/17/2008 Coordinated public disclosure
IX. 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/
X. LEGAL NOTICES
Copyright © 2008 iDefense, 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 customerservice@idefense.com 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.