What Is Google Chromium V8?
Google V8 is the open-source JavaScript and WebAssembly engine powering Google Chrome, Microsoft Edge (Chromium-based), Opera, and Electron-based desktop applications. V8's JIT compilers — Ignition (bytecode interpreter) and Turbofan (optimizing compiler) — transform JavaScript into native machine code for high-performance execution. Type confusion vulnerabilities in V8 are particularly severe because the JavaScript type system's dynamic nature creates complex invariants that the JIT compiler must maintain; violations of these invariants allow attacker-controlled JavaScript to access memory in unintended ways, enabling exploitation.
Overview
CVE-2017-5070 is a type confusion vulnerability (CWE-843) in the Google Chromium V8 JavaScript engine that allows a remote attacker to execute arbitrary code inside the Chrome renderer sandbox via a crafted HTML page. Type confusion in V8's JIT compiler allows JavaScript to access and corrupt memory outside its intended type's bounds — a powerful primitive for building reliable exploits. Fixed in Chrome 59.0.3071.86 (June 2017). Added to CISA KEV in June 2022 alongside CVE-2017-5030 (V8 OOB read) reflecting confirmed exploitation.
Affected Versions
| Browser | Vulnerable Version | Fixed Version |
|---|---|---|
| Google Chrome | Before 59.0.3071.86 | 59.0.3071.86+ |
| Microsoft Edge | Affected Chromium-based builds | Apply Windows/Edge updates |
| Opera | Affected builds | Update Opera |
Technical Details
Root Cause: Type Confusion in V8 JIT Compiler
CVE-2017-5070 is a type confusion vulnerability (CWE-843) in V8's JIT compiler. Type confusion occurs when code accesses a memory object as if it were a different type than it actually is, violating type invariants. In V8, JavaScript objects have internal "hidden classes" (maps) that describe their structure; the JIT compiler caches and assumes these types for optimized code generation.
How type confusion leads to exploitation:
- Attacker constructs JavaScript that causes V8's JIT to misclassify an object's type (hidden class confusion)
- Subsequent operations on the confused object access memory using the wrong type's layout — creating out-of-bounds read/write primitives
- Read primitive allows leaking pointers to defeat ASLR; write primitive corrupts objects to build a code execution capability
- Execution occurs in the Chrome renderer process sandbox
Type confusion is generally more exploitable than simple OOB reads because it provides both read and write primitives in a controllable manner, enabling more reliable and universal exploit chains.
Attack Characteristics
| Attribute | Detail |
|---|---|
| Attack Vector | Network — malicious web page |
| User Interaction | Required — user visits malicious page |
| Impact | Code execution in Chrome renderer sandbox |
| Exploit Reliability | High — type confusion provides read/write primitives |
| Common Chain | Paired with sandbox escape for OS-level compromise |
Exploitation Context
- Commercial exploit chain component: V8 type confusion vulnerabilities are foundational components of high-value browser exploit chains; CVE-2017-5070 was within the timeframe of active commercial exploit sales by brokers such as Zerodium (which listed Chrome full chains at $500K-$1M+)
- Targeted attack campaigns: Type confusion exploits that achieve sandbox-level RCE are typically used in targeted spear-phishing campaigns against high-value individuals — government officials, journalists, dissidents, corporate executives — where a single page visit achieves initial access
- NSO Group and commercial surveillance: Commercial spyware vendors (Pegasus, FinFisher) routinely incorporate V8 type confusion exploits for delivery via watering hole or targeted link; while CVE-2017-5070 is a desktop vulnerability, the same exploit development tradecraft applies across mobile and desktop V8 targets
- CISA KEV (2022): Added June 8, 2022 alongside CVE-2017-5030 — both 2017 Chrome V8 vulnerabilities were added together, reflecting their role in exploitation campaigns targeting US government and critical infrastructure personnel
Remediation
-
Update Chrome and all Chromium-based browsers — ensure Chrome is at version 59.0.3071.86 or later; modern Chrome versions auto-update and most enterprise fleets should already be on significantly newer releases.
-
Verify Chrome auto-update is functioning — confirm Chrome's auto-update mechanism is not blocked by enterprise AV, proxy, or group policy; silently disabled auto-update is a common cause of browser version lag.
-
Enable Chrome Extended Stable for enterprise — organizations needing additional stability testing before browser updates can use Chrome Extended Stable channel, which provides 8-week update windows while still receiving critical security patches.
-
Deploy Chrome Enterprise policies for browser hardening — disable unnecessary browser features, enforce Safe Browsing, and restrict extension installation to reduce attack surface beyond patching.
-
Patch the OS alongside the browser — V8 type confusion achieves renderer sandbox RCE; full OS compromise requires a sandbox escape that typically exploits OS kernel vulnerabilities; OS patching is part of browser security hygiene.
Key Details
| Property | Value |
|---|---|
| CVE ID | CVE-2017-5070 |
| Vendor / Product | Google — Chromium V8 |
| NVD Published | 2017-10-27 |
| NVD Last Modified | 2025-10-22 |
| CVSS 3.1 Score | 8.8 |
| CVSS 3.1 Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| Severity | HIGH |
| CWE | CWE-843 — Access of Resource Using Incompatible Type ('Type Confusion') find similar ↗ |
| CISA KEV Added | 2022-06-08 |
| CISA KEV Deadline | 2022-06-22 |
| Known Ransomware Use | No |
CVSS 3.1 Breakdown
Required Action
Timeline
| Date | Event |
|---|---|
| 2017-06-05 | Google releases Chrome 59.0.3071.86 patching CVE-2017-5070 and other V8 vulnerabilities |
| 2017-10-27 | CVE-2017-5070 published by NVD |
| 2022-06-08 | Added to CISA Known Exploited Vulnerabilities catalog |
| 2022-06-22 | CISA BOD 22-01 remediation deadline |
References
| Resource | Type |
|---|---|
| NVD — CVE-2017-5070 | Vulnerability Database |
| CISA KEV Catalog Entry | US Government |
| Chrome Stable Channel Update — June 2017 (Chrome 59) | Vendor Advisory |