CVE-2026-27195
Panic Vulnerability in Wasmtime Async Component Calls
Publication date: 2026-02-24
Last updated on: 2026-02-25
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| bytecodealliance | wasmtime | From 41.0.0 (inc) to 41.0.4 (exc) |
| bytecodealliance | wasmtime | From 39.0.0 (inc) to 40.0.4 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-755 | The product does not handle or incorrectly handles an exceptional condition. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in Wasmtime, a runtime for WebAssembly, specifically when using the component-model-async feature enabled by default starting from version 39.0.0. The issue arises when the host embedding calls an asynchronous function exported by a component using [Typed]Func::call_async, polls the returned Future once, then drops it without waiting for completion. If the component yields control to the async runtime during this call and the Future is dropped prematurely, the component instance enters a non-reenterable state. Subsequent calls to call_async on the same instance cause a trap and eventually lead to a panic due to improper disposal of tasks and threads created during the call.
This bug can cause Wasmtime to panic when the host embedding ignores the trap and drops the Future again. The problem affects versions 39.0.0 through 40.0.3 and 41.0.3, with patches applied in versions 40.0.4 and 41.0.4. Versions 42.0.0 and later are not affected. Workarounds include disabling the component-model-async feature or ensuring every call_async Future is awaited until completion.
How can this vulnerability impact me? :
This vulnerability can cause the Wasmtime runtime to panic unexpectedly when asynchronous guest export functions are called and their Futures are dropped prematurely. This panic can disrupt the normal operation of applications embedding Wasmtime, potentially leading to crashes or denial of service conditions.
If your application relies on Wasmtime with the component-model-async feature enabled and does not properly await asynchronous calls, it may experience instability or unexpected termination, impacting reliability and availability.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
I don't know
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, you should upgrade Wasmtime to version 40.0.4, 41.0.4, or later versions such as 42.0.0 and beyond, which have the issue fixed.
If upgrading is not immediately possible, you can work around the issue by disabling the `component-model-async` Cargo feature if your embedding does not use any component-model-async features.
Alternatively, ensure that every `call_async` future is awaited until it completes, or avoid using the Store again after dropping a not-yet-resolved `call_async` future.