Junglewise Threat Intelligence

CVE-2026-47261: Bytecode Alliance Wasmtime access control bypass in wasmtime-wasi

CVE-2026-47261 · Severity: high · CVSS 7.5 · Published 2026-06-15

Technologies: wasmtime-wasi (crates.io). Vendors: crates.io.

Executive brief

Wasmtime is a runtime used to execute WebAssembly applications. A security flaw in its filesystem integration (WASI) allowed applications to bypass read-only restrictions and truncate (clear) files they should not have permission to modify. This could lead to unauthorized data loss or corruption in environments where Wasmtime is embedded with specific security configurations.

Technical details

An improper access control vulnerability exists in the wasmtime-wasi crate due to a logic error in the filesystem implementation. When handling the OpenFlags::TRUNCATE flag in crates/wasi/src/filesystem.rs, the code failed to update the internal open_mode to include OpenMode::WRITE. This caused subsequent access control checks against FilePerms to incorrectly permit the operation even if the host had only granted read-only permissions. An attacker executing a WebAssembly module can exploit this via the wasip2 descriptor.open-at or wasip1 path_open interfaces to truncate files. The vulnerability specifically affects embeddings that combine DirPerms::MUTATE with FilePerms::READ; the standard wasmtime-cli is not affected as it defaults to full permissions. Fixes are available in versions 24.0.9, 36.0.10, and 44.0.2.

Affected products

  • Bytecode Alliance wasmtime-wasi < 24.0.9, < 36.0.10, < 44.0.2

Timeline

  • 2026-05-21: patched: Fixes released in multiple branches
  • 2026-05-21: advisory: GitHub Security Advisory published
  • 2026-06-15: disclosed: NVD publication date

References

Related threats