Vigil@nce : PostgreSQL, déni de service via la conversion d’encodage
mars 2009 par Vigil@nce
SYNTHÈSE DE LA VULNÉRABILITÉ
Un attaquant authentifié sur PostgreSQL peut provoquer une erreur
lors de la conversion d’encodage de caractères afin de mener un
déni de service temporaire.
Gravité : 1/4
Conséquences : déni de service du service
Provenance : compte utilisateur
Moyen d’attaque : 1 attaque
Compétence de l’attaquant : technicien (2/4)
Confiance : confirmé par l’éditeur (5/5)
Diffusion de la configuration vulnérable : élevée (3/3)
Date création : 18/03/2009
PRODUITS CONCERNÉS
– PostgreSQL
DESCRIPTION DE LA VULNÉRABILITÉ
La commande "CREATE DEFAULT CONVERSION" est une extension
PostgreSQL pour définir une conversion entre encodages de
caractères (LATIN1, UTF8, etc.).
Lorsqu’une erreur survient, PostgreSQL retourne un message
d’erreur au client, qui est converti dans son encodage (défini par
"set client_encoding"). Cette conversion est assurée par les
fonctions de conversions définies par "CREATE DEFAULT CONVERSION".
Cependant, un attaquant local peut employer "CREATE DEFAULT
CONVERSION" pour créer une fonction erronée. Ensuite, la prochaine
erreur utilise cette fonction incorrecte, ce qui provoque une
erreur, etc. Une récursion infinie se produit alors et bloque
temporairement la base.
Un attaquant authentifié sur PostgreSQL peut donc provoquer une
erreur lors de la conversion d’encodage de caractères afin de
mener un déni de service temporaire.
CARACTÉRISTIQUES
Références : 488156, BID-34090, CVE-2009-0922, VIGILANCE-VUL-8542
http://vigilance.fr/vulnerabilite/PostgreSQL-deni-de-service-via-la-conversion-d-encodage-8542