Apple Webkit DOCUMENT_POSITION_DISCONNECTED Attribute Remote Code Execution VulnerabilityZDI-10-095: June 8th, 2010
TippingPoint™ IPS Customer ProtectionTippingPoint IPS customers are protected against this vulnerability by Digital Vaccine protection filter ID 9332. For further product information on the TippingPoint IPS:
This vulnerability allows remote attackers to execute arbitrary code on software utilizing a vulnerable version of Apple's Webkit. User interaction is required to exploit this vulnerability in that the target must visit a malicious page.
The specific flaw exists within the way that Apple's Webkit handles the DOCUMENT_POSITION_DISCONNECTED attribute when a container is removed. This attribute is responsible for ensuring that a node is disconnected from it's container and is implementation specific regarding the order of each node. If the disconnected element is removed from a particular type of container, the next time the application attempts to reference that container, the application will access memory that has been free which can lead to code execution under the context of the application.
Vendor ResponseApple has issued an update to correct this vulnerability. More details can be found at:
2009-12-04 - Vulnerability reported to vendor
2010-06-08 - Coordinated public release of advisory
CreditThis vulnerability was discovered by:
wushi&Z of team509