CVE-2026-34941 json
Wasmtime has a Heap OOB read in component model UTF-16 to latin1+utf16 string transcoding
published 2026-04-09 7 mo ago modified 2026-10-26 13 d ago also EUVD-2026-20988 , GHSA-hx6p-xpx3-jvvv , JLSEC-2026-1354 , RUSTSEC-2026-0093
- cvss
- 8.1
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 33%
- public exploits
- 0
- none known
Summary
Wasmtime is a runtime for WebAssembly. Prior to 24.0.7, 36.0.7, 42.0.2, and 43.0.1, Wasmtime contains a vulnerability where when transcoding a UTF-16 string to the latin1+utf16 component-model encoding it would incorrectly validate the byte length of the input string when performing a bounds check. Specifically the number of code units were checked instead of the byte length, which is twice the size of the code units. This vulnerability can cause the host to read beyond the end of a WebAssembly's linear memory in an attempt to transcode nonexistent bytes. In Wasmtime's default configuration this will read unmapped memory on a guard page, terminating the process with a segfault. Wasmtime can be configured, however, without guard pages which would mean that host memory beyond the end of linear memory may be read and interpreted as UTF-16. A host segfault is a denial-of-service vulnerability in Wasmtime, and possibly being able to read beyond the end of linear memory is additionally a vulnerability. Note that reading beyond the end of linear memory requires nonstandard configuration of Wasmtime, specifically with guard pages disabled. This vulnerability is fixed in 24.0.7, 36.0.7, 42.0.2, and 43.0.1.
Patch / fix
- crates.io wasmtime 24.0.7, 36.0.7, 42.0.2, 43.0.1
- julia Wasmtime_jll 45.0.1+0
- bytecodealliance wasmtime 24.0.7, 36.0.7, 42.0.2, 44.0.1
- rust-wasmtime Debian 14 36.0.7+dfsg-1
debian advisories DEBIAN-CVE-2026-34941
- zed openSUSE Tumbleweed 1.24.2-1.1
- tree-sitter openSUSE Tumbleweed 0.26.8-2.1
opensuse advisories openSUSE-SU-2026:12355-1openSUSE-SU-2026:10715-1
- github.com/bytecodealliance/wasmtime#13016 pull request
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-34941 updated cvss 5.3
wasmtime: Wasmtime: Denial of Service and potential information disclosure via incorrect UTF-16 string validation
-
Red Hat Connectivity Link 1 redhat-user-workloads/api-management-tenant/rhcl-1-3-wasm-shimaffected: workaround, no fix available
-
Red Hat Enterprise Linux 10 virt-firmware-rsnot affected: component not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 6 mo ago
Exploit prediction
0.39% chance of exploitation in the next 30 days, higher than 33% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 6.9 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| GitHub | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H |
| CNA | 4.0 | 6.9 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H |
| OSV | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | wasmtime | <24.0.7 >=25.0.0, <36.0.7 >=37.0.0, <42.0.2 >=43.0.0, <43.0.1 >=0.0.0-0, <24.0.7 |
24.0.7 36.0.7 42.0.2 43.0.1 |
| julia | Wasmtime_jll | <45.0.1+0 |
45.0.1+0 |
Affected products
- bytecodealliance wasmtime
Classification
- Weakness
-
- CWE-125 Out-of-bounds Read
References
-
github.com
/bytecodealliance/wasmtime/pull/13016
web
-
github.com
/bytecodealliance/wasmtime/security/advisories/GHSA-hx6p-xpx3-jvvv
web, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-34941
advisory, web
-
github.com
/bytecodealliance/wasmtime
package
-
rustsec.org
/advisories/RUSTSEC-2026-0093.html
web, advisory
-
github.com
/advisories/GHSA-hx6p-xpx3-jvvv
web
-
crates.io
/crates/wasmtime
package
Sources
- CVE List CVE-2026-34941
- GitHub Advisory GHSA-hx6p-xpx3-jvvv
- NVD CVE-2026-34941
- OSV JLSEC-2026-1354
- OSV RUSTSEC-2026-0093
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.