
Loading

Loading
We use strictly necessary cookies to run this site, and analytics cookies to understand how it's used. See our Privacy Policy for details.
A GitHub-reviewed security advisory, not necessarily under active exploitation the way our CISA KEV advisories are, but a real, disclosed vulnerability in an open-source dependency.
Affected packages
Vulnerable: >= 46.0.0, < 48.0.7
Patched in 48.0.7
Vulnerable: >= 49.0.0, < 49.0.4
Patched in 49.0.4
Details
Wasmtime may panic when the host lowers a component model stream or future into a guest, if the host created that stream or future with one payload type and the guest expects a different one. This can happen when an embedder creates a stream or future, passes it through a guest, receives it back under a type-erased type such as StreamAny or FutureAny, and then passes it to a guest function with a different payload type.
GHSA-63h4-6cx9-pjfj is a related advisory also fixing issues within this area, and this advisory is being issued for portions of Wasmtime that were not fixed as part of that advisory.
This affects embedders that do all of the following:
StreamReader::new or FutureReader::newStreamAny, FutureAny, Val::Stream/Val::Future, or a typed reader whose payload is one of these.stream or future payload type differs from the type the host created them with.A guest can cause the mismatch in step 3 when it controls the types of the functions it exports or of the values it returns. In that case a malicious guest can make the host panic, a denial of service. Embedders that only use statically typed StreamReader<T>/FutureReader<T> with concrete payload types throughout, or that never pass streams or futures they created through a guest and back, are not affected.
Talk to us about this
Find out whether this dependency (or others like it) is actually reachable in your codebase.
Get help patching, or building dependency-scanning into your pipeline going forward.
A secure code review or supply chain review finds this before an advisory does.