CVE-2015-1243
NoneCVSS
—
EPSS
2.0%
Published
May 1, 2015
CISA due date
—
Cloudanix analysis
A problem in how web browsers watch for page changes could let attackers crash the browser or run harmful code on a visitor's computer.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Application
- Class
- Use After Free
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Use-after-free in MutationObserver::disconnect allows memory corruption when an unregistered observer is triggered for unregistration, enabling denial of service or potential arbitrary code execution via crafted DOM mutations.
Why it matters to the business
Attackers can crash browsers or execute code on user systems, risking data theft, session hijacking, or malware deployment across web-dependent operations; high prevalence in legacy browser deployments increases exposure for unpatched environments.
How an attack unfolds
An attacker delivers a malicious webpage that registers and then improperly disconnects a MutationObserver object during DOM changes, triggering the use-after-free condition to corrupt memory and achieve code execution or denial of service.
How to fix it
Upgrade Google Chrome to version 42.0.2311.135 or later; apply equivalent updates in Debian, Ubuntu, and Red Hat packages; disable unnecessary web features or use application isolation where patching is delayed.
How to confirm the fix worked
Verify Chrome version is at or above 42.0.2311.135; scan affected Linux distributions for updated Blink packages; confirm no vulnerable MutationObserver code paths remain via browser telemetry or dependency checks.
Typical attack path
- Serve malicious HTML/JS via phishing or compromised site
- Trigger DOM mutations that interact with MutationObserver
- Force disconnect on an unregistered observer instance
- Exploit resulting use-after-free for memory corruption
- Achieve DoS or escalate to code execution
How to detect it
Review web server logs and browser crash reports for unusual DOM mutation patterns or repeated MutationObserver disconnect attempts; correlate with known malicious page deliveries in historical threat intelligence.
What your security team should do
- Immediately update all Chrome instances to fixed versions
- Prioritize patching high-risk user populations first
- Monitor for legacy browser usage and enforce updates via policy
- Review web applications for heavy MutationObserver reliance
The record
Use-after-free vulnerability in the MutationObserver::disconnect function in core/dom/MutationObserver.cpp in the DOM implementation in Blink, as used in Google Chrome before 42.0.2311.135, allows remote attackers to cause a denial of service or possibly have unspecified other impact by triggering an attempt to unregister a MutationObserver object that is not currently registered.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:8 | chromium-browser | 0 | 42.0.2311.135-1~deb8u1 |
| Mageia:4 | chromium-browser-stable | 0 | 42.0.2311.135-1.mga4 |
| Red Hat:rhel_extras:6 | chromium-browser | 0 | 0:42.0.2311.135-1.el6_6 |
| Red Hat:rhel_extras:6 | chromium-browser-debuginfo | 0 | 0:42.0.2311.135-1.el6_6 |
| Ubuntu:14.04:LTS | chromium-browser | 0 | 43.0.2357.81-0ubuntu0.14.04.1.1089 |
| Ubuntu:14.04:LTS | oxide-qt | 0 | 1.6.6-0ubuntu0.14.04.1 |
| openSUSE:Tumbleweed | chromium | 0 | 55.0.2883.75-3.1 |
| openSUSE:Tumbleweed | chromium | 0 | 113.0.5672.92-1.1 |
Related vulnerabilities
- CVE-2016-9651 A missing check for whether a property of a JS object is private in V8 in Google Chrome… Also affects chromium-browser
- CVE-2017-5029 The xsltAddTextString function in transform.c in libxslt 1.1.29, as used in Blink in… Also affects chromium-browser
- CVE-2017-5040 V8 in Google Chrome prior to 57.0.2987.98 for Mac, Windows, and Linux and 57.0.2987.108… Also affects chromium-browser
- CVE-2017-5030 Incorrect handling of complex species in V8 in Google Chrome prior to 57.0.2987.98 for… Also affects chromium-browser
- CVE-2017-5006 Blink in Google Chrome prior to 56.0.2924.76 for Linux, Windows and Mac, and 56.0.2924.87… Also affects chromium-browser
- CVE-2016-5198 V8 in Google Chrome prior to 54.0.2840.90 for Linux, and 54.0.2840.85 for Android, and… Also affects chromium-browser
- CVE-2016-5204 Leaking of an SVG shadow tree leading to corruption of the DOM tree in Blink in Google… Also affects chromium-browser
- CVE-2016-5170 WebKit/Source/bindings/modules/v8/V8BindingForModules.cpp in Blink, as used in Google… Also affects chromium-browser