COWBOY · CVE-2026-115701 · Package
NO FIX YET · SEE WHAT TO DO
While a request handler is still running, Cowboy keeps appending every byte a client sends on a keep-alive HTTP/1.1 connection to an unlimited buffer. A remote, unauthenticated attacker using a few connections can drive the Erlang VM into out-of-memory conditions.
first public Nov 6, 2026 · 2 sources
Check it with your coding agent
It checks your repository and tells you if you’re affected, with the fix.
Erlang and Elixir apps (including Phoenix via the cowboy adapter) running cowboy 2.18.0 or later and serving HTTP/1.1 directly to clients. Any endpoint is exposed for as long as its handler runs; long polling, streamed responses and slow backend calls give an attacker time to buffer memory. HTTP/2-only listeners and apps on cowboy 2.17.0 or earlier can skip it.
Not affected if cowboy-below-2.18.0, http2-only, short-handlers-only
Who cares cowboy, elixir, erlang, http-server
2.17.0 or earlier (not affected per advisory)Allocation of Resources Without Limits or Throttling vulnerability in ninenines cowboy allows an unauthenticated remote attacker to exhaust connection process memory over HTTP/1.1.
Once a request has been received in full and its handler is still running, cowboy_http:parse/2 in src/cowboy_http.erl appends every further byte that arrives on the keep-alive connection to the connection buffer and returns to the receive loop without parsing it. The socket stays in active mode and no limit applies to this buffer: max_request_line_length, max_headers and the other parser limits only take effect once the handler returns and parsing resumes, and the only timer in this state is idle_timeout (default 60 seconds), which is reset on every received chunk. A client can therefore send an arbitrary amount of data on one connection for as long as the handler runs, and a few connections to an endpoint that holds requests open can drive the Erlang VM into out-of-memory conditions.
This issue affects cowboy: from 2.18.0 onward.
Are you affected?
Tell InfraStack what you run. It checks this one, and every next one, against your stack.
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
This page as .md · .json · CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.