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

The PostgreSQL JDBC Driver inadvertently allows a silent downgrade of the channel binding requirement for SCRAM authentication. When a PostgreSQL server presents a TLS certificate whose signature algorithm does not supply a tls-server-end-point hash, the driver’s scram client returns an empty byte array instead of rejecting the certificate. The driver’s ScramAuthenticator only verifies that the server advertises a "scram-sha-256-plus" mechanism and ignores the missing binding, allowing the session to fall back to plain SCRAM‑SHA‑256. This removes the man‑in‑the‑middle protection that the channelBinding=require setting is meant to enforce, potentially letting an attacker impersonate a user or gain unauthorized database access. The flaw is classified as CWE‑636, CWE‑757, and CWE‑940.

Affected Systems

Products affected are the open‑source PostgreSQL JDBC Driver (pgjdbc) in release versions 42.7.4 through 42.7.11. Any application that connects to a PostgreSQL server over TLS and has the channelBinding=require option enabled will be impacted.

Risk and Exploitability

With a CVSS score of 8.2, the vulnerability is high severity. Its EPSS value of less than 1% indicates a very low probability of exploitation as of the latest data, and the vulnerability is not listed in CISA’s KEV catalog. The exploit requires the attacker to perform a man‑in‑the‑middle attack on the TLS connection and supply a certificate lacking a channel‑binding hash. In environments where such MITM attacks are feasible, the impact could be total loss of confidentiality and integrity of authentication for all users of the compromised database connection.

Generated by OpenCVE AI on August 4, 2026 at 07:50 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 immediate upgrade is not possible, consider disabling the channelBinding=require option or switch to a TLS certificate that supports a channel‑binding hash, such as RSA or ECDSA with SHA‑256, to prevent the downgrade.
  • Deploy network controls or TLS inspection to reject certificates that lack a supported signature algorithm or channel‑binding capability, mitigating the possibility of a silent downgrade.

Generated by OpenCVE AI on August 4, 2026 at 07:50 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'}


Subscriptions

Pgjdbc Pgjdbc
Postgresql Postgresql Jdbc Driver
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

Status : Analyzed

Published: 2026-07-06T19:17:08.407

Modified: 2026-07-09T13:16:25.717

Link: CVE-2026-54291

cve-icon Redhat

Severity : Moderate

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

Links: CVE-2026-54291 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-04T08:00: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