# CVE-2026-115392: Wasmtime filesystem sandbox escape via symlink trailing slashes

Source: https://junglewise.ai/threats/cve-2026-115392-wasmtime-before-24-0-13-25-0-0-before-36-0-14-37-0-0-before-46-0  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-22. Updated: 2026-10-22  
License: CC BY 4.0 with a link back

CVE-2026-115392 · Severity: high · CVSS 7.9 · Published 2026-10-22

Wasmtime is a WebAssembly runtime that sandboxes guest programs to restrict their file system access. A flaw in its symlink handling allows guests with write access to any directory to escape the sandbox and read or modify any file the host can access, and read-only guests may read host files through existing symlinks. This could enable data theft or modification by malicious WebAssembly code.

Technologies: [Bytecode Alliance Wasmtime](https://junglewise.ai/threats/technologies/bytecode-alliance-wasmtime). Vendors: [Bytecode Alliance](https://junglewise.ai/threats/vendors/bytecode-alliance).

## Quick answers

**Is CVE-2026-115392 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-115392 being exploited in the wild.

**How severe is CVE-2026-115392?** High severity, with a CVSS score of 7.9, published 22 October 2026.

**Which products and versions are affected?** Bytecode Alliance Wasmtime before 24.0.13, 25.0.0 before 36.0.14, 37.0.0 before 46.0.3, 47.0.0 before 47.0.4.

**Is there a fix for CVE-2026-115392?** Yes: fixed in Wasmtime 24.0.13, 36.0.14, 46.0.3, 47.0.4, and 48.0.0 and later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-115392 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-115392?** Check whether you run Bytecode Alliance Wasmtime at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- Fixed in Wasmtime 24.0.13, 36.0.14, 46.0.3, 47.0.4, and 48.0.0 and later

## Technical details

The vulnerability exists in wasmtime-wasi's cap-std dependency, which fails to properly validate symlinks with trailing slashes on macOS and Linux systems lacking the openat2 syscall (Linux kernel 5.6+). An attacker-controlled WebAssembly guest with filesystem sandbox access can use crafted symlink paths with trailing slashes to bypass sandbox restrictions and access arbitrary host files and directories. The vulnerability is not exploitable on modern Linux systems using openat2 with the RESOLVE_BENEATH flag.

## Affected products

- Bytecode Alliance Wasmtime before 24.0.13, 25.0.0 before 36.0.14, 37.0.0 before 46.0.3, 47.0.0 before 47.0.4

## Timeline

- 2026-08-20: disclosed
- 2026-10-22: advisory

## References

- [https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-vqjp-4c8c-hfgg](https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-vqjp-4c8c-hfgg)
- [https://www.vulncheck.com/advisories/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-sandbox-escape-via-trailing-slashes](https://www.vulncheck.com/advisories/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-sandbox-escape-via-trailing-slashes)

## Related threats

- [Wasmtime wasi-http response splitting via unvalidated headers](https://junglewise.ai/threats/cve-2026-121439-wasmtime-46-0-0-before-48-0-7-and-49-0-0-before-49-0-4-contains)
- [Wasmtime denial of service in component model stream operations](https://junglewise.ai/threats/cve-2026-119143-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
- [Wasmtime host panic in call_async Future drop](https://junglewise.ai/threats/cve-2026-119142-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
- [Wasmtime denial of service in realloc handling](https://junglewise.ai/threats/cve-2026-119141-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
- [Wasmtime denial of service via thread.yield in component start](https://junglewise.ai/threats/cve-2026-119140-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
