Skip to main content
← All vulnerabilities
CVE-2026-34945GHSA-M9W2-8782-2946RUSTSEC-2026-0086

Wasmtime leaks host data with 64-bit tables and Winch

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 36.0.7, 42.0.2, 44.0.1, 43.0.1
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

Wasmtime is a runtime for WebAssembly. From 25.0.0 to before 36.0.7, 42.0.2, and 43.0.1, Wasmtime's Winch compiler contains a bug where a 64-bit table, part of the memory64 proposal of WebAssembly, incorrectly translated the table.size instruction. This bug could lead to disclosing data on the host's stack to WebAssembly guests. The host's stack can possibly contain sensitive data related to other host-originating operations which is not intended to be disclosed to guests. This bug specifically arose from a mistake where the return value of table.size was statically typed as a 32-bit integer, as opposed to consulting the table's index type to see how large the returned register could be. When combined with details about Wnich's ABI, such as multi-value returns, this can be combined to read stack data from the host, within a guest. This vulnerability is fixed in 36.0.7, 42.0.2, and 43.0.1.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • bytecodealliance wasmtime

    From 25.0.0 · fixed in 36.0.7; From 37.0.0 · fixed in 42.0.2; From 43.0.0 · fixed in 44.0.1

  • wasmtimecrates.io

    From 25.0.0 · fixed in 36.0.7

  • wasmtimecrates.io

    From 37.0.0 · fixed in 42.0.2

  • wasmtimecrates.io

    From 43.0.0 · fixed in 43.0.1

  • wasmtimecrates.io

    From 0.0.0-0 · fixed in 36.0.7; From 37.0.0 · fixed in 42.0.2; From 43.0.0 · fixed in 43.0.1

References 1

GitHub · bytecodealliance/wasmtime