Skip to main content
Live Webinar with SANS (June 25)— Agentic CTI Automation for Fun & ProfitRegister Free
Mallory
HighPublic exploit

Type Confusion in WebAssembly in Google Chrome

IdentifiersCVE-2024-2887CWE-843· Access of Resource Using…

CVE-2024-2887 is a high-severity type confusion vulnerability in the WebAssembly component of Google Chrome affecting versions prior to 123.0.6312.86. According to the provided content, a remote attacker can trigger the flaw by causing a target to process a crafted HTML page, leading to arbitrary code execution. The issue is described as a type confusion bug in Chromium’s WebAssembly handling. The content also notes downstream exposure in products that bundle vulnerable Chromium builds, including Kibana’s headless Chromium used for reporting.

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 allows remote arbitrary code execution. In Chrome, this means attacker-controlled code execution in the browser context after a victim visits a crafted HTML page. In downstream products bundling the vulnerable Chromium engine, such as Kibana reporting, exploitation could result in code execution in the context of the bundled headless Chromium process; the provided advisory further notes that in some Kibana deployments this may extend to code execution within the Kibana container, though container security controls may limit broader host impact.

Mitigation

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

If patching is not immediately possible, reduce or eliminate exposure to the vulnerable Chromium component. Based on the provided Elastic advisory for Kibana, disable reporting entirely by setting xpack.reporting.enabled: false in kibana.yml. If CSV reporting must remain enabled, disable screenshot-based reporting by setting xpack.reporting.pdf.enabled: false and xpack.reporting.png.enabled: false. More generally, prevent untrusted HTML content from being rendered by vulnerable Chromium instances until updates are applied.

Remediation

Patch, then assume compromise.

Upgrade Google Chrome/Chromium to version 123.0.6312.86 or later. For affected downstream software, apply the vendor-provided updates that replace the bundled vulnerable Chromium build. The provided Elastic advisory states that affected Kibana deployments should be upgraded to 7.17.22 or 8.14.0; affected versions are 7.17.21 and 8.13.x prior to 8.14.0.
PUBLIC EXPLOITS

Exploits

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

VALID 3 / 5 TOTALView more in app
CVE-2024-2887-REPORTMaturityPoCVerified exploit

Small repository containing a README and a single JavaScript PoC. The code targets a Google Chrome/V8 WebAssembly garbage-collection type confusion issue affecting Chrome 123 and earlier. The PoC uses WasmModuleBuilder helpers to create 1,000,000 additional canonicalized types, causing canonical type IDs to wrap/truncate into the 20-bit ValueType representation. It then crafts a struct type intended to alias with kAny, defines a WASM function that performs struct.get on its argument, and calls that function with a plain JS value (0). According to the comments, this bypasses expected JS-to-WASM type validation and results in invalid memory access / segfault-like behavior, demonstrating arbitrary WASM type confusion. The README goes beyond the included code and outlines a full exploitation chain: initial JS-to-WASM type confusion, PartitionAlloc metadata abuse to leak chrome.dll and gain arbitrary write, and eventual CodePointerTable hijack for ROP/shellcode execution. However, the repository itself only contains a proof-of-concept demonstrating the primitive, not a full weaponized RCE exploit. No network communication, C2, or remote endpoints are present in the code.

ad3210Disclosed Jun 11, 2026markdownjavascriptbrowserweb
reproduce-cve-2024-2887MaturityPoCVerified exploit

This repository is a proof-of-concept exploit for CVE-2024-2887, a vulnerability in Google's V8 JavaScript engine related to WebAssembly GC support. The repository contains a GitHub Actions workflow to automate building a vulnerable version of V8 and its dependencies, and a Python script ('test_wasm_exploit.py') that serves as the main exploit harness. The script generates WebAssembly text modules (.wat) with a large number of struct types, compiles them to binary (.wasm) using 'wat2wasm', and executes them via a JavaScript harness using the d8 binary. The script iteratively increases the number of struct types to find the threshold at which the bug/crash is triggered, indicating the presence of the vulnerability. The exploit is local and requires the user to build and run V8 with specific options. No network endpoints are involved; all operations are performed on local files and binaries. The repository is structured for easy reproduction and testing of the vulnerability, with clear automation for environment setup and execution.

jjyuorgDisclosed May 17, 2025pythonyamllocal
Chrome-CVE-2024-2887-RCE-POCMaturityPoCVerified exploit

This repository contains a proof-of-concept (POC) exploit for CVE-2024-2887, a type confusion vulnerability in Google Chrome's WebAssembly (WASM) implementation. The repository consists of two files: a README.md providing context and references, and poc.js, which contains the exploit code. The JavaScript code in poc.js constructs a large number of WASM types and deliberately confuses type indexes, ultimately triggering a type confusion bug. This can lead to arbitrary code execution or a browser crash if run in a vulnerable version of Chrome. The exploit is intended for research and educational purposes and should be executed in a safe, isolated environment. No network or file system endpoints are hardcoded in the exploit; it is purely a browser-based attack vector targeting Chrome's WASM engine.

PumpkinBridgeDisclosed Aug 25, 2024javascriptmarkdownbrowser
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
Fedora ProjectFedoraoperating_system
GoogleChromeapplication

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

ACTIVITY FEED

Recent activity

4 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.

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 signatures

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 activity2

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