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.
Published: 2026-07-06
Score: 8.2 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

In PostgreSQL JDBC Driver releases 42.7.4 through 42.7.11, the requirement to use channel binding with SCRAM‑SHA‑256‑PLUS can be silently downgraded to plain SCRAM‑SHA‑256 when the server presents a certificate whose signature algorithm does not provide a tls‑server‑end‑point channel‑binding hash. In these cases, the bundled scram‑client returns an empty byte array, and the pgJDBC ScramAuthenticator only verifies that the server advertised a PLUS mechanism, ignoring the missing binding. This flaw lets an attacker intercept the TLS session, enforce a downgrade, and potentially authenticate as an arbitrary user or gain unauthorized access, despite the channelBinding=require setting. The weakness is identified as CWE‑636 and CWE‑757.

Affected Systems

The vulnerability affects the open‑source PostgreSQL JDBC Driver (pgjdbc) in versions 42.7.4 through 42.7.11. It applies to any application that uses this driver with channelBinding=require enabled and connects to a PostgreSQL server over TLS.

Risk and Exploitability

The CVSS score of 8.2 indicates a high severity impact. Exploitation requires an attacker to intercept the TLS session, supply a specially crafted certificate that lacks a channel‑binding hash, so the threat is limited to environments where a man‑in‑the‑middle attack is feasible. The EPSS score of < 1% indicates a very low but nonzero probability of exploitation, and the vulnerability is not listed in CISA’s KEV catalog, suggesting no widespread exploitation to date. Nevertheless, the silent downgrade presents a significant risk to confidentiality and integrity for systems that rely on channel binding to defend against MITM attacks.

Generated by OpenCVE AI on July 25, 2026 at 21:00 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade pgjdbc to version 42.7.12 or later to apply the fix that enforces channel binding checks.
  • If an upgrade is not immediately possible, disable the channelBinding=require setting or employ a TLS certificate that supports a channel‑binding hash such as RSA or ECDSA with SHA‑256 to prevent the downgrade.
  • Implement application‑level TLS certificate validation or network controls that reject certificates lacking supported signature algorithms or channel‑binding capabilities.

Generated by OpenCVE AI on July 25, 2026 at 21:00 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-j92g-9f8w-j867 PostgreSQL JDBC Driver: Silent channel-binding authentication downgrade via unsupported certificate algorithms
History

Wed, 22 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-940
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.9, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N'}

threat_severity

Moderate


Mon, 06 Jul 2026 21:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 06 Jul 2026 21:00:00 +0000

Type Values Removed Values Added
First Time appeared Pgjdbc
Pgjdbc pgjdbc
Vendors & Products Pgjdbc
Pgjdbc pgjdbc

Mon, 06 Jul 2026 19:15:00 +0000

Type Values Removed Values Added
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.
Title Silent channel-binding authentication downgrade via unsupported certificate algorithms
Weaknesses CWE-636
CWE-757
References
Metrics cvssV4_0

{'score': 8.2, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:L/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-06T19:47:17.454Z

Reserved: 2026-06-12T17:46:37.293Z

Link: CVE-2026-54291

cve-icon Vulnrichment

Updated: 2026-07-06T19:47:14.258Z

cve-icon NVD

No data.

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-07-06T18:55:01Z

Links: CVE-2026-54291 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-07-25T21:15:03Z

Weaknesses
  • CWE-636

    Not Failing Securely ('Failing Open')

  • CWE-757

    Selection of Less-Secure Algorithm During Negotiation ('Algorithm Downgrade')

  • CWE-940

    Improper Verification of Source of a Communication Channel