Description
Wasmtime 46.0.0 before 48.0.6 and 49.0.0 before 49.0.3 panics when the host reads a component model stream as a different Rust item type than it was created with, because the host-to-host read path asserts matching TypeIds instead of returning an error. Guest code can return a host-created StreamReader<U> that the embedder reads as StreamReader<T>, where both types map to the same component model type, crashing the embedding process.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| bytecodealliance | wasmtime | 46.0.0 – < 48.0.6, 49.0.0 – < 49.0.3 | 48.0.6 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | rust-wasmtime | No fix yet | — |
| Ubuntu 26.04 LTS | rust-wasmtime | No fix yet | — |
| Ubuntu 24.04 LTS | rust-wasmtime | No fix yet | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| crates.io | wasmtime | >= 46.0.0, < 48.0.6 · >= 49.0.0, < 49.0.3 | 48.0.6, 49.0.3 | RUSTSEC-2026-0355 |