Skip to content

PostgreSQL JDBC : deux failles corrigées en 42.7.14 (AVI-1292)

Le CERT-FR relaie deux failles du pilote PostgreSQL JDBC (CVE-2026-107314 et 107315) : contournement d'authentification et fuite de données entre requêtes. Correctif en 42.7.14.

Publié le 3 min de lecture

Le CERT-FR a publié le 12 octobre l'avis CERTFR-2026-AVI-1292, qui relaie deux vulnérabilités dans le pilote PostgreSQL JDBC (pgjdbc). Les deux sont corrigées dans la version 42.7.14, décrites dans les notes de version publiées par l'éditeur. Les impacts annoncés : contournement de la politique de sécurité et atteinte à la confidentialité des données.

Les deux CVE

CVE-2026-107314 (GHSA-rhp9-mr79-r74h, CVSS 5.9, versions 42.7.11 à 42.7.13). Quand la propriété de connexion requireAuth exclut toutes les méthodes d'authentification connues du pilote — ou n'en nomme aucune —, le pilote n'applique aucune restriction. Un attaquant en position d'interception entre l'application et le serveur peut alors demander une authentification par mot de passe en clair et récupérer le mot de passe de la base. La propriété n'a pas de valeur par défaut : un déploiement qui ne la positionne pas n'est pas concerné.

CVE-2026-107315 (GHSA-f64h-wr5q-3qf3, CVSS 5.3, versions 42.7.4 à 42.7.13). Lorsqu'une application déclare une longueur supérieure aux données réellement envoyées, le pilote comblait l'écart avec des octets résiduels de messages précédents de la connexion, au lieu de zéros. Le serveur pouvait ainsi stocker des fragments de SQL et de paramètres venus d'autres requêtes. Les API visées incluent PreparedStatement.setObject, CopyIn.writeToCopy, PGCopyOutputStream.write, LargeObject.write et Blob.setBytes.

Correctif

La version 42.7.14 corrige les deux. Pour la CVE-2026-107314, le pilote refuse désormais les connexions dont la valeur requireAuth exclut toutes les méthodes (SQLState 08004) et rejette une valeur vide comme invalide. Pour la CVE-2026-107315, le bourrage se fait toujours avec des zéros.

État de l'exploitation

Ni le CERT-FR ni l'avis éditeur ne mentionnent d'exploitation en cours. Aucun code d'exploitation public n'est signalé à ce stade.

Que faire

  1. Passez pgjdbc en 42.7.14 partout où il est embarqué — pas seulement les serveurs d'applications, mais aussi les outils d'intégration, les connecteurs et les jobs batch.
  2. Attention au comportement de requireAuth après montée de version : une valeur qui excluait toutes les méthodes fera désormais échouer la connexion. Utilisez une liste positive, par exemple requireAuth=scram-sha-256.
  3. Pour la CVE-2026-107315, auditez les colonnes concernées. Des données écrites par une version vulnérable peuvent déjà contenir des octets fuités d'autres requêtes — la mise à jour ne nettoie pas l'existant.
  4. Recensez vos dépendances. Un pilote pgjdbc vulnérable vit dans les manifestes applicatifs (pom.xml, Gradle) autant que dans l'infrastructure ; passez-les au crible.

Contexte

Comme pour l'avis MongoDB CERTFR-2026-AVI-1234 fin septembre, le point sensible n'est pas le serveur de base de données mais le pilote côté client, embarqué dans des applications qu'on ne pense plus à mettre à jour. La CVE-2026-107314 ne mord que sur des déploiements qui positionnent requireAuth — une configuration de durcissement —, ce qui donne le paradoxe habituel : l'option censée renforcer l'authentification ouvrait, mal utilisée, un chemin vers le mot de passe. Vérifiez vos valeurs avant de patcher à l'aveugle.

Articles liés