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
http://vigilance.fr/vulnerabilite/glibc-corruption-de-mtab-via-RLIMIT-FSIZE-10460