Trois failles de sécurité interdépendantes de haute gravité découvertes dans Kubernetes pourraient être exploitées pour réaliser l’exécution de code à distance avec des privilèges élevés sur les points de terminaison Windows au sein d’un cluster.
Les problèmes, suivis comme CVE-2023-3676, CVE-2023-3893 et CVE-2023-3955, affichent des scores CVSS de 8,8 et affectent tous les environnements Kubernetes avec des nœuds Windows. Les correctifs pour les vulnérabilités ont été publiés le 23 août 2023, suite à une divulgation responsable par Akamai le 13 juillet 2023.
« La vulnérabilité permet l’exécution de code à distance avec les privilèges SYSTEM sur tous les points de terminaison Windows au sein d’un cluster Kubernetes », a déclaré Tomer Peled, chercheur en sécurité d’Akamai, dans un article technique partagé avec The Hacker News. « Pour exploiter cette vulnérabilité, l’attaquant doit appliquer un fichier YAML malveillant sur le cluster. »
Amazon Web Services (AWS), Google Cloud et Microsoft Azure ont tous publié des avis concernant les bogues, qui affectent les versions suivantes de Kubelet :
- Kubelet
- Kubelet
- Kubelet
- kubelet
- Kubelet
- Kubelet
En un mot, CVE-2023-3676 permet à un attaquant disposant des privilèges « appliquer » – ce qui permet d’interagir avec l’API Kubernetes – d’injecter du code arbitraire qui sera exécuté sur des machines Windows distantes avec les privilèges SYSTEM.
« CVE-2023-3676 nécessite de faibles privilèges et place donc la barre basse pour les attaquants : tout ce dont ils ont besoin est d’accéder à un nœud et d’appliquer des privilèges », a noté Peled.
La vulnérabilité, ainsi que CVE-2023-3955, résulte d’un manque de vérification des entrées, permettant ainsi à une chaîne de chemin spécialement conçue d’être analysée en tant que paramètre d’une commande PowerShell, conduisant effectivement à l’exécution de la commande.
CVE-2023-3893, quant à lui, concerne un cas d’élévation de privilèges dans le proxy Container Storage Interface (CSI) qui permet à un acteur malveillant d’obtenir un accès administrateur sur le nœud.
« Un thème récurrent parmi ces vulnérabilités est un manquement dans la désinfection des entrées dans le portage spécifique à Windows de Kubelet », a souligné la plateforme de sécurité Kubernetes ARMO le mois dernier.
« Plus précisément, lors de la gestion des définitions de pods, le logiciel ne parvient pas à valider ou à nettoyer de manière adéquate les entrées des utilisateurs. Cet oubli permet aux utilisateurs malveillants de créer des pods avec des variables d’environnement et des chemins d’hôte qui, une fois traités, conduisent à des comportements indésirables, tels qu’une élévation de privilèges. »