Plusieurs distributions Linux affectées par une vulnérabilité sur X.Org

Une vulnérabilité importante a été découverte sur X.Org, un serveur présent sur de nombreuses distributions Linux et BSD utilisant une interface graphique. Cette vulnérabilité pourrait permettre à un attaquant d’élever ses privilèges en ayant la possibilité d’exécuter n'importe quelles commandes avec des droits d'administration, si le serveur X.Org est exécuté avec des droits d'administration. Son exploitation est triviale et ne nécessite pas d'interaction avec un utilisateur. En revanche il est nécessaire d'être authentifiée sur la machine. L’impact estimé sur la confidentialité, l’intégrité et la disponibilité est élevé.

X.Org serveur est une implémentation du protocole de système de fenêtrage X, chargé de la gestion de l'écran, de la souris et du clavier. Ce système est devenu le standard sur les distributions Linux actuelles, donnant un fort impact à cette vulnérabilité. Sa gravité varie selon les implémentations faites par les distributions Linux, ce qui rend l'évaluation de la criticité complexe. La configuration de la plupart des distributions récentes ne permet pas son exploitation, elle est néanmoins présente sur des versions plus anciennes. Sur un système Red Hat, son impact est modéré, car l'exploitation nécessite un accès physique à la machine, tandis que sur un système SUSE Entreprise (version 11) l'exploitation peut être réalisée depuis une session SSH. Ces différences se reflètent sur les scores CVSS, Red Hat évalue la vulnérabilité à 6.6 alors que SUSE lui attribue un score de 8.4.
L'origine de cette vulnérabilité a pu être datée à novembre 2016, mais elle il n'existe pas d’éléments permettant de dire qu'elle a été exploitée.

Des correctifs ont été publiés sur la plupart des distributions, les utilisateurs sont donc invités à les appliquer le plus rapidement possible du fait de la criticité de la vulnérabilité.

Détails Techniques

La vulnérabilité est présente lorsque le service X.Org est lancé avec un Setuid root. Un Setuid est une fonctionnalité proposée par les systèmes Unix pour transférer des droits à un programme, ici des droits d'administration lors de l’exécution.

L'exploitation de la vulnérabilité s'effectue via l'argument logfile qui permet de préciser le fichier de log pour X.Org X Server. En précisant le fichier /etc/shadow qui contient entre autres les mots de passe hashés, un attaquant peut modifier les droits de lecture qui lui sont associé et accéder des contenus restreints. Il est également possible de modifier le contenu de ce fichier à l'aide de l'option fp qui selon la distribution permet d'injecter une ligne dans le fichier. L'attaquant pourrait donc s'enregistrer en tant qu'utilisateur root dans le système. Des preuves de concepts sont disponibles pour réaliser ces étapes.

Informations
+

Risques

  • Élévation de privilèges

Criticité

  • Score CVSS : (Score de la vulnérabilité la plus critique)

Existence d’un code d’exploitation de la vulnérabilité

  • Des codes d'exploitation sont disponibles publiquement, notamment sur exploitDB.

Composants & versions vulnérables

  • De nombreuses distributions Linux ou BSD : OpenBSD, Red Hat, Ubuntu, Debian, SUSE et Fedora.

CVE

  • CVE-2018-14665

Recommandations
+

Mise en place de correctif de sécurité

  • L'équipe de développement du projet X.Org a publié un correctif de sécurité le 25 octobre. Les distributions affectées n'ont pas encore toutes mis à disposition ce correctif pour leurs utilisateurs. Ainsi pour Debian, la version Jessie possède un correctif, contrairement à Stretch. Pour SUSE, un correctif a été publié sur la majorité des produits. Les distributions Ubuntu et Red Hat ont publié le correctif sur tous les produits affectés.

Solution de contournement

 

  • En cas d'impossibilité d'appliquer le correctif, il est proposé de retirer le setUID du binaire X.Org.