Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Impact | The CVSS v4.0 score of 6.9 reflects a network-accessible vulnerability (AV:N) with low attack complexity (AC:L) requiring authenticated user interaction (PR:L, UI:P). The vector indicates availability impact (VA:H) but no confidentiality, integrity, or system-wide impact in standard configurations. Real-world risk assessment reveals a moderate practical threat with important caveats: first, the vulnerability requires authentication and user interaction (clicking/accepting), narrowing the attack surface; second, the default Wasmtime configuration with guard pages mitigates the worst case (host memory disclosure) by terminating the process cleanly via segfault. The denial-of-service impact (process termination) is confirmed in default deployments, making this a valid availability threat for availability-critical WebAssembly services. Information disclosure (VI:H in the vulnerability description) is only possible in non-standard deployments without guard pages, which is a deliberate deviation from secure defaults. The ENISA EUVD classification as a known vulnerability without urgent zero-day designation supports a moderate-priority remediation posture rather than critical emergency response. This is best characterized as a real but bounded risk: high CVSS due to network access and authenticated availability impact, but moderate practical priority due to default-mitigated worst case and user interaction requirement. |
| Exploit ScenarioDerived | A legitimate authenticated user (for example, a developer with access to a Wasmtime-based service) could craft or upload a WebAssembly module containing a component that triggers the UTF-16 transcoding path with an oversized string length field. Upon execution, the transcoding function reads beyond the linear memory boundary, either segfaulting the process (default configuration) or reading adjacent host memory (non-standard guard-page-disabled configuration). In a multi-tenant or service-oriented deployment, this causes denial-of-service by terminating the runtime; in non-standard configurations, it could leak sensitive data from adjacent memory regions. No public proof-of-concept code has been published; exploitation requires knowledge of the specific bounds-check flaw and ability to invoke the vulnerable component-model transcoding path. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 09, 2026
Wasmtime runtime versions prior to 24.0.7, 36.0.7, 42.0.2, and 43.0.1 incorrectly validate UTF-16 string byte lengths during component-model encoding transcoding, causing out-of-bounds memory reads that trigger process termination via segfault in default configurations or potentially expose host memory when guard pages are disabled. Authenticated users with UI interaction can trigger this denial-of-service vulnerability; reading beyond linear memory requires non-standard Wasmtime configuration without guard pages. No public exploit code has been identified at time of analysis.
RemediationAI
Upgrade Wasmtime immediately to one of the patched versions: 24.0.7 (for the 24.x series), 36.0.7 (for the 25-36 series), 42.0.2 (for the 37-42 series), or 43.0.1 (for the 43.x series and later). The Bytecode Alliance security advisory at https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-hx6p-xpx3-jvvv provides detailed patched version information and verification guidance. As a temporary mitigation, if immediate patching is not feasible, ensure Wasmtime is deployed with its default guard-page protection enabled (do not disable guard pages in configuration), which limits this vulnerability to process denial-of-service rather than host memory disclosure. Validate that no custom Wasmtime builds in production use the guard-page-disabled mode.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in cargo
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Wasmtime is a WebAssembly runtime maintained by the Bytecode Alliance. The vulnerability resides in the component-model encoding layer, specifically in UTF-16 to latin1+utf16 transcoding logic. When validating buffer bounds before transcoding a UTF-16 string, the runtime incorrectly checks the count of code units (16-bit values) against the buffer size rather than the actual byte length, which is twice the code unit count for UTF-16 data. This is an instance of CWE-125 (Out-of-bounds Read), a classic buffer over-read vulnerability. The bounds check failure allows the transcoding function to attempt reading beyond the allocated linear memory region of a WebAssembly module. In Wasmtime's default configuration, memory guard pages protect against this by catching the read on unmapped memory and terminating the process. However, if Wasmtime is explicitly configured without guard pages (a non-standard but supported mode), the out-of-bounds read may access adjacent host memory, potentially exposing sensitive data.
Know when Wasmtime gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
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
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
Lifecycle Timeline
2DescriptionGitHub Advisory
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.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Sandbox escape in Wasmtime on aarch64 lets a user-supplied WebAssembly module redirect an oversized br_table branch to a
Wasmtime versions before 36.0.19, and the 37.0.0 through 42.x line, can silently miscompile attacker-supplied WebAssembl
wasmtime is a fast and secure runtime for WebAssembly. Rated critical severity (CVSS 9.9), this vulnerability is remotel
Wasmtime is a standalone runtime for WebAssembly. Rated critical severity (CVSS 9.8), this vulnerability is remotely exp
Wasmtime is a standalone JIT-style runtime for WebAssembly, using Cranelift. Rated critical severity (CVSS 9.8), this vu
wasmtime is a runtime for WebAssembly. Rated medium severity (CVSS 5.5), this vulnerability is low attack complexity. Pu
Memory sandbox escape in Wasmtime's Winch compiler (versions 25.0.0 to before 36.0.7, 42.0.2, 43.0.1) enables authentica
Arbitrary memory read/write vulnerability in Bytecode Alliance Wasmtime versions 32.0.0 through 36.0.6, 42.0.0-42.0.1, a
Wasmtime is a standalone runtime for WebAssembly. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit
Wasmtime is a standalone runtime for WebAssembly. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit
Wasmtime is a standalone runtime for WebAssembly. Rated high severity (CVSS 8.6), this vulnerability is remotely exploit
Wasmtime's HTTP header handling in the wasmtime-wasi-http crate crashes when processing excessive header fields, allowin
Same weakness CWE-125 – Out-of-bounds Read
View allSame technique Buffer Overflow
View allVendor StatusVendor
SUSE
Severity: Medium| Product | Status |
|---|---|
| SUSE Linux Enterprise Server 16.1 | Fixed |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Fixed |
EUVD-2026-20988
GHSA-hx6p-xpx3-jvvv
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB