iDefense Security Advisory 08.25.09: Autonomy KeyView Excel File SST Parsing Integer Overflow Vulnerability
iDefense Security Advisory 08.25.09
Aug 25, 2009
Autonomy KeyView SDK is a commercial SDK that provides many file format
parsing libraries. It supports a large number of different document
formats, one of which is the Microsoft Excel 97 (XLS) format. It is
used by several popular vendors for processing documents. For more
information, visit the URL referenced below.
KeyView is used by many commercial products to handle various types of
file formats. Lotus Notes and Symantec Mail Security are two examples
of such products.
Remote exploitation of an integer overflow vulnerability in Autonomys
KeyView SDK allows attackers to execute arbitrary code with the
privileges of the targeted application.
The vulnerability occurs when parsing a Shared String Table (SST) record
inside of an Excel file. This record is used to hold a table of strings
that are used inside of the document. One of the fields in this record
is a 32-bit integer that represents the number of strings in the table.
This value is used in a calculation that controls the number of bytes to
allocate for a dynamic heap buffer. The value is not properly sanitized,
which leads to an integer overflow in the calculation. This results in a
heap based buffer overflow vulnerability.
Exploitation allows attackers to execute arbitrary code with the
privileges of the targeted application. In order to exploit this
vulnerability, an attacker must cause a specially crafted Microsoft
Excel Spreadsheet to be processed by an application using the Autonomy
When targeting applications like Lotus Notes, this requires that an
attacker convince a user to view an e-mail attachment; however, in
other cases, processing may take place automatically as a document is
examined. The specific circumstances will depend on the application
The privileges that an attacker gains may be different for each
application that uses the KeyView SDK. For example, exploiting this
issue via Lotus Notes yields the current users privileges while
exploiting the vulnerability via Symantec Mail Security yields SYSTEM
iDefense confirmed the existence of this vulnerability using the
following versions of the affected software:
xlssr.dll version 220.127.116.1114, distributed with IBM Lotus Notes 8.0
xlssr.dll version 18.104.22.16839, distributed with IBM Lotus Notes 8.5
xlssr.dll version 10.5.0.0, distributed with Symantec Mail Security
for Microsoft Exchange
All versions of the KeyView SDK that include the "xlssr.dll" filter
module are suspected to be vulnerable.
For all products using the KeyView SDK, you can disable the "xlssr.dll"
filter by doing one of the following:
Removing the xlssr.dll filter module from the affected system(s).
Delete or comment out the line referencing "xlssr.dll" from the
"KeyView.ini" file distributed with the affected application.
Additionally, for Symantec Mail Security, disabling "content filtering"
will prevent exploitation.
VI. VENDOR RESPONSE
IBM has released a patch which addresses this issue in Lotus Notes. For
more information, consult their advisory at the following URL:
Symantec has released a patch which addresses this issue in several
Symantec products. For more information, consult their advisory at the
VII. CVE INFORMATION
A Mitre Corp. Common Vulnerabilities and Exposures (CVE) number has not
been assigned yet.
VIII. DISCLOSURE TIMELINE
05/05/2009 - Initial Contact
05/05/2009 - Autonomy first response
05/05/2009 - Symantec first response
05/05/2009 - IBM first response
05/05/2009 - Autonomy POC request
05/05/2009 - IBM POC request
05/06/2009 - Autonomy clarification request
05/06/2009 - Symantec clarification request
05/06/2009 - Request public key from Autonomy
05/06/2009 - Sent POC to IBM, Symantec
05/06/2009 - Symantec requests resend
05/06/2009 - Resent POC to Symantec
05/06/2009 - Autonomy sends public key
05/06/2009 - Sent POC to Autonomy
05/07/2009 - Symantec holding on Autonomy fix
05/07/2009 - Autonomy requested clarification
05/07/2009 - Sent clarification.
08/11/2009 - Disclosure coordination
08/17/2009 - Disclosure re-coordination
08/25/2009 - Coordinated Public Disclosure
This vulnerability was discovered by Joshua J. Drake of iDefense Labs.
Get paid for vulnerability research
Free tools, research and upcoming events
X. LEGAL NOTICES
Copyright © 2009 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 firstname.lastname@example.org 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.