La vulnérabilité de gcp cloud composer permet aux attaquants d'obtenir un accès élevé par le biais de paquets pypi nuisibles.

Le service Cloud Composer de Google Cloud Platform, basé sur Apache Airflow, a récemment été confronté à une vulnérabilité critique permettant aux attaquants d'élever leurs privilèges en exploitant le processus d'installation des paquets PyPI. Cette faille de sécurité pourrait permettre à des acteurs de la menace disposant de droits limités d'exécuter du code arbitraire et d'obtenir un accès élevé en déployant des paquets Python malveillants lors des mises à jour de l'environnement. Le problème est centré sur la gestion des dépendances Python par Cloud Composer via Cloud Build, qui exécute des scripts d'installation avec des niveaux de privilèges élevés, créant ainsi un vecteur d'escalade des privilèges.

vulnérabilité de cloud composer exploitant des paquets pypi nuisibles pour l'escalade des privilèges

La vulnérabilité est apparue lors de l'intégration de Cloud Composer avec Cloud Build, un composant clé responsable de la construction et du déploiement des ressources dans les environnements Google Cloud Platform. Lors de l'ajout ou de la mise à jour de paquets Python à partir de PyPI, Cloud Composer lance Cloud Build pour gérer l'installation. Malheureusement, ce processus confie au compte de service Cloud Build par défaut des autorisations étendues, notamment un accès étendu à d'autres ressources GCP.

Les attaquants possédant le composer.environments.update La permission de créer des paquets PyPI malveillants contenant du code arbitraire dans les scripts de pré-installation ou de post-installation. Lorsque Cloud Composer déclenche Cloud Build, ces scripts s'exécutent automatiquement sous les privilèges élevés du compte de service, ce qui permet aux attaquants de prendre le contrôle, de manipuler les tâches d'orchestration Kubernetes ou d'escalader leur accès à travers les ressources de Google Cloud.

  • Cloud Composer s'appuie sur Cloud Build pour l'installation des paquets PyPI.
  • Le compte de service Cloud Build par défaut dispose d'autorisations GCP étendues.
  • Les paquets PyPI malveillants exécutent du code dans l'environnement de construction avec un accès élevé.
  • Le vecteur d'attaque repose sur l'utilisation abusive de composer.environments.update autorisation.

Cette chaîne dangereuse met en évidence l'interdépendance entre les composants de Google Cloud Platform - Cloud Composer, Cloud Build, clusters Kubernetes - et souligne le risque inhérent aux comptes de service surprivilégiés. La surface d'attaque s'élargit encore si on la compare à des plateformes d'orchestration similaires telles que les flux de travail gérés d'AWS ou les offres d'automatisation de Microsoft Azure, ce qui met en évidence les défis en matière de sécurité inter-cloud.

mécanismes d'escalade des privilèges par le biais de cloud composer et cloud build

La conception de Cloud Composer fait automatiquement tourner les instances de Cloud Build pour installer les dépendances Python provenant des dépôts PyPI. Cette automatisation, bien que pratique, offre par inadvertance une large surface d'attaque car Cloud Build s'exécute avec un compte de service qui a des rôles IAM élevés comme Éditeur ou Propriétaire. La phase de construction exécute pip avec des scripts provenant des paquets spécifiés, qui sont exécutés sans sandboxing.

Le contrôle de cette séquence permet aux attaquants de persister au-delà des changements d'environnement initiaux, de déployer des portes dérobées ou de pivoter latéralement au sein de systèmes distribués gérés par des clusters Kubernetes orchestrés via des workflows Cloud Composer.

  • Cloud Build utilise un compte de service par défaut hautement privilégié.
  • Les paquets PyPI peuvent contenir des scripts d'installation arbitraires exécutés pendant la construction.
  • L'absence de bac à sable rigoureux limite l'emprise des attaquants.
  • Possibilité d'abuser des conteneurs Docker et du code injecté pour un mouvement latéral.
LIRE  La marine américaine teste Starlink pour l'Internet à haut débit sur les navires de guerre de surface
Composant Rôle dans la vulnérabilité Risque encouru Atténuation appliquée
Cloud Composer Lance Cloud Build pour l'installation des paquets Augmentation des privilèges par le biais d'une mise à jour de l'environnement Paramètres d'autorisation restreints, correctif publié
Création d'un nuage Exécute les scripts d'installation des paquets Python Exécution de code arbitraire sur un compte de service privilégié Application du principe du moindre privilège ; amélioration des journaux d'audit
Paquets PyPI Source des scripts d'installation malveillants Exécution d'une porte dérobée, mouvement latéral Le contrôle des développeurs et la vérification des paquets sont recommandés

implications de la confusion dans la gestion des privilèges de la construction en nuage dans le gcp

Cette vulnérabilité, baptisée "ConfusedComposer" par les chercheurs, met en évidence un problème complexe dans les modèles de permission de Google Cloud Platform. Les comptes de service par défaut, utilisés pour les flux de travail automatisés, détiennent des autorisations étonnamment larges pour les tâches d'installation. Cette confusion dans la gestion des privilèges augmente considérablement les risques lors de l'intégration de paquets tiers.

Les organisations qui s'appuient sur Cloud Composer pour orchestrer les conteneurs Kubernetes et Docker doivent réévaluer leurs configurations de compte de service, en s'alignant idéalement sur les meilleures pratiques d'autres fournisseurs de cloud comme OpenShift de Red Hat ou Vault de HashiCorp, qui offrent un contrôle des rôles plus granulaire.

  • Les privilèges du compte de service Cloud Build par défaut dépassent souvent la portée prévue.
  • Les processus automatisés amplifient l'impact de l'utilisation abusive des comptes de service.
  • Des problèmes similaires sont observés dans les environnements multi-cloud, notamment AWS et Microsoft Azure.
  • Nécessité d'intégrer des outils de sécurité tels que Datadog pour surveiller les activités anormales.

Cela met également en évidence les défis de sécurité plus larges auxquels sont confrontés les environnements cloud complexes et conteneurisés, pour lesquels des cyberdéfenses actualisées sont essentielles. Cela nécessite une surveillance proactive et l'application immédiate de correctifs de sécurité, ainsi que des audits réguliers des rôles et des autorisations IAM.

recommandations pour la sécurisation des environnements de compositeurs en nuage contre l'escalade des privilèges

Une atténuation efficace nécessite une approche à plusieurs niveaux ciblant les autorisations, la validation des paquets et la surveillance continue :

  • Appliquer le principe du moindre privilège en limitant composer.environments.update l'accès.
  • Limiter les autorisations par défaut des comptes du service Cloud Build et les remplacer par des comptes personnalisés.
  • Activer la journalisation avancée et la détection des anomalies à l'aide d'outils de télémétrie tels que Datadog.
  • Mettre en place un contrôle strict des paquets PyPI par le biais d'une liste blanche ou de dépôts internes approuvés.
  • Adopter les meilleures pratiques de sécurité des conteneurs pour les environnements Kubernetes et Docker.
Mesure de sécurité But Plates-formes concernées Efficacité
Application du principe de moindre privilège Réduire le risque d'escalade des privilèges Google Cloud Platform, Kubernetes Haut
Vérification des paquets et établissement d'une liste blanche Empêcher l'exécution de codes malveillants PyPI, Cloud Composer Moyenne à élevée
Journalisation et surveillance Détecter les activités anormales et y répondre Datadog, Google Cloud Platform Haut

Les entreprises devraient se tenir informées via récentes informations sur la cybersécurité et évaluer leurs propres expositions en vérifiant si leurs environnements sont vulnérables aux cyberattaques. Le paysage continue d'évoluer rapidement, ce qui incite à une collaboration entre les fournisseurs d'informatique dématérialisée et les prestataires de services de sécurité pour combler ces lacunes critiques.