# CVE-2026-119131: Wasmtime denial of service in wasmtime-wasi-http

Source: https://junglewise.ai/threats/cve-2026-119131-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-29. Updated: 2026-10-29  
License: CC BY 4.0 with a link back

CVE-2026-119131 · Severity: medium · CVSS 5.3 · Published 2026-10-29

Wasmtime is a WebAssembly runtime used to execute untrusted WebAssembly code in secure, isolated environments. A guest WebAssembly module can crash the host runtime by submitting HTTP requests with specially crafted URLs containing a query parameter marker after byte 65535, causing an integer overflow that triggers a panic. This could be exploited to deny service to applications relying on Wasmtime for executing guest code.

Technologies: [Bytecode Alliance Wasmtime](https://junglewise.ai/threats/technologies/bytecode-alliance-wasmtime). Vendors: [Bytecode Alliance](https://junglewise.ai/threats/vendors/bytecode-alliance).

## Quick answers

**Is CVE-2026-119131 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-119131 being exploited in the wild.

**How severe is CVE-2026-119131?** Medium severity, with a CVSS score of 5.3, published 29 October 2026.

**Which products and versions are affected?** Bytecode Alliance Wasmtime 46.0.0 before 48.0.6, 49.0.0 before 49.0.3.

**Is there a fix for CVE-2026-119131?** Yes: fixed in Wasmtime 48.0.6, 49.0.3. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-119131 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-119131?** Check whether you run Bytecode Alliance Wasmtime at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- Fixed in Wasmtime 48.0.6, 49.0.3

## Technical details

The vulnerability exists in wasmtime-wasi-http's dependency on the http crate, which stores the byte index of the '?' query parameter delimiter as a u16. When the '?' appears after byte 65535, the index wraps around, leading to an invalid character offset and causing a panic in the http crate when it attempts to split the URL string. A guest module can trigger this via the set-path-with-query WASI call with a URL of any length, resulting in a host panic without requiring any privileges or user interaction.

## Affected products

- Bytecode Alliance Wasmtime 46.0.0 before 48.0.6, 49.0.0 before 49.0.3

## Timeline

- 2026-10-14: disclosed: GitHub Security Advisory GHSA-w36r-2hch-9xp9 published
- 2026-10-29: advisory: CVE-2026-119131 published

## References

- [https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-w36r-2hch-9xp9](https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-w36r-2hch-9xp9)
- [https://www.vulncheck.com/advisories/wasmtime-46.0.0-before-48.0.6-and-49.0.0-before-49.0.3-host-panic-via-wasi-http](https://www.vulncheck.com/advisories/wasmtime-46.0.0-before-48.0.6-and-49.0.0-before-49.0.3-host-panic-via-wasi-http)

## Related threats

- [Wasmtime wasi-http response splitting via unvalidated headers](https://junglewise.ai/threats/cve-2026-121439-wasmtime-46-0-0-before-48-0-7-and-49-0-0-before-49-0-4-contains)
- [Wasmtime denial of service in component model stream operations](https://junglewise.ai/threats/cve-2026-119143-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
- [Wasmtime host panic in call_async Future drop](https://junglewise.ai/threats/cve-2026-119142-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
- [Wasmtime denial of service in realloc handling](https://junglewise.ai/threats/cve-2026-119141-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
- [Wasmtime denial of service via thread.yield in component start](https://junglewise.ai/threats/cve-2026-119140-wasmtime-46-0-0-before-48-0-6-and-49-0-0-before-49-0-3-contains)
