Description
Wasmtime is a runtime for WebAssembly. All versions prior to 24.0.10; versions 25.0.0 through those before 36.0.11; versions 37.0.0 through those before 44.0.3; and versions 45.0.0 and 45.0.1 contain a native implementation of WASIp1 which suffers from a leak in the fd_renumber function where the file descriptor being renumbered to is not properly closed. Wasmtime's implementation erroneously only updated the table of descriptors for WASIp1 and didn't update the underlying table of descriptors used by the host. This behavior means that while fd_renumber works correctly from a guest's perspective it ends up leaking resources in the host that aren't cleaned up until the corresponding Store is destroyed. In a loop, guests can use fd_renumber to cause hosts to exhaust both resources and file descriptors. This bug only affects the native implementation of WASIp1, meaning that only runtimes which load core wasm modules and expose fd_renumber are affected. Runtimes are additionally only affected if they expose the ability to acquire a file descriptor, such as opening a file. For runtimes that deny access to files they are unaffected. This issue has been fixed in versions 24.0.10, 36.0.11, 44.0.3, and 45.0.2.
Published: 2026-07-01
Score: 2.3 Low
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A flaw in Wasmtime’s native WASIp1 fd_renumber guest renumbers a descriptor, since the host’s descriptor table is not closed. This flaw represents a resource leak (CWE‑400) and an improper resource shutdown (CWE‑772). The defect behaves normally from the guest’s viewpoint but leaks host resources, eventually exhausting file descriptors and other system handles. The impact is a resource exhaustion that can degrade or halt host process operation.

Affected Systems

The issue affects bytecodealliance:wasmtime runtimes installed before 24.0.10, between 25.0.0 and before 36.0.11, between 37.0.0 and before 44.0.3, and the 45.0.0 and 45.0.1 releases. The native WASIp1 implementation is impacted, and the flaw is exploitable only when the runtime loads core WebAssembly modules and publishes the fd_renumber API along with access to file descriptors. Runtimes that deny access to files remain safe.

Risk and Exploitability

The CVSS score of 2.3 indicates a low overall severity, and an EPSS score of <1% suggests limited publicly known exploitation. The vulnerability is not listed in the CISA KEV catalog. Based on the description, it is inferred that the likely attack vector involves a malicious guest WebAssembly program that invokes fd_renumber repeatedly while the runtime exposes file descriptors. No known public exploitation exists. The risk depends on whether such guest code can run in theof‑service if the attacker can iterate fd_renumber in a loop.

Generated by OpenCVE AI on July 21, 2026 at 13:20 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Wasmtime to a fixed release (24.0.10, 36.0.11, 44.0.3, or 45.0.2).
  • If upgrading is not possible, configure the runtime to deny file‑descriptor exposure or block the fd_renumber API.
  • Monitor host file‑descriptor usage and enforce limits or alert when the count approaches exhaustion thresholds.

Generated by OpenCVE AI on July 21, 2026 at 13:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 08 Jul 2026 12:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

threat_severity

Low


Thu, 02 Jul 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 02 Jul 2026 04:15:00 +0000

Type Values Removed Values Added
First Time appeared Bytecodealliance
Bytecodealliance wasmtime
Vendors & Products Bytecodealliance
Bytecodealliance wasmtime

Wed, 01 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Description Wasmtime is a runtime for WebAssembly. All versions prior to 24.0.10; versions 25.0.0 through those before 36.0.11; versions 37.0.0 through those before 44.0.3; and versions 45.0.0 and 45.0.1 contain a native implementation of WASIp1 which suffers from a leak in the fd_renumber function where the file descriptor being renumbered to is not properly closed. Wasmtime's implementation erroneously only updated the table of descriptors for WASIp1 and didn't update the underlying table of descriptors used by the host. This behavior means that while fd_renumber works correctly from a guest's perspective it ends up leaking resources in the host that aren't cleaned up until the corresponding Store is destroyed. In a loop, guests can use fd_renumber to cause hosts to exhaust both resources and file descriptors. This bug only affects the native implementation of WASIp1, meaning that only runtimes which load core wasm modules and expose fd_renumber are affected. Runtimes are additionally only affected if they expose the ability to acquire a file descriptor, such as opening a file. For runtimes that deny access to files they are unaffected. This issue has been fixed in versions 24.0.10, 36.0.11, 44.0.3, and 45.0.2.
Title Wasmtime: Leak in WASIp1 `fd_renumber` implementation
Weaknesses CWE-400
CWE-772
References
Metrics cvssV4_0

{'score': 2.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:L'}


Subscriptions

Bytecodealliance Wasmtime
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-02T12:44:55.431Z

Reserved: 2026-06-15T23:23:57.714Z

Link: CVE-2026-54786

cve-icon Vulnrichment

Updated: 2026-07-02T12:44:50.878Z

cve-icon NVD

No data.

cve-icon Redhat

Severity : Low

Publid Date: 2026-07-01T20:12:35Z

Links: CVE-2026-54786 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-07-21T13:30:07Z

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-772

    Missing Release of Resource after Effective Lifetime