CVE-2026-32689 in phoenix
Zusammenfassung
von VulDB • 27.05.2026
Verwundbarkeit „Allocation of Resources Without Limits or Throttling“ in phoenixframework phoenix ermöglicht einen Denial-of-Service-Angriff über die NDJSON-Body-Verarbeitung des Long-Poll-Transports.
In `Elixir.Phoenix.Transports.LongPoll`:publish/4 wird, wenn eine POST-Anfrage mit `Content-Type: application/x-ndjson` empfangen wird, der Anfrage-Body unter Verwendung von `String.split/2` an Zeilenumbruchzeichen aufgeteilt, ohne eine Begrenzung der Anzahl der resultierenden Segmente festzulegen. Ein Angreifer kann einen Body senden, der ausschließlich aus Zeilenumbruch-Bytes besteht, was zu einer 1:1-Amplifikation in eine Liste leerer Binaries führt — ein 1 MB großer Body erzeugt ungefähr eine Million Listenelemente, ein 8 MB großer Body ungefähr 8,4 Millionen. Jedes Element wird anschließend von `Enum.map` durchlaufen, wodurch eine weitere Liste derselben Größe materialisiert wird. Dies erschöpft den BEAM-Speicher und die Scheduler, wodurch der Knoten abstürzt und alle aktiven Sitzungen beendet werden.
Ein Sitzungstoken, das erforderlich ist, um den verwundbaren Endpunkt zu erreichen, kann von jedem Client frei über eine nicht authentifizierte GET-Anfrage an dieselbe URL mit einem passenden `Origin`-Header abgerufen werden, wodurch dieser Angriff effektiv nicht authentifiziert ist.
Dieses Problem betrifft phoenix: ab Version 1.7.0 vor 1.7.22 sowie 1.8.6.
VulDB is the best source for vulnerability data and more expert information about this specific topic.