iDefense Security Advisory 10.14.08
Oct 14, 2008
Microsoft VBA is an implementation of Microsoft Visual Basic programming
language for developing client desktop packaged applications and
integrating them with existing data and systems. VBA is a built in
feature in Microsoft Office. For more information, please visit
Several vulnerabilities exist in Microsoft Corp.'s Office Visual Basic
for Applications (VBA) which could allow remote exploitation by an
attacker. Exploitation could allow the execution of arbitrary code with
the privileges of the current user.
The types of vulnerabilities include heap overflows, memory corruption,
invalid array indexing, and integer overflow.
These vulnerabilities exist in the handling of an object embedded in an
Office document. When processing this object, the VBA module does not
validate any of several values correctly. By crafting an object that
contains a specific value, corruption can be caused. This leads to a
potentially exploitable condition.
Exploitation allows an attacker to execute arbitrary code in the context
of the currently logged-on user. To exploit this vulnerability, the
attacker must persuade a user to open a specially crafted Office
Likely attack vectors include sending the file as an e-mail attachment
or linking to the file on a website. By default, systems with Office
2000 installed will open Office documents from websites without
prompting the user. This allows attackers to exploit this vulnerability
without user interaction. Later versions of Office do not open these
documents automatically unless the user has chosen this behavior.
Using the Office Document Open Confirmation Tool for Office 2000 can
prevent Office files from opening automatically from websites. Use of
this tool is highly recommended for users still using Office 2000.
Generally one needs to set Macro security Level to Medium to run VBA
Macros, but that's not applicable for this vulnerability. This
vulnerability can be exploited with the default High Macro Security
iDefense confirmed the existence of these vulnerabilities in the
following versions of Microsoft Excel: 2000-SP3, XP-SP3, 2003-SP3.
Excel 2007 and 2007-SP1 were not vulnerable.
Restrict access to VBE6.dll by executing Echo y|cacls
"%ProgramFiles%\common files\microsoft shared\vba\vba6\vbe6.dll" /E /P
Impact of workaround: Office file with VBA content can't be loaded.
VI. VENDOR RESPONSE
Microsoft has officially addressed this vulnerability with Security
Bulletin MS08-057. For more information, consult their bulletin at the
VII. CVE INFORMATION
The Common Vulnerabilities and Exposures (CVE) project has assigned the
name CVE-2008-3477 to this issue. This is a candidate for inclusion in
the CVE list (http://cve.mitre.org/), which standardizes names for
VIII. DISCLOSURE TIMELINE
04/17/2007 Initial vendor notification for earliest vulnerability
04/18/2007 Initial vendor response
10/14/2008 Coordinated public disclosure
The heap buffer overflow vulnerability was independently discovered by
Lionel d'Hauenens of Laboskopia (reported through iDefense VCP program)
and Jun Mao of iDefense Labs.
The discoverer of the remaining vulnerabilities wishes to remain
Get paid for vulnerability research
Free tools, research and upcoming events
X. LEGAL NOTICES
Copyright =A9 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 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.