PostgreSQLLa base de données la plus sophistiquée au monde.

E.107. Version 7.3.21

[Note]

Date de sortie

2008-01-07

Cette version contient divers correctifs de la version 7.3.20, et inclut des corrections pour des failles de sécurité importantes.

Ceci sera sûrement la dernière version PostgreSQL™ dans la série 7.3.X. Les utilisateurs sont encouragés à mettre à jour bientôt.

E.107.1. Migration vers la version 7.3.21

Les utilisateurs des versions 7.3.X n'ont pas besoin d'effectuer d'une étape de sauvegarde/restauration. Néanmoins, si vous mettez à jour à partir d'une version précédant la 7.3.13, voir les notes de sortie de la 7.3.13.

E.107.2. Modifications

  • Empêche les fonctions d'index de s'exécuter avec les droits de l'utilisateur exécutant VACUUM, ANALYZE, etc (Tom)

    Les fonctions utilisées dans les expressions d'index et dans les index partiels sont évaluées quand une nouvelle entrée est faite dans la table. Depuis longtemps, ceci est un risque, un cheval de Troie pouvant être exécuté si une personne modifie une table appartenant à un utilisateur à qui on ne peut faire confiance (Notez ques les triggers, valeurs par défaut, contraintes de vérification, etc posent le même type de risque.) Mais les fonctions utilisées dans des index sont un danger supplémentaire car ils seront exécutés par des opérations de maintenance périodiques comme un VACUUM FULL, opérations généralement exécutées par des super-utilisateurs. Donc, un utilisateur cherchant à gagner accès au système peut exécuter du code avec des droits de super-utilisateur en ajoutant une définition d'index avec un code de cheval de Troie, puis attendre la prochaine exécution des opérations de maintenance. La correction s'arrange pour que les opérations standards de maintenance (ceci incluant VACUUM, ANALYZE, REINDEX et CLUSTER) s'exécutent en tant que propriétaire de la table plutôt qu'en tant qu'appelent, en utilisant le même mécanisme de bascule de droits utilisé dans les fonctions SECURITY DEFINER. Pour empêcher un coutournement de cette mesure de sécurité, l'exécution de SET SESSION AUTHORIZATION et SET ROLE est maintenant interdit dans un contexte SECURITY DEFINER. (CVE-2007-6600)

  • Oblige l'utilisation de l'authentification par mot de passe pour les utilisateurs standards de /contrib/dblink, c'est une mesure de sécurité (Joe)

    La correction apparue dans 7.3.20 était incomplète, car il ne corrigeait la faille que pour certaines fonctions dblink. (CVE-2007-6601, CVE-2007-3278)

  • Correction d'un arrêt brutal potentiel dans translate() lors de l'utilisation d'un encodage multi-octets de la base (Tom)

  • Correction pour que crosstab(), du module contrib/tablefunc, gère les rowid NULL comme catégorie (Joe)

  • Nécessite l'utilisation d'une version spécifique d'Autoconf™ lors de la re-génération du script configure (Peter)

    Ceci affecte seulement les développeurs et les créateurs de package. La modification a pour but d'empêcher l'utilisation accidentelle de combinaisons non testées des versions d'Autoconf™ et de PostgreSQL™. Vous pouvez supprimer la vérification de la version si vous voulez vraiment utiliser une version différente d'Autoconf™, mais c'est de votre responsabilité.