LOXODATA

PostgreSQL 9.6.3 et autres correctifs

2017-05-15   393 mots, 2 minutes de lecture   Lætitia AVROT

Le PostgreSQL Global Development Group a publié le 11 mai dernier une mise à jour des versions supportées de PostgreSQL (9.2, 9.3, 9.4, 9.5 et 9.6).
Cette mise à jour embarque 3 mises à jour de sécurité et la correction de plus de 90 bugs.
Un simple remplacement des binaires permet de passer à la nouvelle version (si votre instance était en version 9.6.2, 9.5.6, 9.4.11, 9.3.16 ou 9.2.20).

Comme toujours, il est conseillé de mettre à jour très rapidement.

Sécurité

Protection des statistiques

Alerte CVE-2017-7484

Certaines fonctions d’estimation de l’optimiseur de PostgreSQL s’exécutent avant la vérification des droits de l’utilisateur sur les colonnes requêtées. Ceci dans le cas où des opérateurs personnalisés non sécurisés doivent être utilisés.

Du fait de l’utilisation de ces opérateurs non sécurisés, ces statistiques pouvaient être accédées par des utilisateurs n’ayant pas les droits de sélection sur les colonnes.
Désormais, si l’opérateur personnalisé n’est pas sécurisé et si l’utilisateur n’a pas les droits de selection sur la colonne, une estimation par défaut est effectuée avec un opérateur sécurisé.

Variable PGREQUIRESSL

Alerte CVE-2017-7485

Avec l’arrivée de la version 9.3, la variable PGREQUIRESSL n’était plus prise en compte. Étant donné que la documentation n’avait pas été changée sur le sujet, cela pouvait amener des utilisateurs à penser qu’ils se connectaient en SSL alors que ce n’était pas le cas.
L’utilisation de la variable a été rétablie.

Visibilité sur pg_user_mappings.umoptions

Alerte CVE-2017-7486

Sur les versions précédentes de PostgreSQL, le propriétaire d’un wrapper de données distantes (« foreign data wrapper »), ou tout utilisateur ayant les permissions d’usage sur le wrapper, avait les droits sur la colonne umoptions de la table pg_user_mappings. Or cette colonne pouvait contenir les mots de passe d’autres utilisateurs.
Le patch corrige cette vulnérabilité sur les nouvelles bases de données, mais pas sur les bases existantes. Veuillez suivre la procédure indiquée ici pour corriger vos bases existantes.

Correctif sur la réplication logique

Pour ceux qui ont mis en place une réplication logique avec snapshot de départ, il est possible que ce snapshot soit incomplet et/ou inconsistant.
Il est conseillé de recréer le réplica ou de vérifier sa consistance.

Correctifs divers

La mise à jour intègre de nombreux autres correctifs. Certains permettent d’améliorer l’optimiseur, d’autres corrigent des fonctionnalités.

La liste complète des correctifs est disponibles dans les notes de version.

La version originale de l’annonce, en anglais est sur le site.