CVE-2026-32687 in postgrex
Zusammenfassung
von VulDB • 12.05.2026
Unzulässige Handhabung von speziellen Elementen, die in einem SQL-Befehl verwendet werden ('SQL Injection')-Schwachstelle in elixir-ecto postgrex ('Elixir.Postgrex.Notifications'-Modul) ermöglicht SQL-Injection.
Das an 'Elixir.Postgrex.Notifications':listen/3 und 'Elixir.Postgrex.Notifications':unlisten/3 übergebene Kanalargument wird direkt in die SQL-Anweisungen LISTEN "..." / UNLISTEN "..." interpoliert, ohne das " Zeichen zu escapen. Ein Angreifer, der den Kanalnamen beeinflussen kann, kann ein " injizieren, um aus dem zitierten Bezeichner auszubrechen und beliebige SQL-Anweisungen anzuhängen. Da die Benachrichtigungsverbindung das PostgreSQL Simple Query Protocol verwendet, werden Multi-Statement-Payloads akzeptiert, was es ermöglicht, DDL- und DML-Befehle zu verketten (z. B. ; DROP TABLE ...; --). Dieselbe ungesäuberte Interpolation tritt auch in handle_connect/1 auf, wenn LISTEN-Befehle nach einer erneuten Verbindung wiederholt werden.
Diese Schwachstelle ist mit der Programmdatei lib/postgrex/notifications.ex und den Programm Routinen 'Elixir.Postgrex.Notifications':listen/3, 'Elixir.Postgrex.Notifications':unlisten/3, 'Elixir.Postgrex.Notifications':handle_connect/1 verbunden.
Dieses Problem betrifft postgrex: ab 0.16.0 vor 0.22.2, ab pkg:github/elixir-ecto/postgrex@266b530faf9bde094e31e0e4ab851f933fadc0f5 vor 0.22.2.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.