Trois failles de sécurité de haute gravité non corrigées ont été révélées dans le contrôleur NGINX Ingress pour Kubernetes et pourraient être utilisées par un acteur malveillant pour voler les informations d’identification secrètes du cluster.

Les vulnérabilités sont les suivantes –

  • CVE-2022-4886 (score CVSS : 8,8) – La désinfection du chemin Ingress-nginx peut être contournée pour obtenir les informations d’identification du contrôleur ingress-nginx
  • CVE-2023-5043 (score CVSS : 7,6) – L’injection d’annotations Ingress-nginx provoque l’exécution de commandes arbitraires
  • CVE-2023-5044 (score CVSS : 7,6) – Injection de code via l’annotation nginx.ingress.kubernetes.io/permanent-redirect

« Ces vulnérabilités permettent à un attaquant qui peut contrôler la configuration de l’objet Ingress de voler les informations d’identification secrètes du cluster », a déclaré Ben Hirschberg, CTO et co-fondateur de la plateforme de sécurité Kubernetes ARMO, à propos des CVE-2023-5043 et CVE-2023-. 5044.

Une exploitation réussie de ces failles pourrait permettre à un adversaire d’injecter du code arbitraire dans le processus du contrôleur d’entrée et d’obtenir un accès non autorisé à des données sensibles.

CVE-2022-4886, résultat d’un manque de validation dans le « spec.rules[].http.chemins[].path », permet à un attaquant ayant accès à l’objet Ingress de siphonner les informations d’identification de l’API Kubernetes du contrôleur d’entrée.

« Dans l’objet Ingress, l’opérateur peut définir quel chemin HTTP entrant est acheminé vers quel chemin interne », a noté Hirschberg. « L’application vulnérable ne vérifie pas correctement la validité du chemin interne et peut pointer vers le fichier interne contenant le jeton du compte de service qui constitue l’identifiant du client pour l’authentification auprès du serveur API. »

En l’absence de correctifs, les responsables du logiciel ont publié des mesures d’atténuation qui impliquent d’activer l’option « strict-validate-path-type » et de définir l’indicateur –enable-annotation-validation pour empêcher la création d’objets Ingress avec des caractères non valides et imposer des restrictions supplémentaires.

ARMO a déclaré que la mise à jour de NGINX vers la version 1.19, ainsi que l’ajout de la configuration de ligne de commande « –enable-annotation-validation », résout CVE-2023-5043 et CVE-2023-5044.

« Bien qu’elles pointent dans des directions différentes, toutes ces vulnérabilités pointent vers le même problème sous-jacent », a déclaré Hirschberg.

« Le fait que les contrôleurs d’entrée aient accès aux secrets TLS et à l’API Kubernetes, de par leur conception, en fait des charges de travail avec une portée de privilèges élevée. De plus, comme il s’agit souvent de composants publics accessibles sur Internet, ils sont très vulnérables au trafic externe entrant dans le cluster par leur intermédiaire. »

A lire également