Skip to main content

Wasmtime EUVDEUVD-2026-109187

| CVE-2026-115892 MEDIUM
Access of Resource Using Incompatible Type (Type Confusion) (CWE-843)
2026-10-23 GitHub_M GHSA-9pvw-hwfg-92h5
5.7
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Load malicious guest into vulnerable embedder
  2. Exploit
    Receive host-created stream/future back as StreamAny/FutureAny
  3. Execution
    Re-pass value to guest function with mismatched payload type
  4. Impact
    Skipped type check panics Wasmtime host (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Type safety enforcement
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation is possible only against embedders that do all of the following: (1) create component-model streams or futures on the host via StreamReader::new or FutureReader::new; (2) pass them into guest code and receive them back as a type-erased StreamAny, FutureAny, Val::Stream/Val::Future, or a typed reader wrapping one of these; and (3) pass that value on to a guest function whose stream/future payload type differs from the type the host originally created it with. A malicious guest triggers the mismatch by controlling the types of the functions it exports or the values it returns. Embedders that use only statically typed StreamReader<T>/FutureReader<T> with concrete payload types throughout, or that never pass host-created streams/futures through a guest and back, are NOT affected. The limiting factors are this specific component-model embedding pattern (not a default or common configuration), the requirement to execute attacker-controlled guest code, and the operator action of forwarding the type-erased value; impact is confined to a host crash with no code execution or data exposure.

Impact

This is a medium-severity denial-of-service issue, not a high-impact priority. The CVSS 4.0 score of 5.7 is driven entirely by availability loss (VA:H) with no confidentiality or integrity impact (VC:N/VI:N) - the only consequence stated in the GHSA advisory is a host panic. Although the vector is AV:N, exploitation is heavily gated: AC:H, Attack Requirements present (AT:P), high privileges/operator dependency (PR:H), and required user/embedder interaction (UI:P). No EPSS score was supplied, the CVE is not in CISA KEV, and no public exploit or PoC reference is present in the input - only vendor fix PRs and commits. The vuln.today decision label is 'this_month', consistent with a patch-this-cycle item rather than an emergency. The biggest risk-limiting factor is the narrow precondition: only embedders that create streams/futures on the host and round-trip them through a guest as type-erased values are affected. No signals conflict; all point to a real but low-urgency, DoS-only bug. Note the input Tags ('Information Disclosure', 'Memory Corruption') contradict the advisory and CVSS, which describe neither - see data_quality_flags.

Exploit ScenarioDerived

An application embeds Wasmtime and creates a component-model stream or future on the host, passes it into guest code, and gets it back as a type-erased StreamAny/FutureAny or Val::Stream/Val::Future. A malicious guest that controls its exported function types returns the value typed for a different payload, and when the host lowers it back into a guest expecting that different type, a required payload-type check is skipped and the Wasmtime host panics, crashing the embedder (denial of service). No public exploit code is identified at the time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 23, 2026

Wasmtime 46.0.0 through 48.0.6 and 49.0.0 through 49.0.3 can be panicked by a malicious guest that induces a type mismatch when a host-created component-model stream or future is lowered back into guest code with a different payload type. Exposure is narrow: only embedders that create streams or futures with StreamReader::new or FutureReader::new, pass them through guest code, receive them back through a type-erased path such as StreamAny, FutureAny, Val::Stream or Val::Future, and then forward them to a guest function expecting a different payload type are affected; the result is a host crash (denial of service) with no code execution or data exposure. The issue is fixed in 48.0.7 and 49.0.4, and no public exploit was identified at the time of analysis.

RemediationAI

Vendor-released patches are available: upgrade to Wasmtime 48.0.7 or 49.0.4 depending on your branch (https://github.com/bytecodealliance/wasmtime/releases/tag/v48.0.7, https://github.com/bytecodealliance/wasmtime/releases/tag/v49.0.4); the fixes landed via pull requests 14819, 14820 and 14827 and commits 222ff3a65dab9aa7011f8c246937751a0bac5abd, 48dacc76241f06088e79f3ce1b17642f2f7bf158 and 994549891c8a706cb4f2809f9d17b9f67b31e618, and the advisory is at https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-9pvw-hwfg-92h5. If an upgrade cannot be applied immediately, the actionable constraint from the advisory is to stop exercising the affected pattern: do not create streams or futures with StreamReader::new or FutureReader::new and then pass them through guest code and back under type-erased types such as StreamAny, FutureAny, Val::Stream or Val::Future for forwarding to a guest function whose payload type differs from the original, and keep such values statically typed with concrete payload types end to end; the trade-off is that embedders relying on type-erased forwarding lose that flexibility until they upgrade, while embedders that never round-trip host-created streams or futures through a guest need no change. Because GHSA-63h4-6cx9-pjfj fixed related problems in the same area, confirm that the chosen release level also covers that advisory.

Affected VersionsENISA

wasmtime 49.0.0, < 49.0.4
wasmtime 46.0.0, < 48.0.7

Affected Packages

cargo wasmtime fix: 48.0.7, 49.0.4

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

The defect is a type-confusion problem (CWE-843) in Wasmtime's component-model stream and future plumbing. An embedder that creates a stream or future on the host via StreamReader::new or FutureReader::new and lets it round-trip through guest code can get the value back under a type-erased form (StreamAny, FutureAny, Val::Stream, Val::Future, or a typed reader wrapping one of these); when that value is lowered into a guest function, the required payload-type check is omitted, so the host can hand a value of one payload type to a guest expecting another. A guest influences the mismatch by controlling the types of the functions it exports or the values it returns, and the consequence inside the runtime is a panic rather than memory corruption, which is why only availability is impacted. The provided CVSS vector (AV:N/AC:H/AT:P/PR:H/UI:P, VC:N/VI:N/VA:H) and the independent assessment agree that high privileges and a non-default embedding pattern are prerequisites. Embedders that use only statically typed StreamReader<T>/FutureReader<T> with concrete payload types throughout, or that never pass host-created streams or futures through a guest and back, are unaffected.

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

Vendor (GitHub_M) PRIMARY 5.7 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:P/PR:H/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 4.2 MEDIUM

AC:H and PR:H/UI:R reflect the non-default type-erased round-trip embedding pattern an operator must build and invoke; impact is a host panic only, so C:N/I:N/A:H.

3.1 AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:H
4.0 AV:N/AC:H/AT:P/PR:H/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
High
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 23, 2026 - 22:03 EUVD

DescriptionCVE.org

Wasmtime is a runtime for WebAssembly. From 46.0.0 until 48.0.7 and 49.0.4, lowering a host-created component-model stream or future into a guest can omit a required payload-type check after the value passes through guest code and returns through StreamAny, FutureAny, Val::Stream, Val::Future, or an equivalent typed reader. A malicious guest that controls exported function types or returned values can cause the host to pass the type-erased value to a guest expecting a different payload type, which panics the Wasmtime host. This issue is fixed in versions 48.0.7 and 49.0.4.

Threat Intelligence Overview

Prevalence
Medium
popular WebAssembly runtime but specialized developer-facing embedding library
Threat Intel
1
1 source
Social Media
1
Sightings
Data Quality
4 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0
CVE-2026-115893 CRITICAL
9.9 Oct 23

Sandbox escape in Wasmtime on aarch64 lets a user-supplied WebAssembly module redirect an oversized br_table branch to a

CVE-2026-115889 CRITICAL
9.9 Oct 23

Wasmtime versions before 36.0.19, and the 37.0.0 through 42.x line, can silently miscompile attacker-supplied WebAssembl

CVE-2023-26489 CRITICAL
9.9 Mar 08

wasmtime is a fast and secure runtime for WebAssembly. Rated critical severity (CVSS 9.9), this vulnerability is remotel

CVE-2022-39394 CRITICAL
9.8 Nov 10

Wasmtime is a standalone runtime for WebAssembly. Rated critical severity (CVSS 9.8), this vulnerability is remotely exp

CVE-2022-24791 CRITICAL
9.8 Mar 31

Wasmtime is a standalone JIT-style runtime for WebAssembly, using Cranelift. Rated critical severity (CVSS 9.8), this vu

CVE-2024-30266 MEDIUM POC
5.5 Apr 04

wasmtime is a runtime for WebAssembly. Rated medium severity (CVSS 5.5), this vulnerability is low attack complexity. Pu

CVE-2026-34987 CRITICAL
9.0 Apr 09

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

CVE-2026-34971 CRITICAL
9.0 Apr 09

Arbitrary memory read/write vulnerability in Bytecode Alliance Wasmtime versions 32.0.0 through 36.0.6, 42.0.0-42.0.1, a

CVE-2023-30624 HIGH
8.8 Apr 27

Wasmtime is a standalone runtime for WebAssembly. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit

CVE-2022-31146 HIGH
8.8 Jul 21

Wasmtime is a standalone runtime for WebAssembly. Rated high severity (CVSS 8.8), this vulnerability is remotely exploit

CVE-2022-39393 HIGH
8.6 Nov 10

Wasmtime is a standalone runtime for WebAssembly. Rated high severity (CVSS 8.6), this vulnerability is remotely exploit

CVE-2026-27572 HIGH
7.5 Feb 24

Wasmtime's HTTP header handling in the wasmtime-wasi-http crate crashes when processing excessive header fields, allowin

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy