Vigil@nce : MySQL, déni de service via des booléens
février 2009 par Vigil@nce
Un attaquant local peut employer une requête booléenne complexe
afin de mener un déni de service.
– 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 : 17/02/2009
PRODUITS CONCERNÉS
– MySQL Community Server
– MySQL Enterprise
DESCRIPTION DE LA VULNÉRABILITÉ
Une requête SQL contient des opérateurs booléens (AND, OR). Par
exemple :
SELECT c FROM t WHERE c=1 AND d=4 ;
Lorsqu’une requête contient un opérateur booléen, MySQL alloue une
zone mémoire pour stocker chacune des conditions.
Cependant, MySQL ne vérifie pas si la fonction d’allocation a
retourné NULL, pour indiquer qu’il n’y avait plus de mémoire
disponible. MySQL utilise alors un pointeur invalide, ce qui le
stoppe.
Un attaquant local peut donc employer une requête booléenne
complexe afin de mener un déni de service.
CARACTÉRISTIQUES
– Références : 38296, VIGILANCE-VUL-8476
– Url : http://vigilance.fr/vulnerabilite/MySQL-deni-de-service-via-des-booleens-8476