Cloudanix VulnDB

CVE-2025-49146

None

CVSS

—

EPSS

0.5%

Published

Jun 11, 2025

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in the Java driver used to connect to PostgreSQL databases could let an attacker secretly intercept connections that administrators believed were securely protected.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Data Exposure
Component
Library
Class
Authentication Bypass
Remediation
Upgrade
Effort
Low
Patch risk
Low

What it actually does

The JDBC driver bypasses enforced channel binding by permitting authentication methods that lack support for it, allowing unauthenticated MITM interception of sessions configured to require binding.

Why it matters to the business

Organizations relying on the driver for secure PostgreSQL access face elevated risk of credential or data interception on connections they expected to be protected, increasing exposure to data breaches and compliance violations.

How an attack unfolds

An attacker positioned between the application and PostgreSQL server observes connection attempts; when channel binding is set to required, the flawed driver still accepts weaker methods such as password or MD5, enabling the attacker to relay or capture traffic without triggering the expected binding check.

How to fix it

Upgrade pgjdbc to version 42.7.7 or later; for Chainguard packages upgrade go-fips-1.22 and go-fips-1.22-doc to 1.22.11-r0 or newer; verify channel binding remains set to required after the update.

How to confirm the fix worked

Confirm driver version is 42.7.7 or higher; test connections with channel binding required while monitoring for fallback to unsupported authentication methods; review release notes for the channel-binding enforcement fix.

Typical attack path

  1. Position as network MITM between JDBC client and PostgreSQL server
  2. Observe connection handshake where channel binding is configured as required
  3. Relay authentication using an unsupported method accepted by the driver
  4. Establish decrypted session to capture queries, results, or credentials

How to detect it

Review application and database connection logs for authentication method entries that show password, MD5, GSS, or SSPI when channel binding should have been enforced; correlate with network flow data indicating unexpected intermediaries.

What your security team should do

  • Immediately upgrade all pgjdbc deployments to the fixed versions listed
  • Audit JDBC connection strings and configuration for channel-binding=required settings
  • Enable TLS certificate validation and logging of authentication method used on all PostgreSQL connections
  • Monitor EPSS and threat intelligence for any increase in exploitation activity

The record

pgjdbc is an open source postgresql JDBC Driver. From 42.7.4 and until 42.7.7, when the PostgreSQL JDBC driver is configured with channel binding set to required (default value is prefer), the driver would incorrectly allow connections to proceed with authentication methods that do not support channel binding (such as password, MD5, GSS, or SSPI authentication). This could allow a man-in-the-middle attacker to intercept connections that users believed were protected by channel binding requirements. This vulnerability is fixed in 42.7.7.

Affected packages

Ecosystem Package Introduced Fixed
Maven org.postgresql:postgresql 42.7.4 42.7.7
Bitnami postgresql-jdbc-driver 42.7.4 42.7.7
Chainguard apicurio-registry 0 3.0.9-r2
Chainguard apicurio-registry-nginx-config 0 3.0.9-r2
Chainguard apicurio-registry-ui 0 3.0.9-r2
Chainguard camunda-zeebe-8.6 0 8.6.18-r1
Chainguard camunda-zeebe-8.6-compat 0 8.6.18-r1
Chainguard keycloak 0 26.2.5-r2
Chainguard keycloak-bitnami-compat 0 26.2.5-r2
Chainguard keycloak-bitnami-fips 0 26.2.5-r3
Chainguard keycloak-compat 0 26.2.5-r2
Chainguard keycloak-fips 0 26.2.5-r3
Chainguard keycloak-fips-bitnami-compat 0 26.2.5-r3
Chainguard keycloak-fips-policy-140-2 0 26.2.5-r3
Chainguard keycloak-fips-policy-140-3 0 26.2.5-r3
Chainguard keycloak-iamguarded-compat 0 26.2.5-r2
Chainguard keycloak-iamguarded-fips 0 26.2.5-r3
Chainguard liquibase 0 4.32.0-r3
Chainguard sonarqube-10 0 25.5.0.107428-r2
Chainguard sonarqube-10-docker-compat 0 25.5.0.107428-r2
Chainguard sonarqube-10-scripts 0 25.5.0.107428-r2
Debian:11 libpgjava 0 No fix
Debian:12 libpgjava 0 No fix
Debian:13 libpgjava 0 No fix
Wolfi apicurio-registry 0 3.0.9-r2
Wolfi apicurio-registry-nginx-config 0 3.0.9-r2
Wolfi apicurio-registry-ui 0 3.0.9-r2
Wolfi keycloak 0 26.2.5-r2
Wolfi keycloak-bitnami-compat 0 26.2.5-r2
Wolfi keycloak-compat 0 26.2.5-r2
Wolfi keycloak-iamguarded-compat 0 26.2.5-r2
Wolfi liquibase 0 4.32.0-r3
Wolfi sonarqube-10 0 25.5.0.107428-r2
Wolfi sonarqube-10-docker-compat 0 25.5.0.107428-r2
Wolfi sonarqube-10-scripts 0 25.5.0.107428-r2
maven org.postgresql/postgresql 42.7.4 42.7.7
openSUSE:Tumbleweed postgresql-jdbc 0 42.7.7-1.1

Related vulnerabilities