Vigil@nce : Noyau Linux, déni de service via VDSO et 64 bits
mars 2010 par Vigil@nce
SYNTHÈSE DE LA VULNÉRABILITÉ
Sur un processeur x86_64, un attaquant local peut protéger la page
VDSO et provoquer une erreur de segmentation, afin de stopper 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 : 17/03/2010
PRODUITS CONCERNÉS
– Linux noyau
– Red Hat Enterprise Linux
DESCRIPTION DE LA VULNÉRABILITÉ
La VDSO (Virtual Dynamically-linked Shared Object) permet à un
processus d’accéder à certaines fonctionnalités du noyau, sans
utiliser d’appel système.
Lorsqu’un processus déréférence un pointeur NULL, une erreur de
segmentation se produit. Cette erreur est gérée par le noyau, qui
stoppe le processus.
Cependant, un processus 32 bits sur un processeur 64 bits peut
appeler mprotect() sur la page VDSO, puis provoquer une erreur de
segmentation. Dans ce cas, une erreur fatale se produit et stoppe
le noyau.
Sur un processeur x86_64, un attaquant local peut donc protéger la
page VDSO et provoquer une erreur de segmentation, afin de stopper
le système.
CARACTÉRISTIQUES
Références : 548876, CVE-2009-4271, RHSA-2010:0146-01,
VIGILANCE-VUL-9517
http://vigilance.fr/vulnerabilite/Noyau-Linux-deni-de-service-via-VDSO-et-64-bits-9517