Vulnérabilité dans systemd, permettant potentiellement d'élever ses privilèges

Dans le gestionnaire de système systemd une vulnérabilité a été identifiée une vulnérabilité (CVE-2020-1712), qui permet potentiellement d'exécuter son propre code avec des privilèges élevés en envoyant une requête spécialement formatée via le bus DBus. Le problème a été corrigé dans la version de test systemd 245-rc1 (correctifs résolvant le problème : 1, 2, 3). La vulnérabilité a été corrigée dans les distributions Ubuntu, Fedora, RHEL (apparaît dans RHEL 8, mais n'affecte pas RHEL 7), CentOS, SUSE/openSUSE et ROSA, mais au moment de la rédaction de la nouvelle, elle reste non corrigée dans Debian et Arch Linux.

La vulnérabilité est due à un accès à une zone de mémoire déjà libérée (use-after-free), qui se produit lors de l'exécution asynchrone des requêtes à Polkit pendant le traitement des messages DBus. Certaines interfaces DBus utilisent un cache pour stocker des objets pendant une courte période et nettoient les éléments du cache dès que le bus DBus est libre pour traiter d'autres requêtes. Si le gestionnaire de méthode DBus utilise bus_verify_polkit_async(), il peut avoir besoin d'attendre l'achèvement de l'action dans Polkit. Une fois que Polkit est prêt, le gestionnaire est appelé à nouveau et accède aux données précédemment allouées en mémoire. Si la requête à Polkit prend trop de temps, les éléments du cache peuvent être nettoyés avant que le gestionnaire de méthode DBus ne soit appelé une deuxième fois.

Parmi les services permettant d'exploiter la vulnérabilité, on note systemd-machined, qui fournit l'API DBus org.freedesktop.machine1.Image.Clone, ce qui entraîne un stockage temporaire de données dans le cache et un accès asynchrone à Polkit. L'interface
org.freedesktop.machine1.Image.Clone est accessible à tous les utilisateurs non privilégiés du système, qui peuvent provoquer des crashs de services systemd ou potentiellement exécuter du code avec des droits root (le prototype de l'exploit n'a pas encore été démontré). Le code permettant d'exploiter la vulnérabilité a été ajouté dans systemd-machined en 2015 dans la version systemd 220 (systemd 219 est utilisé dans RHEL 7.x).

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster