wasmtime is vulnerable to Use of Uninitialized Resource
20
CVE Score
Low
Use of Uninitialized Resource
Wasmtime's bulk WebAssembly operations such as memory.copy, table.grow, and array.copy inject fuel and epoch preemption checks in the middle of the transfer. When an embedder mutates the Store from an epoch callback, or cancels a computation and later resumes wasm in the same store, those mid-operation checkpoints can expose inconsistent internal state: a non-nullable table left grown but still null-filled, stale linear-memory pointers used after a grow moves the buffer, or GC heap corruption after a GC during an array.copy. The fix restores earlier behavior by checking fuel once before the bulk operation and not preempting during it.
Upgrade the wasmtime library to the patch version.
You are affected if you are using a version that falls within the vulnerable range and your embedding uses Store::epoch_deadline_callback while mutating wasm state (for example growing memory), or continues executing wasm in a store after a fuel or timeout cancellation. Embeddings that only touch the host T in Store<T> during epoch callbacks, or that discard the store after a timeout, are not affected.
46.0.0 - 46.0.1
Fixed in 46.0.247.0.0 - 47.0.2
Fixed in 47.0.3wasmtime is vulnerable to Use of Uninitialized Resource in versions 46.0.0 - 46.0.1 and 47.0.0 - 47.0.2.
Secure your code, cloud, and runtime in one central system. Connect a repo to discover what the reasoning agents find in your codebase.
No credit card required | Scan results in 32 seconds.
I consent to receiving marketing communications based on Aikido’s Privacy Policy.
SOC 2Compliant
ISO 27001Compliant
ISO 42001Compliant© All Intel data is openly available and commercially licensed.