Cloudanix VulnDB

CVE-2015-0817

None

CVSS

—

EPSS

3.7%

Published

Mar 24, 2015

CISA due date

—

Cloudanix analysis

Next patch cycle SSVC: Track

An old flaw in certain web browsers could let attackers take control of a computer simply by getting the user to visit a harmful website.

Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Moderate
Impact
Remote Code Execution
Component
Application
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The asm.js implementation fails to correctly determine safe bounds-checking elision cases during JIT compilation, permitting crafted JavaScript to perform out-of-bounds reads and writes into process memory and achieve arbitrary code execution.

Why it matters to the business

Attackers can silently compromise user systems through malicious web content, leading to data theft, credential capture, or malware installation; the vulnerability is over a decade old with stable low exploitation probability and no known ransomware usage.

How an attack unfolds

An attacker hosts a web page containing specially crafted asm.js code that triggers the bounds-checking flaw during JIT compilation; when a user visits the page with an affected browser, the script reads or writes arbitrary memory locations to execute attacker-controlled code.

How to fix it

Upgrade Mozilla Firefox to version 36.0.3 or later, Firefox ESR 31.x to 31.5.2 or later, and SeaMonkey to 2.33.1 or later; disable JavaScript where feasible or enforce strict content security policies as a temporary mitigation.

How to confirm the fix worked

Confirm browser version numbers match or exceed the fixed releases listed in the remediation guidance; re-test affected asm.js test cases in a lab environment to verify bounds checks are no longer elided incorrectly.

Typical attack path

  1. Attacker crafts malicious JavaScript using asm.js features that bypass intended bounds checks
  2. Victim is lured to a web page serving the exploit (via phishing, compromised site, or ad network)
  3. Browser JIT compiler processes the asm.js code and skips required bounds validation
  4. Script performs out-of-bounds memory access to corrupt data structures or inject shellcode
  5. Arbitrary code executes with the privileges of the browser process

How to detect it

Review web proxy, browser telemetry, and endpoint logs for visits to unexpected domains followed by anomalous process creation or memory allocation patterns originating from browser processes; because the issue is historical and unexploited in KEV, focus on retrospective hunting for post-2015 artifacts in preserved logs.

What your security team should do

  • Prioritize inventory of all Mozilla browser deployments and schedule immediate upgrades to the fixed versions
  • Monitor EPSS and threat intelligence feeds for any future increase in exploitation activity despite current low scores
  • Apply network-level controls to block known malicious domains until patching is complete

The record

The asm.js implementation in Mozilla Firefox before 36.0.3, Firefox ESR 31.x before 31.5.2, and SeaMonkey before 2.33.1 does not properly determine the cases in which bounds checking may be safely skipped during JIT compilation and heap access, which allows remote attackers to read or write to unintended memory locations, and consequently execute arbitrary code, via crafted JavaScript.

Affected packages

Ecosystem Package Introduced Fixed
Debian:7 iceweasel 0 31.5.3esr-1~deb7u1
Mageia:4 firefox 0 31.5.3-1.mga4
Mageia:4 firefox-l10n 0 31.5.3-1.mga4
Mageia:4 iceape 0 2.33.1-1.mga4
Mageia:4 nss 0 3.18.0-1.mga4
Mageia:4 rootcerts 0 20150226.00-1.mga4
Red Hat:enterprise_linux:5::client firefox 0 0:31.5.3-1.el5_11
Red Hat:enterprise_linux:5::client firefox-debuginfo 0 0:31.5.3-1.el5_11
Red Hat:enterprise_linux:5::server firefox 0 0:31.5.3-1.el5_11
Red Hat:enterprise_linux:5::server firefox-debuginfo 0 0:31.5.3-1.el5_11
Red Hat:enterprise_linux:6::client firefox 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:6::client firefox-debuginfo 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:6::computenode firefox 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:6::computenode firefox-debuginfo 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:6::server firefox 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:6::server firefox-debuginfo 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:6::workstation firefox 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:6::workstation firefox-debuginfo 0 0:31.5.3-1.el6_6
Red Hat:enterprise_linux:7::client firefox 0 0:31.5.3-3.el7_1
Red Hat:enterprise_linux:7::client firefox-debuginfo 0 0:31.5.3-3.el7_1
Red Hat:enterprise_linux:7::server firefox 0 0:31.5.3-3.el7_1
Red Hat:enterprise_linux:7::server firefox-debuginfo 0 0:31.5.3-3.el7_1
Red Hat:enterprise_linux:7::workstation firefox 0 0:31.5.3-3.el7_1
Red Hat:enterprise_linux:7::workstation firefox-debuginfo 0 0:31.5.3-3.el7_1
SUSE:Linux Enterprise Desktop 12 MozillaFirefox 0 31.5.3esr-27.1
SUSE:Linux Enterprise Server 12 MozillaFirefox 0 31.5.3esr-27.1
SUSE:Linux Enterprise Server for SAP Applications 12 MozillaFirefox 0 31.5.3esr-27.1
SUSE:Linux Enterprise Software Development Kit 12 MozillaFirefox 0 31.5.3esr-27.1
Ubuntu:14.04:LTS firefox 0 36.0.4+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