Vigil@nce : OpenSolaris, déni de service de posix_fallocate
janvier 2009 par Vigil@nce
SYNTHÈSE DE LA VULNÉRABILITÉ
Un attaquant local peut appeler posix_fallocate() afin de paniquer
le système.
Gravité : 1/4
Conséquences : déni de service de la machine
Provenance : shell utilisateur
Moyen d’attaque : aucun démonstrateur, aucune attaque
Compétence de l’attaquant : expert (4/4)
Confiance : confirmé par l’éditeur (5/5)
Diffusion de la configuration vulnérable : élevée (3/3)
Date création : 15/01/2009
PRODUITS CONCERNÉS
– OpenSolaris
DESCRIPTION DE LA VULNÉRABILITÉ
L’appel système posix_fallocate() permet de s’assurer qu’il y a
suffisamment d’espace disponible sur le système de fichiers pour
écrire dans un fichier :
int posix_fallocate(int fd, off_t offset, off_t len) ;
Sous OpenSolaris, il est implémenté dans le fichier
usr/src/lib/libc/port/gen/posix_fallocate.c. Cependant,
posix_fallocate() appelle fcntl() qui ne vérifie pas si le
descripteur de fichier "fd" est un fichier régulier, ce qui
provoque une erreur.
Un attaquant local peut donc employer posix_fallocate() avec un
descripteur de fichier spécial afin de paniquer le système.
CARACTÉRISTIQUES
Références : 239188, 6669199, BID-33267, VIGILANCE-VUL-8394
http://vigilance.fr/vulnerabilite/OpenSolaris-deni-de-service-de-posix-fallocate-8394