Wasmtime
CVE-2025-62711
LOW
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSupply crafted WebAssembly component
-
DeliveryInvoke component-model intrinsic trampoline
-
ExploitTrigger trap during wasm execution
-
ExecutionHost reads uninitialized trap-handler data
-
ImpactJump to null address, crash host (DoS)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling procedures
|
| Exploitation Conditions | Exploitation requires all of the following narrow conditions, which sharply limit real-world risk: (1) the host runs Wasmtime 38.0.0, 38.0.1, or 38.0.2 (the Rust 'wasmtime' crate); (2) a deliberately hand-crafted component that directly lifts a component-model intrinsic (e.g. resource.rep) so that the host-to-wasm trampoline for a component intrinsic is actually used - something no conventional toolchain produces; (3) the host embedder invokes that intrinsic with exactly the right type signatures (many pre-built embeddings never use these signatures and therefore cannot run the component at all); and (4) a trap/error must occur during wasm execution so the code path reads the un-updated runtime data. The combination of carefully crafted component plus a specific cooperating embedder plus a required trap is the main limiting factor; there is no authentication or privilege the attacker gains, and impact is confined to crashing the host process. |
| Impact | All signals converge on this being a genuinely low-priority issue rather than a high-CVSS-but-low-real-risk mismatch. The vendor/NVD CVSS 4.0 base score is only 2.1 (AV:N/AC:H/AT:P/PR:L/UI:P) with impact limited to availability (VA:L/SA:L) and no confidentiality or integrity effect, consistent with CWE-755 and a pure denial-of-service crash. EPSS is 0.43% (35th percentile), the CVE is NOT in CISA KEV, and there is no public exploit identified - so exploitation status is 'no public exploit identified at time of analysis.' The GHSA advisory itself stresses that triggering the bug requires (a) a carefully crafted component no normal toolchain would emit, (b) a specific host embedder invoking component-model intrinsics with exactly the right type signatures, and (c) a trap occurring during execution - a very narrow combination that matches the high attack complexity (AC:H) and attack requirement (AT:P). CONFLICT TO NOTE: I assess the availability impact higher than the vendor - a deterministic segfault crashes the entire host process (a hard crash, not graceful degradation), which I treat as A:H/VA:H rather than Low; however, the extreme preconditions keep real-world risk low regardless of the impact metric. This is a correctness/sandbox-integrity fix (Wasmtime's safety goal is that safe Rust cannot crash the runtime) more than an actively dangerous vulnerability. Remediation is simple: upgrade to 38.0.3; there are no workarounds. |
| Exploit ScenarioDerived | A service embedding Wasmtime 38.0.0-38.0.2 that loads untrusted WebAssembly components and invokes component-model intrinsics with specific type signatures could be fed a maliciously crafted component; when a trap occurs during its execution, an un-updated host-to-wasm trampoline leaves trap-handling runtime data uninitialized (e.g. a jump target left at 0), causing execution to jump to the null address and deterministically segfault, crashing the whole host process. No public exploit code exists, and the required component and embedder type signatures are highly specific, so this is a theoretical DoS rather than an opportunistic one. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 01, 2026
Crashes the host process in Wasmtime 38.0.0 through 38.0.2 when a deliberately hand-crafted WebAssembly component bypasses normal toolchain output to invoke a component-model intrinsic (for example resource.rep) through the host-to-wasm trampoline, and then a trap or error occurs while that intrinsic executes - the trampoline fails to populate the runtime trap-dispatch data, so execution jumps to address 0 and the host dies with a segfault or a Rust assertion failure. The prerequisites are narrow and must all line up: the vulnerable 38.x release, a component no conventional toolchain would emit, a host embedder that calls the intrinsic with exactly the right type signatures, and a subsequent wasm error on the affected path, which is why the independent assessment rates this as a low-priority, availability-only defect rather than a broadly exploitable flaw. The Rust crate was fixed in 38.0.3, no workarounds are offered by the vendor, the EPSS score is 0.43% (35th percentile), and no public exploit code identified at time of analysis.
RemediationAI
Upgrade to Wasmtime 38.0.3, the vendor-released patch that corrects the component-intrinsic host-to-wasm trampoline bookkeeping; this is the only fix, since the advisory states there are no workarounds (fixed in: 38.0.3, vulnerable: >= 38.0.0, < 38.0.3). Audit Cargo.lock and any vendored or bundled Wasmtime copies, including bindings and tools that embed the crate, because the CPE scopes the issue to the rust/wasmtime artifact and a stale transitive dependency will keep the exposure. If 38.0.3 cannot be deployed immediately, downgrading to the 37.x line removes the flaw entirely at the cost of losing 38.x features and fixes, and it is a safer stopgap than any partial configuration change. As compensating controls while a rollout is pending, refuse to run untrusted or externally supplied component binaries - in particular require that components come from a trusted toolchain rather than accepting arbitrary .wasm builds, since triggering the bug requires a component that directly lifts a component-model intrinsic such as resource.rep in a shape no normal toolchain emits; the trade-off is reduced functionality for legitimate hand-written intrinsic-based components. Additionally, run Wasmtime under a supervisor that restarts the process on abnormal exit, since the assessed impact is host-process crash with no confidentiality or integrity loss, and treat repeated segfaults as an exploitation indicator rather than a bug. Full details and patch links are in GHSA-4h67-722j-5pmc and the fix commit 192f2fcdadfec9d0cf6b58548a85a7307450cbf5.
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 Bytecode Alliance's WebAssembly runtime, distributed primarily as the Rust wasmtime crate (tracked by CPE cpe:2.3:a:bytecodealliance:wasmtime:*:*:*:*:*:rust:*:*). Wasmtime 38 refactored host-to-wasm trampolines away from setjmp/longjmp stack unwinding toward an explicit exception-handling model in the Cranelift code generator; the accompanying patch touches Cranelift ABI clobber definitions for AArch64 and x64 (ALL_CLOBBERS for exception exits, new Winch and Tail call-convention arms, SYSV/WINDOWS clobber selection), call-convention exception handling, Pulley relocation rules, and the compiler's component trampoline emission, which now builds a try_call block, an exception table, and save_last_wasm_entry_context instead of a direct declare_and_call. During that transition the trampolines generated specifically for component-model intrinsics were not updated, so they skipped the bookkeeping that records where to resume when wasm traps. A trap then reads that unset runtime value - left at 0 for the missing jump target - and the process deterministically faults. The root cause class is CWE-755, Improper Handling of Exceptional Conditions: the error path exists but the state it depends on was never initialized for this trampoline family. Because affected components are intentionally malformed relative to any real toolchain's output, this is best understood as a robustness violation of Wasmtime's guarantee that safe Rust embeddings cannot be crashed by untrusted wasm, not as a memory-corruption or code-execution primitive.
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:H/AT:P/PR:L/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:L
Untrusted guest component crashes the host process (S:C, A:H), attacker needs no privileges (PR:N), but the crafted-component plus specific-embedder-plus-trap preconditions make AC:H; no C/I impact.
Primary rating from Vendor (github).
CVSS VectorVendor: github
DescriptionCVE.org
Wasmtime is a runtime for WebAssembly. In versions from 38.0.0 to before 38.0.3, the implementation of component-model related host-to-wasm trampolines in Wasmtime contained a bug where it's possible to carefully craft a component, which when called in a specific way, would crash the host with a segfault or assert failure. Wasmtime 38.0.3 has been released and is patched to fix this issue. There are no workarounds.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Affected Products (CPE)CVE.org
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
NVD
CVE.org
EPSS
GitHub
VulDB
Exploit-DB