La vulnérabilité Argo CD laisse fuir des informations sensibles des applications Kubernetes

octopus

Une vulnérabilité dans Argo CD, utilisée par des milliers d’organisations pour déployer des applications sur Kubernetes, peut être exploitée dans des attaques pour divulguer des informations sensibles telles que des mots de passe et des clés API.

Suivie sous le nom de CVE-2022-24348, la faille de traversée de chemin a été découverte par l’équipe de recherche en sécurité d’Apiiro et peut entraîner une escalade des privilèges, la divulgation d’informations et des attaques par mouvement latéral.

Les auteurs de menaces peuvent exploiter la vulnérabilité en chargeant un fichier YAML Kubernetes Helm Chart malveillant sur le système cible, permettant l’extraction d’informations sensibles à partir d’autres applications.

Le diagramme ci-dessous montre comment un flux d’attaque utilisant CVE-2022-24348 fonctionnerait.

Flux d’attaque à l’aide de fichiers de valeurs Helm
Source : Apiiro

La condition préalable à une attaque réussie est d’avoir l’autorisation de créer ou de mettre à jour des applications et de connaître ou de deviner le chemin complet vers un fichier contenant du YAML valide.

Le respect de ces exigences ouvre la voie à la création d’un graphique Helm malveillant pour consommer YAML en tant que fichiers de valeurs, accédant éventuellement à des données normalement inaccessibles.

Impact et remédiation

Argo CD est utilisé par des milliers d’organisations dans le monde, la découverte de la vulnérabilité est donc importante et nécessite une attention immédiate de la part des développeurs et des administrateurs.

Les développeurs d’Argo CD envisagé la possibilité d’un acteur malveillant utilisant des fichiers de valeur Helm en dehors du dossier du graphique et a tenté de résoudre le problème avec un nouveau mécanisme de vérification introduit dans la version 1.3.0, publiée en 2019.

Cependant, comme l’a découvert Apiiro maintenant, il existe un moyen de contourner les vérifications anti-traversement de chemin si les fichiers de valeur répertoriés sont conçus pour ressembler à un URI.

L’analyseur spécial traite le chemin du fichier local comme un URI, suppose qu’il a reçu une requête HTTP et l’accepte sans tests de validité supplémentaires.

« Parce que le reposerver utilise une structure de fichier monolithique et déterministe, toutes les autres applications hors limites ont un format et un chemin définis et prévisibles, » – explique Apiiro

« Un attaquant peut assembler un appel direct concaténé à un fichier values.yaml spécifié, qui est utilisé par de nombreuses applications comme vassal pour les valeurs secrètes et sensibles. »

L’impact de ceci est la divulgation du contenu des fichiers sur le même référentiel et l’abus du contenu pour effectuer des actions malveillantes supplémentaires.

L’équipe Apiiro a signalé le problème au fournisseur le 30 janvier 2022 et a reçu une réponse presque immédiate.

Argo CD a publié aujourd’hui une mise à jour de sécurité contenant le correctif pour CVE-2022-24348, avec version 2.3.0-rc4. Il est recommandé à tout le monde de le mettre à niveau car il n’y a pas de solution de contournement.

Pour plus de détails du côté du fournisseur, consultez cet avis de sécurité publié par l’équipe Argo CD sur GitHub.