CVE-2015-2706
NoneCVSS
—
EPSS
2.6%
Published
Apr 27, 2015
CISA due date
—
Cloudanix analysis
An old flaw in the browser could let a malicious plugin take over a user's computer or make the browser stop working if the user visited a rigged webpage.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Remote Code Execution
- Component
- Application
- Class
- Race Condition
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Medium
What it actually does
Race condition in AsyncPaintWaitEvent initialization allows a crafted plugin to trigger use-after-free, resulting in arbitrary code execution or denial of service within the browser process.
Why it matters to the business
Attackers could gain control over user systems running outdated browser versions, leading to data theft, malware installation, or browser crashes that disrupt user workflows on legacy deployments.
How an attack unfolds
An attacker delivers a malicious webpage embedding a plugin that intentionally delays or skips proper initialization; the resulting timing window in the AsyncPaintWaitEvent handler causes a use-after-free that the attacker leverages for code execution.
How to fix it
Upgrade Mozilla Firefox to version 37.0.2 or later; disable or restrict plugin loading for environments that cannot update immediately.
How to confirm the fix worked
Confirm the installed Firefox version is 37.0.2 or newer; test that the browser no longer crashes or executes arbitrary code when loading the original proof-of-concept plugin under controlled conditions.
Typical attack path
- Host a webpage containing a specially crafted plugin that withholds initialization completion
- Trigger the AsyncPaintWaitEvent code path in the target browser
- Exploit the use-after-free primitive to corrupt memory and execute attacker-controlled code
- Establish persistence or exfiltrate data from the compromised browser process
How to detect it
Review browser crash logs and plugin initialization events for timing anomalies or use-after-free indicators; correlate with web requests that embed unusual plugin content.
What your security team should do
- Prioritize patching all Firefox instances to 37.0.2 or newer
- Audit plugin usage policies and block untrusted plugins where possible
- Monitor for browser process crashes correlated with plugin activity in legacy environments
The record
Race condition in the AsyncPaintWaitEvent::AsyncPaintWaitEvent function in Mozilla Firefox before 37.0.2 allows remote attackers to execute arbitrary code or cause a denial of service (use-after-free) via a crafted plugin that does not properly complete initialization.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Mageia:4 | iceape | 0 | 2.35-1.mga4 |
| Mageia:5 | iceape | 0 | 2.35-1.mga5 |
| Ubuntu:14.04:LTS | firefox | 0 | 37.0.2+build1-0ubuntu0.14.04.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 50.1.0-1.1 |
| openSUSE:Tumbleweed | firefox-esr | 0 | 128.5.1-1.1 |
Related vulnerabilities
- CVE-2015-2708 Multiple unspecified vulnerabilities in the browser engine in Mozilla Firefox before… Also affects iceape
- CVE-2015-0799 The HTTP Alternative Services feature in Mozilla Firefox before 37.0.1 allows… Also affects iceape
- CVE-2015-0816 Mozilla Firefox before 37.0, Firefox ESR 31.x before 31.6, and Thunderbird before 31.6 do… Also affects iceape
- CVE-2015-0802 Mozilla Firefox before 37.0 relies on docshell type information instead of page principal… Also affects iceape
- CVE-2015-0801 Mozilla Firefox before 37.0, Firefox ESR 31.x before 31.6, and Thunderbird before 31.6… Also affects iceape
- CVE-2015-0817 The asm.js implementation in Mozilla Firefox before 36.0.3, Firefox ESR 31.x before… Also affects iceape
- CVE-2015-0822 The Form Autocompletion feature in Mozilla Firefox before 36.0, Firefox ESR 31.x before… Also affects iceape
- CVE-2014-8636 The XrayWrapper implementation in Mozilla Firefox before 35.0 and SeaMonkey before 2.32… Also affects iceape