Skip to content
CVE Tracker
  • Newest CVEsPage
  • Recently added to KEVPage
  • Rising exploitation (EPSS)Page
  • Weekly digestPage
  • StatisticsPage
  • WatchlistPage
  • API documentationPage
  • MCP serverPage
  • Data sourcesPage
  • ChangelogPage
  • AboutPage
  • How it's builtPage
Back

CVE-2025-2291

PgBouncer default auth_query does not take Postgres password expiry into account

High8.1EPSS 0.37%
Published
Updated
Reserved
Assigned by
PostgreSQL

Description

Password can be used past expiry in PgBouncer due to auth_query not taking into account Postgres its VALID UNTIL value, which allows an attacker to log in with an already expired password

Scores

CVSS scores of CVE-2025-2291, by who scored it
Scored byCVSSScoreVector
PostgreSQLCNA (assigner)3.1High8.1CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
NVDNVD · Analyzed3.1Critical9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS (exploitation in 30 days)
0.37% · top 69% of all CVEs (5 Nov 2026)
CISA SSVC
Exploitation: none · Automatable: no · Technical impact: total
Loading the EPSS history…

The list uses the assigner's score when there is one, then CISA's, then NVD's: High 8.1.

Weakness

Affected products

  • PgBouncer

    • affected < 1.24.1

What to do

Workaround: Configure a custom auth_query containing the new default auth_query introduced in PgBouncer 1.24.1, this auth_query takes expiry into account

References (2)

Sources

The same CVE in the primary databases and aggregators, to check against.

Badge for a README or a ticket

CVE-2025-2291 badge
[![CVE-2025-2291](https://trackcve.app/badge/CVE-2025-2291.svg)](https://trackcve.app/cve/CVE-2025-2291)

Record last updated .