Le monde s’est réveillé mardi face à deux nouvelles vulnérabilités – l’une dans Windows et l’autre dans Linux – qui permettent aux pirates ayant un pied dans un système vulnérable de contourner les restrictions de sécurité du système d’exploitation et d’accéder à des ressources sensibles.
Alors que les systèmes d’exploitation et les applications deviennent plus difficiles à pirater, les attaques réussies nécessitent généralement deux vulnérabilités ou plus. Une vulnérabilité permet à l’attaquant d’accéder aux ressources du système d’exploitation à faibles privilèges, où le code peut être exécuté ou les données sensibles peuvent être lues. Une deuxième vulnérabilité élève cette exécution de code ou cet accès aux fichiers aux ressources du système d’exploitation réservées au stockage des mots de passe ou à d’autres opérations sensibles. La valeur des vulnérabilités dites d’escalade de privilèges locaux a donc augmenté ces dernières années.
La vulnérabilité Windows venu à la lumière par accident lundi lorsqu’un chercheur a observé ce qu’il croyait être une régression de codage dans une version bêta du prochain Windows 11. Le chercheur a découvert que le contenu du gestionnaire de compte de sécurité – la base de données qui stocke les comptes d’utilisateurs et les descripteurs de sécurité pour les utilisateurs sur le ordinateur local – peuvent être lus par des utilisateurs disposant de privilèges système limités.
Cela a permis d’extraire des données de mot de passe protégées cryptographiquement, de découvrir le mot de passe utilisé pour installer Windows, d’obtenir les clés informatiques de l’API de protection des données Windows – qui peut être utilisée pour décrypter les clés de chiffrement privées – et de créer un compte sur la machine vulnérable. Le résultat est que l’utilisateur local peut élever les privilèges jusqu’au système, le niveau le plus élevé de Windows.
Je ne connais pas encore toute l’étendue du problème, mais je pense qu’il est trop nombreux pour ne pas être un problème », a noté le chercheur Jonas Lykkegaard. applications.”
yarh- pour une raison quelconque sur win11, le fichier SAM est maintenant lu pour les utilisateurs. Donc, si vous avez activé les shadowvolumes, vous pouvez lire le fichier sam comme ceci : je ne connais pas encore toute l’étendue du problème, mais c’est trop pour ne pas être un problème je pense. pic.twitter.com/kl8gQ1FjFt
Les personnes répondant à Lykkegaard ont souligné que le comportement n’était pas une régression introduite dans Windows 11. Au lieu de cela, la même vulnérabilité était présente dans la dernière version de Windows 10. L’équipe américaine de préparation aux urgences informatiques a déclaré que la vulnérabilité est présente lorsque le service de cliché instantané des volumes -la fonctionnalité Windows qui permet au système d’exploitation ou aux applications de prendre des “instantanés ponctuels” d’un disque entier sans verrouiller le système de fichiers-est activée.
L’avis expliquait :
Si un cliché instantané VSS du lecteur système est disponible, un utilisateur non privilégié peut tirer parti de l’accès à ces fichiers pour obtenir un certain nombre d’impacts, y compris, mais sans s’y limiter :
Extraire et exploiter les hachages de mot de passe de compteDécouvrir le mot de passe d’installation Windows d’origineObtenir des clés informatiques DPAPI, qui peuvent être utilisées pour déchiffrer toutes les clés privées de l’ordinateurObtenir un compte de machine informatique, qui peut être utilisé dans une attaque de ticket d’argent
Notez que les clichés instantanés VSS peuvent ne pas être disponibles dans certaines configurations ; Cependant, le simple fait d’avoir un lecteur système d’une taille supérieure à 128 Go, puis d’effectuer une mise à jour Windows ou d’installer un MSI garantira qu’un cliché instantané VSS sera automatiquement créé. Pour vérifier si un système dispose de clichés instantanés VSS, exécutez la commande suivante à partir d’une invite de commande privilégiée :
vssadmin list shadows
Chercheur Benjamin Delpy montré comment la vulnérabilité peut être exploitée pour obtenir des hachages de mots de passe ou d’autres données sensibles :
Q : Que pouvez-vous faire lorsque vous avez #mimikatz馃 et certains accès en lecture sur les fichiers système Windows tels que SYSTEM, SAM et SECURITY ? R : Élévation des privilèges locaux 馃コ Merci @jonasLyk pour cet accès en lecture sur Windows par défaut pic.twitter.com/6Y8kGmdCsp
Actuellement, il n’y a pas de correctif disponible. Un représentant de Microsoft a déclaré que les responsables de l’entreprise enquêtaient sur la vulnérabilité et prendraient les mesures appropriées si nécessaire. La vulnérabilité est suivie en tant que CVE-2021-36934. Microsoft a déclaré ici que les exploits dans la nature sont “plus probables”.
La plupart des versions de Linux, quant à elles, sont en train de distribuer un correctif pour une vulnérabilité révélée mardi. CVE-2021-33909, au fur et à mesure que la faille de sécurité est suivie, permet à un utilisateur non approuvé d’obtenir des droits système sans entrave en créant, montant et supprimant une structure de répertoire profonde avec une longueur de chemin totale supérieure à 1 Go, puis en ouvrant et en lisant le
/proc/self/mountinfo
déposer.“Nous avons exploité avec succès cette écriture hors limites incontrôlée et obtenu des privilèges root complets sur les installations par défaut d’Ubuntu 20.04, Ubuntu 20.10, Ubuntu 21.04, Debian 11 et Fedora 34 Workstation”, ont déclaré des chercheurs de Qualys, la société de sécurité qui a découvert la vulnérabilité. et créé un code de preuve de concept qui l’exploite, écrit “Les autres distributions Linux sont certainement vulnérables et probablement exploitables.”
L’exploit décrit par Qualys s’accompagne d’une surcharge importante, en particulier d’environ 1 million de répertoires imbriqués. L’attaque nécessite également environ 5 Go de mémoire et 1 million d’inodes. Malgré les obstacles, un représentant de Qualys a décrit le PoC comme “extrêmement fiable” et a déclaré qu’il fallait environ trois minutes pour le terminer.
Voici un aperçu de l’exploit :
1/ Nous mkdir() une structure de répertoires profonde (environ 1 million de répertoires imbriqués) dont la longueur totale du chemin dépasse 1 Go, nous la montons en liaison dans un espace de noms d’utilisateur non privilégié et nous la rmdir().
2/ Nous créons un thread qui vmalloc()ate un petit programme eBPF (via BPF_PROG_LOAD), et nous bloquons ce thread (via userfaultfd ou FUSE) après que notre programme eBPF a été validé par le vérificateur eBPF du noyau mais avant qu’il ne soit compilé en JIT par le noyau.
3/ Nous ouvrons() /proc/self/mountinfo dans notre espace de noms d’utilisateur non privilégié et commençons à lire() le long chemin de notre répertoire monté par liaison, écrivant ainsi la chaîne “//deleted” avec un décalage d’exactement -2 Go- 10B sous le début d’un tampon vmalloc()é.
4/ Nous faisons en sorte que cette chaîne “//deleted” écrase une instruction de notre programme eBPF validé (et donc annule les contrôles de sécurité du vérificateur eBPF du noyau) et transforme cette écriture hors limites incontrôlée en divulgation d’informations et en une écriture hors limites limitée mais contrôlée.
5/ Nous transformons cette écriture hors limites limitée en une lecture et écriture arbitraire de la mémoire du noyau en réutilisant les belles techniques btf et map_elem de Manfred Paul de :
https://www.thezdi.com/blog/2020/4/8/cve-2020-8835-linux-kernel-privilege-escalation-via-improper-ebpf-program-verification
Qualys a une description séparée ici.
Les personnes exécutant Linux doivent vérifier auprès du distributeur pour déterminer si des correctifs sont disponibles pour corriger la vulnérabilité. Les utilisateurs de Windows doivent attendre les conseils de Microsoft et des experts en sécurité externes.