Description
Wasmtime is a runtime for WebAssembly. Prior to versions 24.0.6, 36.0.6, 4.0.04, 41.0.4, and 42.0.0, Wasmtime's implementation of the `wasi:http/types.fields` resource is susceptible to panics when too many fields are added to the set of headers. Wasmtime's implementation in the `wasmtime-wasi-http` crate is backed by a data structure which panics when it reaches excessive capacity and this condition was not handled gracefully in Wasmtime. Panicking in a WASI implementation is a Denial of Service vector for embedders and is treated as a security vulnerability in Wasmtime. Wasmtime 24.0.6, 36.0.6, 40.0.4, 41.0.4, and 42.0.0 patch this vulnerability and return a trap to the guest instead of panicking. There are no known workarounds at this time. Embedders are encouraged to update to a patched version of Wasmtime.
Problem types
CWE-770: Allocation of Resources Without Limits or Throttling
Product status
>= 25.0.0, < 36.0.6
>= 37.0.0, < 40.0.4
>= 41.0.0, < 41.0.4
References
github.com/...smtime/security/advisories/GHSA-243v-98vx-264h
github.com/...ommit/301dc7162cca51def19131019af1187f45901c0a
docs.rs/http/1.4.0/http/header/
github.com/bytecodealliance/wasmtime/releases/tag/v24.0.6
github.com/bytecodealliance/wasmtime/releases/tag/v36.0.6
github.com/bytecodealliance/wasmtime/releases/tag/v40.0.4
github.com/bytecodealliance/wasmtime/releases/tag/v41.0.4