Dans CRI-O, l'environnement d'exécution pour la gestion des conteneurs isolés, une vulnérabilité critique (CVE-2022-0811) a été identifiée, permettant de contourner l'isolation et d'exécuter son propre code sur le système hôte. Si CRI-O est utilisé à la place de containerd et Docker pour gérer le démarrage des conteneurs fonctionnant sous la plateforme Kubernetes, un attaquant peut prendre le contrôle de n'importe quel nœud du cluster Kubernetes. Pour effectuer l'attaque, il suffit d'avoir les droits pour lancer son propre conteneur dans le cluster Kubernetes.
La vulnérabilité est causée par la possibilité de modifier le paramètre sysctl du noyau « kernel.core_pattern » (« /proc/sys/kernel/core_pattern »), auquel l'accès n'était pas bloqué, bien qu'il ne fasse pas partie des paramètres sûrs à modifier qui n'agissent que dans l'espace de noms du conteneur actuel. Grâce à ce paramètre, l'utilisateur du conteneur peut modifier le comportement du noyau Linux concernant le traitement des fichiers de core dans l'environnement hôte et déclencher l'exécution d'une commande arbitraire avec les droits root sur l'hôte, en spécifiant un gestionnaire du type « | /bin/sh -c 'commandes' ».
Le problème se manifeste à partir de la version CRI-O 1.19.0 et a été corrigé dans les mises à jour 1.19.6, 1.20.7, 1.21.6, 1.22.3, 1.23.2 et 1.24.0. Dans les distributions, le problème est présent dans les produits Red Hat OpenShift Container Platform et openSUSE/SUSE, dans les dépôts desquels se trouve le paquet cri-o.
Source : opennet.ru
