---
id: "CVE-2026-115889"
kind: "vulnerability"
aliases: ["CVE-2026-115889", "GHSA-897f-g5gm-fmxm"]
title: "Wasmtime: Bit-packing in Cranelift compiler causes silent overflow and miscompilation"
severity: "critical"
cvss: 9.9
epss: 0.00663
exploited: false
status: "open"
category: "package"
products: [{"name": "wasmtime", "fixed": ["36.0.19"], "affected": "< 36.0.19", "ecosystem": "cargo"}, {"name": "wasmtime", "fixed": ["43.0.0"], "affected": ">= 37.0.0, < 43.0.0", "ecosystem": "cargo"}]
ecosystems: ["cargo"]
tags: ["cwe-197", "cwe-843", "package", "rust", "wasm-runtime", "wasmtime"]
not_affected_if: ["wasmtime-43-or-later", "wasmtime-below-36-not-used"]
published_at: "2026-10-23T22:02:20+00:00"
first_seen_at: "2026-10-23T22:05:18+00:00"
updated_at: "2026-10-25T12:38:49+00:00"
sources: [{"source": "ghsa", "url": "https://github.com/advisories/GHSA-897f-g5gm-fmxm", "first_seen_at": "2026-10-23T22:05:18+00:00"}, {"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-115889", "first_seen_at": "2026-10-23T23:44:51+00:00"}, {"source": "epss", "url": "https://api.first.org/data/v1/epss?cve=CVE-2026-115889", "first_seen_at": "2026-10-25T12:38:49+00:00"}]
---

# Wasmtime: Bit-packing in Cranelift compiler causes silent overflow and miscompilation

Wasmtime's Cranelift compiler packs SSA value indices into bits, so large or crafted WebAssembly functions can overflow silently in release builds and produce incorrect code. The advisory says an attacker can use a specially crafted Wasm module to escape the sandbox.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- cargo:wasmtime affected < 36.0.19 fixed 36.0.19
- cargo:wasmtime affected >= 37.0.0, < 43.0.0 fixed 43.0.0

## How to check

Run `cargo tree -i wasmtime` or check Cargo.lock for wasmtime versions below 36.0.19 or in the 37.0.0 to below 43.0.0 range.

## Fix

Upgrade wasmtime to 36.0.19 if on the 36.x line, or to 43.0.0 if on the 37.x to 42.x line.

## Timeline

- 2026-10-23T22:05:18+00:00 ghsa https://github.com/advisories/GHSA-897f-g5gm-fmxm
- 2026-10-23T23:44:51+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-115889
- 2026-10-25T12:38:49+00:00 epss https://api.first.org/data/v1/epss?cve=CVE-2026-115889

## From the sources

## Summary

In Wasmtime prior to v43, the Cranelift compiler backend bit-packs its SSA value indices in a way that can result in silent overflow in release builds, and result in incorrect value references in the IR resulting in arbitrary miscompilation. A very large Wasm function body, or one that is specially crafted to use many SSA values, can use this to force type-confusion or other arbitrary side-effects and escape the sandbox.

Cranelift was changed in Wasmtime v43 to use a full `u32` index, with checks if that limit is exceeded, and so is no longer susceptible to this bug.

## Impact

A Wasmtime engine with default settings (using the Cranelift backend) on any architecture/platform could experience a sandbox escape from a specially-crafted Wasm module.

## Patches

Wasmtime v36.0.19 has been released which fixes this issue.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
