Medium severity · published Jul 6, 2026
CVE-2026-54291
Silent channel-binding authentication downgrade via unsupported certificate algorithms
5.9
CVSS
0.2%
EPSS
No
On KEV
Description
pgjdbc is an open source postgresql JDBC Driver. In releases 42.7.4 through 42.7.11, channelBinding=require connections can be silently downgraded from SCRAM-SHA-256-PLUS with channel binding to plain SCRAM-SHA-256 without it, losing the man-in-the-middle protection the setting is meant to guarantee. An attacker who can intercept the TLS connection can trigger the downgrade with a certificate whose signature algorithm has no tls-server-end-point channel-binding hash, because the bundled com.ongres.scram:scram-client returns an empty byte array instead of failing and pgJDBC ScramAuthenticator checks only that the server advertised a PLUS mechanism, without rejecting the empty binding or checking that the negotiated mechanism uses channel binding. This issue is fixed in version 42.7.12.
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
Attack vector
Network
Complexity
High
Privileges
None
User interaction
None
Confidentiality
None
Integrity
High
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.2% · higher than 15% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
PG
pgjdbc · pgjdbc
>= 42.7.4, < 42.7.12 · source: vendor
PJ
Postgresql Jdbc Driver · Postgresql
42.7.4 before 42.7.12 · source: NVD
Affected product
PG
pgjdbc
pgjdbc
More from pgjdbc
8.0
CVE-2022-31197
SQL Injection in ResultSet.refreshRow() with malicious column names in pgjdbc
7.5
CVE-2026-42198
pgjdbc: Unbounded PBKDF2 iterations in SCRAM authentication allows CPU exhaustion DoS
5.9
CVE-2026-107314
pgjdbc does not enforce requireAuth when the value excludes every authentication method
5.3
CVE-2026-107315
pgjdbc pads a value shorter than its declared length with bytes of earlier statements (rather than zeros)
4.2
CVE-2026-107313
pgjdbc stores bytes of earlier messages in place of a large value on GSS-encrypted connections