Wasmtime: Preemption and traps during bulk operations enable breaking internal VM state
Key facts
- Attack vector
- Network
- Privileges required
- High
- User interaction
- Passive
- Attack complexity
- High
- Attack requirements
- Present
- Impact type
- —
- Confidentiality · integrity · availability
- None · Low · Low
- Fix status
- Partial Red Hat: 2 without a fix
Attack profile from CVSS 4.0 · CNA. Fix status from CNA, GitHub and Red Hat.
Summary
Wasmtime is a runtime for WebAssembly. From 46.0.0 until 46.0.2 and 47.0.3, fuel and epoch preemption checks inside bulk operations including memory.copy, table.grow, and array.copy can expose invalid intermediate state when an embedder mutates a Store in Store::epoch_deadline_callback or continues using a Store after cancellation or a trap. A cancelled non-nullable table growth can leave null elements, linear-memory growth during memory.copy can invalidate retained raw pointers, and callback-triggered garbage collection during array.copy can invalidate GC pointers, resulting in a crash, invalid memory access, or GC heap corruption. Embeddings whose callbacks only access the host data in Store<T>, and embeddings that discard a Store after timeout or epoch deadline, are not affected. This issue is fixed in versions 46.0.2 and 47.0.3.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| bytecodealliance | wasmtime | 46.0.0 to before 46.0.2; 47.0.0 to before 47.0.3 | 46.0.2, 47.0.3 | Patch available | CNA |
| — | wasmtime (crates.io) | 46.0.0 to before 46.0.2 | 46.0.2 | Patch available | GHSA-2hw9-mc66-jc2q |
| — | wasmtime (crates.io) | 47.0.0 to before 47.0.3 | 47.0.3 | Patch available | GHSA-2hw9-mc66-jc2q |
- wasmtime Vendorbytecodealliance Affected 46.0.0 to before 46.0.2; 47.0.0 to before 47.0.3 Fixed in 46.0.2, 47.0.3 Patch available CNA
- wasmtime (crates.io) Vendor— Affected 46.0.0 to before 46.0.2 Fixed in 46.0.2 Patch available GHSA-2hw9-mc66-jc2q
- wasmtime (crates.io) Vendor— Affected 47.0.0 to before 47.0.3 Fixed in 47.0.3 Patch available GHSA-2hw9-mc66-jc2q
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:bytecodealliance:wasmtime:*:*:*:*:*:*:*:* | — | — | bytecodealliance |
- cpe:2.3:a:bytecodealliance:wasmtime:*:*:*:*:*:*:*:* Versions — — ·bytecodealliance
Remediation
- Fix · CNA wasmtime (bytecodealliance) Fixed in 46.0.2, 47.0.3
- Fix · GHSA-2hw9-mc66-jc2q wasmtime (crates.io) Fixed in 46.0.2 Advisory →
- Fix · GHSA-2hw9-mc66-jc2q wasmtime (crates.io) Fixed in 47.0.3 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Connectivity Link 1 | Affected | No fix yet: Fix deferred |
| Red Hat Enterprise Linux 10 | Affected | No fix yet: Fix deferred |
Not affected: 1 product
- Red Hat Hardened Images
Timeline
- 2026-10-02 Threatist record created from CVE-2026-104855
- 2026-10-03 Alias added: GHSA-2hw9-mc66-jc2q
- 2026-10-06 CISA SSVC decision points changed
References
Other 11
- https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-2hw9-mc66-jc2q
- https://github.com/bytecodealliance/wasmtime/pull/14041
- https://github.com/bytecodealliance/wasmtime/pull/14043
- https://github.com/bytecodealliance/wasmtime/pull/14045
- https://github.com/bytecodealliance/wasmtime/commit/3ebfbe5af4927c157d6fcaca42b8dbb6d17b73fb
- https://github.com/bytecodealliance/wasmtime/commit/99b0bc39d447317a4102c056081c83a9a84a46e0
- https://github.com/bytecodealliance/wasmtime/commit/a3eb27af01ba5a30320a90ea1405059cdfedd353
- https://github.com/bytecodealliance/wasmtime/releases/tag/v46.0.2
- https://github.com/bytecodealliance/wasmtime/releases/tag/v47.0.3
- https://github.com/bytecodealliance/wasmtime
- https://rustsec.org/advisories/RUSTSEC-2026-0223.html
More bytecodealliance vulnerabilities
- TI-2026-85541 WAMR fast interpreter loader heap overflow via constant deduplication mismatch CVSS 4.0HIGH 8.8
- TI-2024-16741 An issue in bytecodealliance wasm-micro-runtime before v.b3f728c and fixed in commit… CVSS 3.1HIGH 8.8
- TI-2024-22658 An out-of-bound memory read vulnerability was discovered in Bytecode Alliance… CVSS 3.1HIGH 7.5
- TI-2024-18300 wasm-micro-runtime (aka WebAssembly Micro Runtime or WAMR) 06df58f is vulnerable to NULL… CVSS 3.1HIGH 7.5
- TI-2023-26034 An heap overflow vulnerability was discovered in Bytecode alliance wasm-micro-runtime… CVSS 3.1HIGH 7.5
- TI-2025-33969 WebAssembly Micro Runtime's `--addr-pool` option allows all IPv4 addresses when subnet mask is not specified CVSS 4.0MEDIUM 6.9
Sources
- CVE-2026-104855 · CVE Program
- CVE-2026-104855 · NVD
- FIRST EPSS
- GHSA-2hw9-mc66-jc2q · GitHub Advisory Database · CC BY 4.0
- CVE-2026-104855 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences