Vigil@nce : NetBSD, déni de service via mount_get_vfsops
janvier 2010 par Vigil@nce
SYNTHÈSE DE LA VULNÉRABILITÉ
Un attaquant local peut monter un système de fichiers VFS, afin de
stopper le noyau.
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 : 13/01/2010
PRODUITS CONCERNÉS
– NetBSD
DESCRIPTION DE LA VULNÉRABILITÉ
L’appel système mount() est utilisé pour monter un système de
fichiers :
mount(type, dir, flags, data, data_len) ;
Le paramètre "data" peut contenir des champs additionnels,
utilisés en fonction du type du système de fichiers.
La fonction mount_get_vfsops() du fichier vfs_syscalls.c (VFS)
utilise directement le champ "fstype" (au lieu d’utiliser la copie
faite en espace mémoire noyau). Cependant, si un attaquant libère
ce champ avant son utilisation, le noyau emploie un pointeur
invalide, ce qui le stoppe.
Un attaquant local peut donc monter un système de fichiers VFS,
afin de stopper le noyau.
CARACTÉRISTIQUES
Références : BID-37767, NetBSD-SA2010-001, VIGILANCE-VUL-9344
http://vigilance.fr/vulnerabilite/NetBSD-deni-de-service-via-mount-get-vfsops-9344