CVE-2026-115893
CVE-2026-115893 · Wasmtime: Cranelift backend on aarch64 can jump to incorrect target on large Wasm `br_table` instruction
This page contains facts from public vulnerability sources. Check the original advisory before updating.
Wasmtime is a runtime for WebAssembly. Prior to 36.0.19, 48.0.7, and 49.0.4, the Cranelift compiler backend on aarch64 can compile a Wasm br_table instruction with more than approximately 256,000 targets so that it has an incorrect conditional branch target. The branch can then jump to arbitrary other code at a user-controlled offset, allowing a user-controlled Wasm module to escape the sandbox on aarch64 engines using the default Cranelift backend. This issue is fixed in versions 36.0.19, 48.0.7, and 49.0.4.
CVSS 9.9 · Critical · EPSS 0.4% · Public exploit
- Published
- Updated
Stack: system
Affected products and versions
wasmtime
- Versions
- < 36.0.19: Affected
- >= 37.0.0, < 48.0.7: Affected
- >= 49.0.0, < 49.0.4: Affected
No fix published
rust-wasmtime Debian:13
- Versions
- 26.0.1+dfsg-10
- 26.0.1+dfsg-3
- 26.0.1+dfsg-4
- 26.0.1+dfsg-5
- 26.0.1+dfsg-6
- 26.0.1+dfsg-7
- 26.0.1+dfsg-8
- 26.0.1+dfsg-9
- 27.0.0+dfsg-2
- 27.0.0+dfsg-3
- 27.0.0+dfsg-4
- 28.0.1+dfsg-1
- 28.0.1+dfsg-2
- 28.0.1+dfsg-3
- 29.0.1+dfsg-1
- 29.0.1+dfsg-2
- 29.0.1+dfsg-3
- 29.0.1+dfsg-4
- 29.0.1+dfsg-5
- 29.0.1+dfsg-6
- 29.0.1+dfsg-7
- 29.0.1+dfsg-8
- 36.0.11+dfsg-1
- 36.0.12+dfsg-1
- 36.0.12+dfsg-2
- 36.0.12+dfsg-3
- 36.0.13+dfsg-1
- 36.0.5+dfsg-1
- 36.0.5+dfsg-2
- 36.0.5+dfsg-3
- 36.0.5+dfsg-4
- 36.0.5+dfsg-5
- 36.0.6+dfsg-1
- 36.0.6+dfsg-2
- 36.0.6+dfsg-3
- 36.0.6+dfsg-4
- 36.0.6+dfsg-5
- 36.0.6+dfsg-6
- 36.0.6+dfsg-7
- 36.0.7+dfsg-1
- 36.0.8+dfsg-1
- 36.0.9+dfsg-1
- 36.0.9+dfsg-2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
rust-wasmtime Debian:14
- Versions
- 26.0.1+dfsg-10
- 26.0.1+dfsg-3
- 26.0.1+dfsg-4
- 26.0.1+dfsg-5
- 26.0.1+dfsg-6
- 26.0.1+dfsg-7
- 26.0.1+dfsg-8
- 26.0.1+dfsg-9
- 27.0.0+dfsg-2
- 27.0.0+dfsg-3
- 27.0.0+dfsg-4
- 28.0.1+dfsg-1
- 28.0.1+dfsg-2
- 28.0.1+dfsg-3
- 29.0.1+dfsg-1
- 29.0.1+dfsg-2
- 29.0.1+dfsg-3
- 29.0.1+dfsg-4
- 29.0.1+dfsg-5
- 29.0.1+dfsg-6
- 29.0.1+dfsg-7
- 29.0.1+dfsg-8
- 36.0.11+dfsg-1
- 36.0.12+dfsg-1
- 36.0.12+dfsg-2
- 36.0.12+dfsg-3
- 36.0.13+dfsg-1
- 36.0.5+dfsg-1
- 36.0.5+dfsg-2
- 36.0.5+dfsg-3
- 36.0.5+dfsg-4
- 36.0.5+dfsg-5
- 36.0.6+dfsg-1
- 36.0.6+dfsg-2
- 36.0.6+dfsg-3
- 36.0.6+dfsg-4
- 36.0.6+dfsg-5
- 36.0.6+dfsg-6
- 36.0.6+dfsg-7
- 36.0.7+dfsg-1
- 36.0.8+dfsg-1
- 36.0.9+dfsg-1
- 36.0.9+dfsg-2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
rust-wasmtime Ubuntu:24.04:LTS
- Versions
- 10.0.1+dfsg-7
- 15.0.1+dfsg-4
- 16.0.0+dfsg-2
- 16.0.0+dfsg-3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
rust-wasmtime Ubuntu:26.10
- Versions
- 36.0.5+dfsg-1
- 36.0.13+dfsg-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
rust-wasmtime Ubuntu:26.04:LTS
- Versions
- 26.0.1+dfsg-3
- 26.0.1+dfsg-4
- 28.0.1+dfsg-3
- 29.0.1+dfsg-5
- 36.0.5+dfsg-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
Original sources
- https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-mghf-wjfp-p5xm
- https://github.com/bytecodealliance/wasmtime/pull/14818
- https://github.com/bytecodealliance/wasmtime/pull/14819
- https://github.com/bytecodealliance/wasmtime/pull/14820
- https://github.com/bytecodealliance/wasmtime/pull/14826
- https://github.com/bytecodealliance/wasmtime/commit/222ff3a65dab9aa7011f8c246937751a0bac5abd
- https://github.com/bytecodealliance/wasmtime/commit/994549891c8a706cb4f2809f9d17b9f67b31e618
- https://github.com/bytecodealliance/wasmtime/commit/e61df1b454be9313d61a5f8de07722a421139bbe
- https://github.com/bytecodealliance/wasmtime/commit/f517bd6e890c7c1291ab9fe05d8cc0c9f11e56aa
- https://github.com/bytecodealliance/wasmtime/releases/tag/v36.0.19
- https://github.com/bytecodealliance/wasmtime/releases/tag/v48.0.7
- https://github.com/bytecodealliance/wasmtime/releases/tag/v49.0.4
- https://nvd.nist.gov/vuln/detail/CVE-2026-115893