Les attaquants peuvent obtenir root en faisant planter le service de comptes d’Ubuntu

Attackers can get root by crashing Ubuntu’s AccountsService

Une vulnérabilité de sécurité d’élévation des privilèges locaux pourrait permettre aux attaquants d’obtenir un accès root sur les systèmes Ubuntu en exploitant un bug de corruption de mémoire double libre dans le composant AccountsService de GNOME.

ComptesService est un service D-Bus qui permet de manipuler et d’interroger les informations liées aux comptes d’utilisateurs disponibles sur un appareil.

La faille de sécurité (un bug de gestion de la mémoire suivi comme CVE-2021-3939).

« AccountsService pourrait être amené à planter ou à exécuter des programmes en tant qu’administrateur s’il recevait une commande spécialement conçue », un avis de sécurité Ubuntu explique.

Backhouse a découvert qu’AccountsService gérait mal la mémoire lors de certaines opérations de paramétrage de la langue, une faille dont les attaquants locaux pourraient abuser pour élever les privilèges.

Le bug n’affecte que le fork de AccountsService d’Ubuntu. Les versions affectées par cette vulnérabilité incluent Ubuntu 21.10, Ubuntu 21.04 et Ubuntu 20.04 LTS.

Cette faille d’élévation de privilèges a été fixé par Canonical en novembre lorsque les versions 0.6.55-0ubuntu12~20.04.5, 0.6.55-0ubuntu13.3, 0.6.55-0ubuntu14.1 de AccountsService ont été publiées. Après avoir appliqué les mises à jour, vous devrez également redémarrer l’ordinateur pour appliquer les modifications.

Pas le plus rapide, mais certainement fiable

Comme il l’explique, son CVE-2021-3939 exploit de preuve de concept est lent (peut-être plusieurs heures) et ne fonctionnera pas à chaque fois. Cependant, cela n’a pas d’importance puisqu’il peut être exécuté jusqu’à ce qu’il réussisse, étant donné que le bug double gratuit permet de faire planter AccountsService autant de fois que nécessaire.

La seule restriction pour exploiter avec succès ce bug est que les plantages d’AccountsService sont limités en taux par systemd, bloquant les tentatives de redémarrage plus de cinq fois toutes les 10 secondes.

« Cela dépend du hasard et du fait que je peux continuer à faire planter le service de comptes jusqu’à ce qu’il réussisse. Mais un attaquant s’en soucierait-il ? Cela vous donne un shell root, même si vous devez attendre quelques heures », Backhouse mentionné.

« Pour moi, c’est comme par magie qu’il soit même possible d’exploiter un si petit bug, surtout compte tenu de toutes les atténuations qui ont été ajoutées pour rendre les vulnérabilités de corruption de mémoire plus difficiles à exploiter. Parfois, tout ce qu’il faut pour s’enraciner est un petit vœu pieux. ! »

De plus amples détails sur la façon dont la vulnérabilité a été trouvée et l’exploit développé sont disponibles dans Rédaction CVE-2021-3939 de Backhouse.

Plus tôt cette année, le chercheur a découvert une vulnérabilité de contournement d’authentification dans le service système polkit Linux qui permettait à des attaquants non privilégiés d’obtenir un shell racine sur la plupart des distributions modernes.