TippingPoint Zero Day Initiative
 

WebKit ContentEditable swapInNode Use-After-Free Remote Code Execution Vulnerability

ZDI-12-147: August 22nd, 2012

CVE ID

CVSS Score

Affected Vendors

Affected Products

    WebKit

TippingPoint™ IPS Customer Protection

TippingPoint IPS customers are protected against this vulnerability by Digital Vaccine protection filter ID 12492. For further product information on the TippingPoint IPS:

Vulnerability Details


This vulnerability allows remote attackers to execute arbitrary code on vulnerable installations of the WebKit library. User interaction is required to exploit this vulnerability in that the target must visit a malicious page or open a malicious file.

The specific flaw exists when the library attempts to replace a particular element due to an HTML5 ContentEditable command. Due to the library not accommodating for DOM mutation events that can be made to occur, an aggressor can modify the tree out from underneath the library, leading to a type change. This can be used to trigger a use-after-free condition at which point can lead to code execution under the context of the application.

Vendor Response

WebKit.Org has issued an update to correct this vulnerability. More details can be found at:

Disclosure Timeline

    2011-10-28 - Vulnerability reported to vendor
    2012-08-22 - Coordinated public release of advisory

Credit

This vulnerability was discovered by:
    pa_kt / twitter.com/pa_kt