PgBouncer patches a critical bug that lets any SCRAM user log in as admin
Version 1.26.1 fixes an authentication bypass reachable by anyone who knows one SCRAM password, plus two unauthenticated denial-of-service bugs.
PgBouncer 1.26.1, released today, fixes CVE-2026-107350: a client that knows the password of one SCRAM user can log in as any other SCRAM user, including admins and backend superusers. The bug comes from PgBouncer processing a second StartupMessage sent during SCRAM authentication when it connects to a non-existent database. It affects every release from 1.17.0 through 1.26.0.
The same release fixes two unauthenticated denial-of-service bugs. CVE-2026-107349 (1.20.0 through 1.26.0) lets an unauthenticated client trigger an infinite loop with an empty option name in the startup parameters, if ignore_startup_parameters is set but doesn’t include options. CVE-2026-107348 (1.21.0 through 1.26.0) is an integer overflow in the packet buffer growth logic, triggered when max_packet_size is raised above its default. Neither needs a valid login.
PgBouncer 1.17.0 - 1.26.0 -> vulnerable to CVE-2026-107350
PgBouncer 1.26.1 -> fixed
Why it matters: PgBouncer sits in front of Postgres on most production stacks that need connection pooling, including Supabase’s. An auth bypass that turns one compromised SCRAM password into admin access on the pooler is worth an unscheduled upgrade, not a routine one.