Rechercher
Contactez-nous Suivez-nous sur Twitter En francais English Language
 

De la Théorie à la pratique











Abonnez-vous gratuitement à notre NEWSLETTER

Newsletter FR

Newsletter EN

Vulnérabilités

Se désabonner

Vigil@nce : Noyau Linux, déni de service via THP

juin 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 les Transparent Huge Pages, /dev/zero et mprotect(), afin de stopper le système.

- Gravité : 1/4
- Date création : 21/06/2011

PRODUITS CONCERNÉS

- Linux noyau

DESCRIPTION DE LA VULNÉRABILITÉ

La fonctionnalité THP (Transparent Huge Pages), implémentée depuis la version 2.6.38 du noyau Linux, permet d’utiliser des pages mémoire de plus de 4096 octets. Cette fonctionnalité est activée lorsque /sys/kernel/mm/transparent_hugepage/enabled contient "always" ou "madvise" (dans ce cas MADV_HUGEPAGE doit être précisé dans le code source de l’application).

Le fichier /dev/zero permet d’obtenir une zone de données nulle, qui peut être mmapée avec MAP_PRIVATE. Dans ce cas, le champ vma->vm_ops est NULL car la zone mémoire est anonyme, et vma->vm_file n’est pas NULL (il vaut /dev/zero).

Cependant, lorsque les conditions suivantes sont réunies :
- THP vaut "always"
- vma->vm_ops est NULL (/dev/zero ouvert)
- vma->vm_file n’est pas NULL (/dev/zero ouvert)
- la mémoire est lue, puis protégée avec mprotect() alors, le noyau détecte un cas imprévu, et se stoppe.

Un attaquant local peut donc employer les Transparent Huge Pages, /dev/zero et mprotect(), afin de stopper le système.

ACCÈS AU BULLETIN VIGIL@NCE COMPLET

http://vigilance.fr/vulnerabilite/N...




Voir les articles précédents

    

Voir les articles suivants