CVE-2022-1096 — Google Chromium V8 Type Confusion Vulnerability

CVE-2022-1096

Google Chrome / Chromium — Zero-Day V8 JavaScript Engine Type Confusion; 3rd Chrome 0-day of 2022

What is Chromium V8?

V8 is Google's open-source, high-performance JavaScript and WebAssembly engine, used in Google Chrome, Microsoft Edge, Node.js, and all other Chromium-based browsers. V8 compiles JavaScript to native machine code using a JIT (just-in-time) compiler for high performance. Because V8 processes all JavaScript from every web page a user visits, vulnerabilities in V8 are among the most impactful in the browser attack surface — they can be triggered by any web page and typically provide code execution within the renderer process.

Overview

CVE-2022-1096 is a high-severity type confusion vulnerability (CWE-843, CVSS 8.8) in Google Chromium's V8 JavaScript engine. An attacker can exploit heap corruption via a crafted HTML page and JavaScript, potentially achieving code execution in the renderer process. Google confirmed active in-the-wild exploitation when releasing the emergency fix on March 25, 2022 — the third Chrome zero-day of 2022. The vulnerability affects all Chromium-based browsers including Chrome, Edge, and Opera.

Affected Versions

Product Vulnerable Fixed
Google Chrome Before 99.0.4844.84 99.0.4844.84
Microsoft Edge Before corresponding patched version Subsequent Edge update
Opera, Brave, and other Chromium-based browsers Affected versions Subsequent patched builds

Technical Details

A type confusion vulnerability (CWE-843: Access of Resource Using Incompatible Type) in V8 occurs when the JIT compiler or runtime incorrectly assumes an object is of a particular type and performs operations on it that are only valid for that type, while the object is actually of a different type. This mismatch allows the attacker to read or write memory at incorrect locations.

V8 uses an internal representation of JavaScript objects (called "Maps" or "hidden classes") to track object structure for optimization. A type confusion bug can be triggered by crafting JavaScript that causes V8 to transition an object through types in a way that violates V8's internal type tracking — leaving V8 believing an object is one type while it has actually been converted to another. Memory operations performed on the misidentified object can then access out-of-bounds memory.

An attacker crafts a malicious HTML page with carefully sequenced JavaScript that triggers the type confusion, enabling controlled out-of-bounds memory reads and writes in the renderer process.

Discovery

Reported to Google by an anonymous researcher. Google confirmed active in-the-wild exploitation before the fix was released, indicating the vulnerability was already being used in targeted attacks. CISA added it to KEV just three days after the patch.

Exploitation Context

Browser V8 type confusion vulnerabilities are highly valued by sophisticated threat actors due to the breadth of the attack surface (every Chrome user processing arbitrary JavaScript) and the reliability with which such bugs can be exploited for renderer code execution. They are frequently used as the first stage in full browser exploit chains:

  1. V8 type confusion → renderer process code execution
  2. Renderer code execution → sandbox escape (via a secondary vulnerability)
  3. Sandbox escape → full OS-level compromise

The confirmed in-the-wild use before Google's patch discovery suggests an organized threat actor who had developed and deployed the exploit independently. Browser zero-days in V8 are typically associated with nation-state intelligence operations or high-value criminal campaigns.

Remediation

  1. Update Chrome to 99.0.4844.84 or later: Chrome auto-updates — verify in Help > About Google Chrome.
  2. Update all Chromium-based browsers: Microsoft Edge, Brave, Opera, and other Chromium browsers contain the same V8 engine.
  3. Enable automatic updates: Ensure all browsers receive future emergency patches automatically.
  4. Enterprise deployment: Use MDM/Intune/SCCM to push browser updates to managed endpoints without waiting for scheduled patch cycles when zero-days with confirmed exploitation are disclosed.

Key Details

PropertyValue
CVE ID CVE-2022-1096
Vendor / Product Google — Chromium V8
NVD Published2022-07-23
NVD Last Modified2025-10-24
CVSS 3.1 Score8.8
CVSS 3.1 VectorCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
SeverityHIGH
CWE CWE-843 find similar ↗
CISA KEV Added2022-03-28
CISA KEV Deadline2022-04-18
Known Ransomware Use No

CVSS 3.1 Breakdown

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Required Action

CISA BOD 22-01 Deadline: 2022-04-18. Apply updates per vendor instructions.

Timeline

DateEvent
2022-03-25Google released Chrome 99.0.4844.84 with emergency fix; confirmed in-the-wild exploitation
2022-03-28CISA added to KEV
2022-04-18CISA BOD 22-01 remediation deadline
2022-07-23CVE formally published to NVD

References

ResourceType
NVD — CVE-2022-1096 Vulnerability Database
CISA KEV Catalog Entry US Government
Chrome Stable Channel Update — March 25, 2022 Vendor Advisory