Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSupply malicious guest module
-
DeliveryHost grants sandboxed directory access
-
ExploitCraft symlink path with trailing slash
-
Executioncap-std resolves target outside sandbox
-
ImpactRead/write arbitrary host files
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling UNIX symlink resolution
|
| Exploitation Conditions | Exploitation requires the host to run wasmtime-wasi on macOS OR on a Linux kernel without the openat2 syscall (pre-5.6 or openat2 otherwise unavailable); Linux 5.6+ with openat2 fully mitigates because cap-std then uses the RESOLVE_BENEATH flag. The attacker must control a guest WebAssembly module that the host has granted a sandboxed directory: write access to any sandboxed directory yields full arbitrary host read/write, while read-only access yields host file disclosure only when exploitable symlinks already exist in that directory. The trigger is a symlink/path with a trailing slash that cap-std mishandles. Limiting factors: modern Linux (openat2) is immune, the read-only escape depends on preexisting symlinks, and the guest must be untrusted/attacker-controlled - so deployments running only trusted guests are not practically exposed. |
| Impact | This is a genuine high-priority sandbox escape (CVSS 4.0 base 8.8), not an inflated score. The flaw defeats wasmtime-wasi's core security guarantee - filesystem isolation of untrusted guests - letting a write-capable guest read and write any host-accessible file (CWE-61 symlink following), and letting read-only guests read host files through preexisting symlinks. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:P with VC:H/VI:H and SC:H/SI:H) correctly models a scope-changing guest-to-host compromise. The signals are mostly aligned toward real-but-not-emergency risk: vuln.today assigns the 'this_week' decision label, there is no CISA KEV listing (not confirmed as actively exploited), no EPSS score was provided, and no working PoC exploit code is referenced - only the GHSA and VulnCheck advisories describing the mechanism. Two caveats materially shape real-world risk. First, attack vector: AV:N is reasonable for the canonical Wasmtime use case (edge/serverless running remotely-supplied untrusted Wasm), but in embedded deployments where guests are trusted or locally supplied the practical vector is local and risk drops. Second, AT:P reflects a hard platform limit - Linux 5.6+ kernels with the openat2 syscall are NOT affected because cap-std uses RESOLVE_BENEATH; exposure is confined to macOS hosts and older/openat2-less Linux. Net: treat as urgent where untrusted guests run on macOS or pre-openat2 Linux; de-prioritize where guests are trusted or hosts run modern Linux. |
| Exploit ScenarioDerived | An edge or serverless platform executes untrusted WebAssembly guests via wasmtime-wasi on macOS or an older Linux kernel lacking openat2. A malicious guest granted write access to its sandboxed directory creates or follows a symlink with a trailing slash to escape the sandbox and read/write any file the host process can access; a read-only guest may read host files through symlinks already present in its directory. No public exploit code is identified, but the GHSA and VulnCheck advisories detail the trailing-slash mechanism. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 22, 2026
Filesystem sandbox escape in Wasmtime's wasmtime-wasi crate allows an untrusted WebAssembly guest that has been granted a sandboxed directory to read and write arbitrary files the host process can access. The flaw lives in the bundled cap-std dependency (CWE-61, symlink following): a path or symlink containing a trailing slash is mishandled, so a guest with write access to any sandboxed directory gains full host filesystem read/write, while a read-only guest can disclose host files only when exploitable symlinks already exist in its directory. Per the CVSS 4.0 vector the attacker needs low privileges (PR:L) and must already be running as a guest inside the affected embedding; only macOS and Linux kernels lacking openat2 (pre-5.6 or where the syscall is unavailable, e.g. blocked by seccomp) are exposed, because Linux 5.6+ hosts cause cap-std to use RESOLVE_BENEATH. No public exploit code or CISA KEV entry was identified at time of analysis; the vendor rates this a full sandbox escape and states there is no workaround other than upgrading.
RemediationAI
Vendor-released patch: Wasmtime 24.0.13, 36.0.14, 46.0.3 and 47.0.4 contain the fixed wasmtime-wasi / cap-std code; upgrade to the release matching the branch you track, or move to 48.0.0 or later, which is not affected. The vendor explicitly states there is no known workaround - updating is the only complete fix. The one environmental factor confirmed by the advisory is that the escape is not exploitable on Linux kernels after 5.6 with the openat2 syscall working, because cap-std then takes the RESOLVE_BENEATH path; therefore keeping hosts on openat2-capable kernels and ensuring seccomp/container profiles do not block openat2 removes the vulnerable fallback, with the trade-off that this is a host-platform control and does nothing for macOS or older-kernel deployments, which must patch. Because a write-capable sandbox directory converts directly into arbitrary host read/write while read-only access only yields disclosure where preexisting symlinks are present, reducing guest directory mounts to read-only limits the worst outcome but does not remove exposure. Patched builds should be verified by confirming the wasmtime-wasi/cap-std versions in the dependency tree, not only the top-level wasmtime crate version. Upstream advisories for tracking: https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-vqjp-4c8c-hfgg and https://github.com/bytecodealliance/cap-std/security/advisories/GHSA-hp8f-xmx4-4qrg.
Affected VersionsENISA
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 implements WASI filesystem sandboxing primarily through the cap-std family of crates, which resolve guest-supplied paths relative to a capability directory. The root cause is a flaw in cap-std (tracked separately as GHSA-hp8f-xmx4-4qrg) where symlink resolution mishandles a trailing slash, allowing a crafted path to step outside the capability root - the classic CWE-61 UNIX symbolic link following pattern, aggravated here because the sandbox boundary is the entire security model for hostile guests. On Linux kernels after 5.6 that provide the openat2 syscall, cap-std uses the RESOLVE_BENEATH resolution flag, which is not affected by the bug; macOS and older Linux kernels, or environments where openat2 is unavailable (for example blocked by a container seccomp profile), take the vulnerable fallback path and are fully exposed. The impact spans the guest/host boundary, so both vulnerable-component (SC) and downstream integrity/confidentiality metrics are high in the published vector. Affected code ships in the wasmtime-wasi crate across the 24.x, 25.x-36.x, 37.x-46.x and 47.x release lines; 48.0.0 and later are not affected.
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
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:P/VC:H/VI:H/VA:L/SC:H/SI:H/SA:L
Guest is granted sandboxed directory access (PR:L) and triggers the escape itself (UI:N); crossing guest-to-host isolation is a scope change (S:C) giving arbitrary host read/write; AV:N assumes remotely-supplied guests, else AV:L.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
Lifecycle Timeline
2DescriptionCVE.org
Wasmtime before 24.0.13, 25.0.0 before 36.0.14, 37.0.0 before 46.0.3, and 47.0.0 before 47.0.4 allows a filesystem sandbox escape in wasmtime-wasi because its cap-std dependency mishandles symlinks with trailing slashes on macOS and Linux kernels lacking openat2. A guest with write access to any sandboxed directory can read and write any host-accessible file, and read-only guests may read host files via preexisting symlinks.
Technical POC Analysis
CVE-2026-115392 is CWE-61, UNIX Symbolic Link Following.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
CVE-2026-115392 is a high-severity sandbox escape in Wasmtime's wasmtime-wasi crate that enables a malicious WebAssembly guest to break out of its filesystem sandbox and access arbitrary host files. This threatens any product or service that runs untrusted Wasm code, potentially exposing sensitive host data and undermining the isolation that Wasmtime is trusted to provide. Leadership should prioritize patching or mitigating affected embeddings because a successful exploit could lead to data breaches or system compromise.
No vendor-released patch identified at time of analysis. Interim mitigations include: run Wasmtime on Linux kernel 5.6 or later with openat2 enabled; avoid granting write access to sandboxed directories for untrusted guests; for read-only guests, ensure no exploitable symlinks exist in the sandboxed directory; and consider disabling untrusted Wasm execution until a patch is available.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
EUVD-2026-108326
GHSA-gxhv-gf3j-vwqc
NVD
CVE.org
EPSS
Exploit-DB