Sep 23, 2026 - PgBouncer 1.26.0

PgBouncer 1.26.0 has been released. This release fixes three CVEs:

  1. CVE-2026-19888: DoS due to crash, triggerable by unauthenticated clients. Caused by a SCRAM client-final-message without a nonce.
  2. CVE-2026-6668: DoS due to infinite loop, triggerable by unauthenticated clients. Caused by an integer overflow in the packet buffer growth logic.
  3. CVE-2026-6669: DoS due to unbounded work during login, triggerable by a malicious PostgreSQL server. Caused by an unbounded SCRAM iteration count.

It also tracks search_path and default_transaction_read_only by default, adds the pool_idle_timeout setting, allows query_wait_timeout to be set per user and database, adds meson build support, and removes the deprecated online restart (-R) functionality.

See the full details in the changelog.

Download here: pgbouncer-1.26.0.tar.gz (sha256)

May 8, 2026 - PgBouncer 1.25.2

PgBouncer 1.25.2 has been released. This release fixes several security issues and contains a few minor documentation corrections.

See the full details in the changelog.

Download here: pgbouncer-1.25.2.tar.gz (sha256)

Dec 3, 2025 - PgBouncer 1.25.1

PgBouncer 1.25.1 has been released. This release fixes CVE-2025-12819: Before this release it was possible for an unauthenticated attacker to execute arbitrary SQL during authentication by providing a malicious search_path parameter in the StartupMessage. Systems that have ALL the following configurations are vulnerable:

  1. track_extra_parameters includes search_path (non-default configuration, probably only configured in setups involving Citus or PostgreSQL 18)
  2. auth_user is set to a non-empty string (non-default configuration)
  3. auth_query is configured without fully-qualified object names (default configuration, the < operator is not schema q

This release also fixes a bunch of bugs/issues introduced in the recent 1.25.0 release.

See the full details in the changelog.

Download here: pgbouncer-1.25.1.tar.gz (sha256)