Vigil@nce - glibc : élevation de privilèges via LD_AUDIT et constructeur
novembre 2010 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 variable LD_AUDIT et le
constructeur d’une bibliothèque système, pour obtenir les
privilèges des programmes suid ou sgid.
Gravité : 2/4
Date création : 25/10/2010
DESCRIPTION DE LA VULNÉRABILITÉ
Le programme glibc/ld.so charge dynamiquement des bibliothèques.
La variable d’environnement LD_AUDIT indique une liste d’objets,
correspondant à l’interface Link-Auditing, que ld.so doit charger.
Lorsqu’un programme est suid ou sgid, les bibliothèques indiquées
dans LD_AUDIT sont chargées uniquement si elles sont situées dans
un répertoire système (comme /lib).
Cependant, les constructeurs de certaines bibliothèques sous /lib
n’ont pas été conçus de manière sécurisée. Par exemple, le
constructeur de /lib/libpcprofile.so (installé avec le paquetage
glibc) accepte de créer un fichier dont le nom est indiqué dans la
variable PCPROFILE_OUTPUT.
Un attaquant local peut donc employer la variable LD_AUDIT et le
constructeur de libpcprofile.so, pour créer un fichier avec les
droits d’un programme suid/sgid, afin d’élever ses privilèges.
ACCÈS AU BULLETIN VIGIL@NCE COMPLET
http://vigilance.fr/vulnerabilite/glibc-elevation-de-privileges-via-LD-AUDIT-et-constructeur-10068