Google Cloud Platform’s Cloud Composer service, built atop Apache Airflow, recently faced a critical vulnerability enabling attackers to escalate privileges by exploiting its PyPI package installation workflow. This security flaw could permit threat actors with limited rights to execute arbitrary code and gain elevated access by deploying malicious Python packages during environment updates. The issue centers around Cloud Composer’s handling of Python dependencies via Cloud Build, which runs installation scripts with high privilege levels, thus creating a vector for privilege escalation.
vulnérabilité de cloud composer exploitant des paquets pypi nuisibles pour l'escalade des privilèges
The vulnerability emerged from Cloud Composer’s integration with Cloud Build, a key component responsible for building and deploying resources inside Google Cloud Platform environments. During the addition or update of Python packages from PyPI, Cloud Composer initiates Cloud Build to handle the installation. Unfortunately, this process entrusts the default Cloud Build service account with broad permissions, including extensive access to other GCP resources.
Les attaquants possédant le composer.environments.update permission could craft malicious PyPI packages containing arbitrary code in pre-install or post-install scripts. When Cloud Composer triggers Cloud Build, these scripts execute automatically under the service account’s elevated privileges, allowing attackers to gain control, manipulate Kubernetes orchestration tasks, or escalate their access across Google Cloud resources.
- 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.
This dangerous chain highlights the interdependency among Google Cloud Platform components—Cloud Composer, Cloud Build, Kubernetes clusters—and stresses the risk inherent in overprivileged service accounts. The attack surface broadens further when compared to similar orchestration platforms like AWS’s managed workflows or Microsoft Azure’s automation offerings, underscoring cross-cloud security challenges.
mécanismes d'escalade des privilèges par le biais de cloud composer et cloud build
Cloud Composer’s design automatically spins up Cloud Build instances to install Python dependencies sourced from PyPI repositories. This automation, while convenient, inadvertently grants a broad attack surface because Cloud Build runs with a service account that has elevated IAM roles like Editor or Owner. The build phase runs pip with scripts from the specified packages, which gets executed without 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.
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
This vulnerability, dubbed by researchers as “ConfusedComposer,” exposes a complex issue in Google Cloud Platform’s permission models. The default service accounts, used for automated workflows, hold permissions unexpectedly broad for installation tasks. This confusion in privilege management significantly increases risk during third-party package integration.
Organizations relying on Cloud Composer for orchestrating Kubernetes and Docker containers must reassess their service account configurations, ideally aligning with best practices from other cloud providers like Red Hat’s OpenShift or HashiCorp’s Vault which offer more granular role control.
- 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.
- Similar issues seen across multi-cloud environments including AWS and 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.