GitHub Advisoryadvisory · crates.io
GHSA-mghf-wjfp-p5xm Wasmtime: Cranelift backend on aarch64 can jump to incorrect target on large Wasm `br_table` instruction
CRITICAL
Official page ↗
- Aliases
- CVE-2026-115893
- Ecosystem
- crates.io
- Packages
- wasmtime
- Severity
- Critical
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
- Weaknesses
- CWE-691
- Reviewed
- 2026-10-28
Affected packages
• crates.io wasmtime: < 36.0.19 → fixed in 36.0.19
• crates.io wasmtime: >= 37.0.0, < 48.0.7 → fixed in 48.0.7
• crates.io wasmtime: >= 49.0.0, < 49.0.4 → fixed in 49.0.4
Description
Summary
When running with the Cranelift compiler backend on an aarch64 target, Wasmtime can compile a Wasm module with more than ~256k targets on one `br_table` instruction in a way that results in an incorrect conditional branch target. This conditional branch could then jump to arbitrary other code (at an user-controlled offset), leading to arbitrary sandbox escapes.
Impact
Any Wasmtime engine running on aarch64 with default settings can be forced to jump to arbitrary code by a user-controlled Wasm module. All versions of Wasmtime/Cranelift that support aarch64, since the initial release of that support in 2020 (before Wasmtime v1.0), are affected.
Patches
Wasmtime v36.0.19, v48.0.7, and v49.0.4 have been released which all fix this issue.
Related
Alias · CVE (1)
- CVE-2026-115893 Wasmtime is a runtime for WebAssembly. vulnerability
Weakness · CWE (1)
- CWE-691 Insufficient Control Flow Management weakness
References
- https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-mghf-wjfp-p5xm web
- https://nvd.nist.gov/vuln/detail/CVE-2026-115893 advisory
- https://github.com/bytecodealliance/wasmtime/pull/14818 web
- https://github.com/bytecodealliance/wasmtime/pull/14819 web
- https://github.com/bytecodealliance/wasmtime/pull/14820 web
- https://github.com/bytecodealliance/wasmtime/pull/14826 web
- https://github.com/bytecodealliance/wasmtime/commit/222ff3a65dab9aa7011f8c246937751a0bac5abd web
- https://github.com/bytecodealliance/wasmtime/commit/994549891c8a706cb4f2809f9d17b9f67b31e618 web
- https://github.com/bytecodealliance/wasmtime/commit/e61df1b454be9313d61a5f8de07722a421139bbe web
- https://github.com/bytecodealliance/wasmtime/commit/f517bd6e890c7c1291ab9fe05d8cc0c9f11e56aa web
- https://github.com/bytecodealliance/wasmtime package
- https://github.com/bytecodealliance/wasmtime/releases/tag/v36.0.19 web
- https://github.com/bytecodealliance/wasmtime/releases/tag/v48.0.7 web
- https://github.com/bytecodealliance/wasmtime/releases/tag/v49.0.4 web
- https://rustsec.org/advisories/RUSTSEC-2026-0379.html web