Skip to main content
Mallory
HighCISA KEVExploited in the wildPublic exploit

Out-of-bounds read/write in Google Chrome V8

IdentifiersCVE-2025-5419CWE-787· Out-of-bounds Write

CVE-2025-5419 is a high-severity memory corruption vulnerability in the V8 JavaScript and WebAssembly engine used by Google Chrome. In Google Chrome prior to 137.0.7151.68, improper bounds handling in V8 allows out-of-bounds read and write operations. A remote attacker can trigger the flaw by convincing a target to load a crafted HTML page, which can cause heap corruption in the browser process. Multiple sources in the provided content state that the vulnerability was exploited in the wild, and some reporting notes it was discovered by Google Threat Analysis Group (TAG).

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation can corrupt heap memory in Chrome and may enable arbitrary code execution within the browser context. The provided content also indicates the flaw has been used in the wild and, in some reporting, may be chained toward sandbox escape, increasing the risk of full browser compromise and follow-on access to the victim environment.

Mitigation

If you can’t patch tonight, do this now.

Until patching is fully deployed, reduce exposure to untrusted web content, restrict access to potentially malicious sites, and use layered browser protections such as sandboxing, browser isolation, and endpoint detection controls. Because exploitation is triggered via a crafted HTML page, limiting user browsing to trusted destinations and disabling unnecessary active content where operationally feasible may reduce risk. However, no specific vendor workaround is provided in the supplied content, so patching is the primary mitigation.

Remediation

Patch, then assume compromise.

Update Google Chrome to version 137.0.7151.68 or later. The provided content specifically references fixed releases 137.0.7151.68/.69 for Windows and macOS, and 137.0.7151.68 for Linux. Apply the vendor security update across all affected endpoints and ensure browsers are restarted so the patched version is actually loaded.
PUBLIC EXPLOITS

Exploits

4 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos (2 hidden).

VALID 4 / 6 TOTALView more in app
CVE-2025-5419MaturityPoCVerified exploit

Repository contains a JavaScript proof-of-concept exploit for CVE-2025-5419 in Google V8 (noted as Turboshaft Store-Store Elimination leading to an uninitialized read / type confusion style primitive). The main file (CVE-2025-5419.js) sets up float/int/bigint conversion helpers using a shared ArrayBuffer, then uses GC grooming (minor_gc/major_gc) and JIT warmup of two functions (opt_leak and opt_fake_obj) to induce a mis-optimized/uninitialized read that leaks internal pointers/metadata. From the leaked values it derives key heap metadata (maps for PACKED_ELEMENTS / PACKED_DOUBLE_ELEMENTS, FixedArray/FixedDoubleArray maps, and EmptyFixedArray) and forges a fake JSArray header inside a long-lived container array. Using this forged array, it implements stable exploitation primitives: - addrof(obj): obtains the (cage) address of a JavaScript object. - fakeobj(addr): materializes a JavaScript object reference from a supplied address. - cage_read32/64 and cage_write32/64: arbitrary read/write within the V8 sandbox/cage region by indexing into the forged double-elements array. No network communication, command execution, or reverse shell payload is present; the code stops at establishing memory read/write primitives. The README claims a defensive ‘scanner/mitigation’ application and links to GitHub releases, but the actual repository content is an exploit PoC. The GN args file (StaticReleaseWithSymbol.args.gn) documents a V8 build configuration with symbols and debug/verification options, consistent with exploit development/testing.

Riquelme54322Disclosed Jan 25, 2023javascriptgnlocal (JavaScript executed in V8/d8; could be browser-context if embedded in a vulnerable Chromium/V8 environment)
CVE-2025-5419MaturityPoCVerified exploit

Repository purpose: a stabilized JavaScript exploit for CVE-2025-5419 (V8 Turboshaft Store-Store Elimination leading to uninitialized read), demonstrating escalation to powerful in-engine primitives. Structure: - CVE-2025-5419.js: core exploit. It defines float/int/bigint conversion helpers (ArrayBuffer views) and GC-shaping helpers (minor_gc/major_gc). Two JIT-trained functions (opt_leak and opt_fake_obj) are repeatedly executed to trigger optimized behavior. The exploit then: - Uses GC and the optimized uninitialized read to leak internal values (maps, elements pointers) and obtain a stable address leak for a chosen container. - Fakes a JSArray with PACKED_DOUBLE_ELEMENTS by crafting a fake object header inside a surviving container array, then obtains a usable fake reference via fake(). - Builds “cage” read/write primitives (cage_read32/64, cage_write32/64) by indexing into the faked double-elements array, effectively turning element access into arbitrary memory access within the V8 sandbox/cage region. - Implements stable addrof(obj) and fakeobj(addr) by switching the faked array’s map between PACKED_ELEMENTS and PACKED_DOUBLE_ELEMENTS and using the shared backing storage to reinterpret object pointers as doubles. - Includes validation checks to ensure expected GC/layout behavior. - README.md: explains the bug class, environment (Ubuntu 24.04) and target V8 commit, and provides references. - StaticReleaseWithSymbol.args.gn: GN args for building a release V8 with symbols and debugging aids. No network I/O, C2, or external callbacks are present; the exploit is a local engine PoC intended to be run in a vulnerable V8/d8 build to obtain in-sandbox arbitrary read/write and object/pointer primitives (not a full sandbox escape or OS-level RCE by itself).

bjrjkDisclosed Jan 29, 2026javascriptgnlocal (JavaScript engine / d8 shell)
CVE-2025-5419MaturityPoCVerified exploit

This repository contains a proof-of-concept exploit for CVE-2025-5419, a vulnerability in the V8 JavaScript engine's StoreStoreEliminationReducer optimization. The exploit is implemented in a single JavaScript file ('exploit.js') and is intended to be run in a custom-built, vulnerable version of the V8 shell (d8). The README is minimal, only stating the CVE identifier. The exploit leverages a bug in the handling of indexed loads and stores, allowing the removal of necessary array initialization stores, which leads to the ability to read uninitialized memory. This primitive is then escalated to achieve arbitrary memory read and write within the V8 process, potentially allowing for further exploitation such as sandbox escape. The exploit requires specific build steps and configuration, including patching a V8 source file for debug builds. The code references relevant V8 source and patch URLs for context. No network endpoints are present; all exploitation occurs locally within the V8 process.

mistymntncopDisclosed Aug 25, 2025javascriptlocal
CVE-2025-5419MaturityPoCVerified exploit

This repository contains a proof-of-concept (POC) exploit for CVE-2025-5419, a bug in the V8 JavaScript engine's Store-Store-Elimination optimization. The main file, POC.html, is a standalone HTML file with embedded JavaScript. The script repeatedly executes a function that performs a dynamic property load and store on an object, mimicking the pattern that triggers the buggy optimization in affected V8 versions. After warming up the JIT, it alerts the result, which may be a correct value, a garbage value, or cause a crash if the bug is present. The README.md simply identifies the CVE. There are no network endpoints or external resources; the exploit is entirely self-contained and must be run in a browser with a vulnerable V8 engine. The purpose of the repository is to demonstrate the presence and effect of the bug, not to provide a weaponized or post-exploitation payload.

riemannjDisclosed Aug 13, 2025htmljavascriptbrowser
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
GoogleChromeapplication
Microsoft CorporationEdge Chromiumapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware

Malware families riding this exploit, with evidence and IOCs.

Detection signatures3

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity95

Community discussion across Reddit, Mastodon, and other social sources.