Vulnerability Note VU#222929

Microsoft Internet Explorer CMarkup use-after-free vulnerability

Original Release date: 27 Apr 2014 | Last revised: 07 May 2014

Overview

Microsoft Internet Explorer contains a use-after-free vulnerability, which can allow a remote, unauthenticated attacker to execute arbitrary code on a vulnerable system.

Description

Microsoft Internet Explorer contains a use-after-free vulnerability. This can allow for arbitrary code execution. Internet Explorer versions 6 through 11 are affected.

Note that this vulnerability is being exploited in the wild. Although no Adobe Flash vulnerability appears to be at play here, the Internet Explorer vulnerability is used to corrupt Flash content in a way that allows ASLR to be bypassed via a memory address leak. This is made possible with Internet Explorer because Flash runs within the same process space as the browser. Note that exploitation without the use of Flash may be possible.

Impact

By convincing a user to view a specially crafted HTML document (e.g., a web page or an HTML email message or attachment), an attacker may be able to execute arbitrary code.

Solution

Apply an update

This issue is addressed in the update for Microsoft Security Bulletin MS14-021. This update is available via Windows Update. Please also consider the following workarounds:

Use the Microsoft Enhanced Mitigation Experience Toolkit

The Microsoft Enhanced Mitigation Experience Toolkit (EMET) can be used to help prevent exploitation of this vulnerability. Note that platforms that do not support ASLR, such as Windows XP and Windows Server 2003, will not receive the same level of protection that modern Windows platforms will.

Unregister VGX.DLL

Microsoft provides guidance to unregister VGX.DLL:

    For 32-bit Windows systems

    Important: For this workaround to take effect, you MUST run it from an elevated command prompt.
    1. From an elevated command prompt enter the following command:
    "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll"

    A dialog box should appear after the command is run to confirm that the un-registration process has succeeded. Click OK to close the dialog box.

    2. Close and reopen Internet Explorer for the changes to take effect..

     

    For 64-bit Windows systems

    Note The following commands must be entered from an elevated command prompt.
    1. From an elevated command prompt enter the following commands:
    "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles%\Microsoft Shared\VGX\vgx.dll"

    "%SystemRoot%\System32\regsvr32.exe" -u "%CommonProgramFiles(x86)%\Microsoft Shared\VGX\vgx.dll"

    A dialog box should appear after each command is run to confirm that the un-registration process has succeeded. Click OK to close the dialog box.
    2. Close and reopen Internet Explorer for the changes to take effect.

    Impact of Workaround: Applications that render VML will no longer do so once vgx.dll has been unregistered.


Note that the vulnerability does not reside in VGX.DLL. This library is used in current exploits, so unregistering it will prevent those specific exploits from working, rather than blocking access to the vulnerability.

Vendor Information (Learn More)

VendorStatusDate NotifiedDate Updated
Microsoft CorporationAffected-01 May 2014
If you are a vendor and your product is affected, let us know.

CVSS Metrics (Learn More)

Group Score Vector
Base 10.0 AV:N/AC:L/Au:N/C:C/I:C/A:C
Temporal 9.5 E:H/RL:W/RC:C
Environmental 9.5 CDP:ND/TD:H/CR:ND/IR:ND/AR:ND

References

Credit

This vulnerability was publicly reported by FireEye

This document was written by Will Dormann.

Other Information

  • CVE IDs: CVE-2014-1776
  • Date Public: 26 Apr 2014
  • Date First Published: 27 Apr 2014
  • Date Last Updated: 07 May 2014
  • Document Revision: 54

Feedback

If you have feedback, comments, or additional information about this vulnerability, please send us email.