Vigil@nce : glibc, corruption de mtab via RLIMIT_FSIZE
mars 2011 par Vigil@nce
Ce bulletin a été rédigé par Vigil@nce : http://vigilance.fr/
SYNTHÈSE DE LA VULNÉRABILITÉ
Un attaquant local peut employer la limite RLIMIT_FSIZE, afin de corrompre le fichier /etc/mtab.
Gravité : 1/4
Date création : 17/03/2011
PRODUITS CONCERNÉS
Unix - plateforme
DESCRIPTION DE LA VULNÉRABILITÉ
La fonction addmntent() de la glibc ajoute une entrée dans le fichier /etc/mtab, qui liste les points de montage.
Cette fonction est appelée lorsqu’un utilisateur emploie les
commandes suid suivantes :
fusermount (FUSE)
mount (util-linux)
mount.cifs (Samba)
ncpmount (ncpfs)
vmware-hgfsmounter (open-vm-tools)
La limite RLIMIT_FSIZE indique la taille maximale d’un fichier qu’un processus est autorisé à créer.
Si un attaquant local a défini une limite RLIMIT_FSIZE légèrement supérieure à la taille du fichier /etc/mtab, et appelle une des commandes suid, la fonction addmntent() cesse d’écrire lorsque la taille est atteinte, mais retourne un code de succès (ou un signal SIGXFSZ s’il n’est pas bloqué). Les commandes suid ne détectent pas l’erreur, et le fichier /etc/mtab est laissé avec sa dernière ligne tronquée.
Un attaquant local peut donc employer la limite RLIMIT_FSIZE, afin de corrompre le fichier /etc/mtab.
ACCÈS AU BULLETIN VIGIL@NCE COMPLET
Tweeter