CVE Catalog

CVE-2026-32689

High
Published: Translated: NVD NIST

Summary

A vulnerability in the Phoenix framework allows for a denial of service attack through unbounded processing of NDJSON request bodies in long-poll transport. An attacker can send a body consisting entirely of newline bytes, leading to BEAM memory exhaustion and node crashes.

Risk Assessment

The organization may experience service outages, leading to disruptions in application functionality and loss of active user sessions. Potential resource exhaustion on the server may also impact other services running on the same node.

Recommendation

It is recommended to limit the number of segments processed in the request body and implement throttling mechanisms to prevent denial of service attacks. Additionally, monitoring and restricting access to sensitive endpoints should be considered.

Related vulnerabilities

Original NVD description (English source)

Allocation of Resources Without Limits or Throttling vulnerability in phoenixframework phoenix allows a denial of service via the long-poll transport's NDJSON body handling. In 'Elixir.Phoenix.Transports.LongPoll':publish/4, when a POST request is received with Content-Type: application/x-ndjson, the request body is split on newline characters using String.split/2 with no limit on the number of resulting segments. An attacker can send a body consisting entirely of newline bytes, causing a 1:1 amplification into a list of empty binaries — a 1 MB body produces approximately one million list elements, an 8 MB body approximately 8.4 million. Each element is then walked by Enum.map, materializing another list of the same size. This exhausts BEAM memory and schedulers, crashing the node and terminating all active sessions. A session token required to reach the vulnerable endpoint is freely obtainable by any client via an unauthenticated GET request to the same URL with a matching Origin he

Vulnerability data from NVD (NIST) · CISA KEV · EPSS