Skip to main content

Wasmtime CVE-2026-115389

| EUVDEUVD-2026-108320 LOW
Allocation of Resources Without Limits or Throttling (CWE-770)
2026-10-22 disclosure@vulncheck.com GHSA-3g9q-2gmg-4cvp
1.0
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

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

  1. Access
    Load untrusted guest via Val API
  2. Exploit
    Return crafted oversized record values
  3. Execution
    Bypass hostcall fuel memory accounting
  4. Impact
    Exhaust host memory causing denial of service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

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

Exploitation Conditions

The host application must use Wasmtime's dynamically-typed Val API (wasmtime::component::Val) to lift return values from guest components; hosts built with bindgen! or otherwise statically-typed APIs are explicitly NOT affected. The host must also execute an attacker-controlled/untrusted guest component and depend on the hostcall fuel limit to bound host memory, since the flaw is that host allocations during Val lifting are not counted against that limit (a hole in the earlier GHSA-852m-cvvp-9p4w mitigation). Limiting factors: exposure is confined to Val-API hosts that accept untrusted guests; statically-typed hosts and hosts that only run trusted modules are not at risk. Note the supplied vector lists PR:L, but the genuine prerequisite is the ability to supply a guest module rather than a conventional user account.

Impact

This is a denial-of-service issue (CWE-770, missing resource-consumption limit): a guest can bypass Wasmtime's hostcall fuel limit and cause the host to allocate at least ~100x more memory than it is tracking. Signal review: no CISA KEV listing is present, no EPSS score was supplied, and no public exploit code or PoC reference appears in the input (only the vendor GHSA and a VulnCheck advisory), so exploitation status is 'no public exploit identified at time of analysis.' The vuln.today Decision label is 'monitor,' which aligns with a low-urgency, non-emergency posture. The supplied CVSS 4.0 vector scores only 1.0 (AV:A/AC:H/AT:P/PR:L/UI:P/VA:L), which materially underrates triggerability: the advisory describes a deterministic amplification that any guest returning crafted Val values can invoke, which is inconsistent with AC:H, AT:P and UI:P. My independent read is a reliably triggerable, availability-only DoS rather than a 1.0 near-non-issue - but it is gated hard by a usage condition (only hosts using the dynamically-typed Val API are affected). Net: a real but bounded priority for the specific population that runs untrusted guests through the Val API; for everyone else (bindgen!/statically-typed hosts) it is not exploitable. Treat as patch-on-schedule, consistent with the 'monitor' label, not an emergency.

Exploit ScenarioDerived

A host (e.g. an edge/plugin platform) embeds Wasmtime, calls untrusted guest component functions through the dynamically-typed Val API, and relies on the hostcall fuel limit to bound host memory. An attacker submits a malicious guest whose exported function returns a crafted value (such as a nested record) that lifts into roughly 100x more host memory than the fuel accounting records, exhausting RAM and taking the host process down. No public exploit code is identified at time of analysis; only vendor advisories exist.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 22, 2026

Denial of service in Wasmtime affects hosts that use the dynamically-typed Val API to lift values from untrusted WebAssembly guests, where crafted guest-returned values can make the host allocate at least about 100x more memory than the hostcall fuel accounting tracks. Versions before 36.0.16, 37.0.0 through 48.0.2, and 49.0.0 are affected, while statically typed bindgen! hosts are not. Vendor fixes are 36.0.16, 48.0.3, and 49.0.1, and the supplied intelligence shows no KEV entry or public exploit identified at time of analysis, with a vuln.today priority of monitor.

RemediationAI

Upgrade Wasmtime to 36.0.16, 48.0.3, or 49.0.1 according to the maintained branch; these are the vendor-released fixed versions. The GHSA advisory states there is no known workaround and recommends upgrading. The same advisory confirms that hosts using bindgen! or otherwise statically typed APIs are unaffected, while hosts using the Val API to process untrusted guests remain exposed until patched. See https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-jqpg-j7w6-42pr and the VulnCheck advisory at https://www.vulncheck.com/advisories/wasmtime-before-36.0.16-37.0.0-before-48.0.3-and-49.0.0-before-49.0.1-denial-of-service-via-val-api.

Affected VersionsENISA

wasmtime 37.0.0 <48.0.3
wasmtime 0 <36.0.16
wasmtime 49.0.0 <49.0.1

Affected Packages

cargo wasmtime fix: 36.0.16, 48.0.3, 49.0.1

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 Rust WebAssembly runtime. The component model's dynamically typed wasmtime::component::Val API lifts guest values into host-side Rust data structures, and that lifting path can allocate host memory for dynamically shaped values. CWE-770 covers allocation of resources without limits or throttling. The flaw is that these host allocations are not fully charged against Wasmtime's hostcall fuel limit, which is intended to bound resource consumption; the advisory describes this as a hole in the mitigation from GHSA-852m-cvvp-9p4w. A malicious guest returning crafted values can therefore allocate at least about 100x more host memory than tracked, producing denial of service. The independent assessment rates this CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H and notes the key prerequisite is the ability to supply a guest module, not a conventional user account; hosts using bindgen! or otherwise statically typed APIs are unaffected. The trigger is a crafted value returned through the Val API as described in the available sources.

Know when the next one hits your stack

  • 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 (vulncheck) PRIMARY 1.0 LOW
CVSS:4.0/AV:A/AC:H/AT:P/PR:L/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
vuln.today AI 6.2 MEDIUM

Any guest run through the Val API can deterministically trigger this (AC:L/PR:N/UI:N); guest executes locally in-process (AV:L); impact is host memory-exhaustion DoS only (A:H, C/I:N).

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

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

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

Lifecycle Timeline

1
Patch available
Oct 22, 2026 - 20:18 EUVD

DescriptionCVE.org

Wasmtime before 36.0.16, 37.0.0 before 48.0.3, and 49.0.0 before 49.0.1 does not adequately account for host allocations when lifting guest values through the dynamically-typed Val API, bypassing the hostcall fuel limit. A malicious WebAssembly guest can return crafted values that allocate at least ~100x more host memory than tracked, causing denial of service.

Threat Intelligence Overview

EPSS Score
0.2%
Top 96% exploitable
Prevalence
Medium
leading WebAssembly runtime, broad but not ubiquitous production deployment
Data Quality
3 sources
Confidence: Low

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 LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Defer
Exploitation· derived
None
System Exposure· derived
Controlled
Automatable· derived
No
Human Impact· derived
Low

Priority Score

5
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +5
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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