# CVE-2026-115388: Wasmtime wasmtime-wasi-http memory exhaustion in HTTP body write

Source: https://junglewise.ai/threats/cve-2026-115388-wasmtime-wasi-http-in-wasmtime-before-36-0-16-37-0-0-before-48-0  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-22. Updated: 2026-10-22  
License: CC BY 4.0 with a link back

CVE-2026-115388 · Severity: medium · CVSS 6.2 · Published 2026-10-22

Wasmtime is a WebAssembly runtime that executes untrusted code with controlled system access. The wasmtime-wasi-http module fails to enforce limits on HTTP response body writes, allowing a malicious WebAssembly guest to exhaust host server memory and cause a denial of service. An attacker only needs to craft malicious WebAssembly code and get it executed by a Wasmtime instance.

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-115388 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-115388 being exploited in the wild.

**How severe is CVE-2026-115388?** Medium severity, with a CVSS score of 6.2, published 22 October 2026.

**Which products and versions are affected?** Bytecode Alliance Wasmtime before 36.0.16, 37.0.0 through 48.0.2, 49.0.0.

**Is there a fix for CVE-2026-115388?** Yes: fixed in 36.0.16, 48.0.3, 49.0.1. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-115388 attacked?** It is attacked with local access.

**Am I affected by CVE-2026-115388?** 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 36.0.16, 48.0.3, 49.0.1

## Technical details

The wasmtime-wasi-http component does not enforce the wasi:io/streams check-write allowance for WASIp2 outgoing HTTP body writes. A guest can call check-write to learn the permitted write size (typically 1MB), then pass a much larger buffer to write which succeeds instead of trapping as required by the spec. Each outgoing-body resource can hold a host memory allocation for the store's lifetime, enabling guest-driven memory exhaustion with no privilege requirements and local attack vector.

## Affected products

- Bytecode Alliance Wasmtime before 36.0.16, 37.0.0 through 48.0.2, 49.0.0

## Timeline

- 2026-09-24: disclosed
- 2026-10-22: advisory

## References

- [https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-c9gc-w9vx-w86p](https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-c9gc-w9vx-w86p)
- [https://www.vulncheck.com/advisories/wasmtime-before-36.0.16-37.0.0-before-48.0.3-and-49.0.0-before-49.0.1-memory-exhaustion-dos-via-wasmtime-wasi-http-outgoing-body-write](https://www.vulncheck.com/advisories/wasmtime-before-36.0.16-37.0.0-before-48.0.3-and-49.0.0-before-49.0.1-memory-exhaustion-dos-via-wasmtime-wasi-http-outgoing-body-write)

## 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)
