Intégration continue et livraison continue (CI/CD) les erreurs de configuration découvertes dans le cadre d'apprentissage automatique TensorFlow, largement utilisé, suscitent des inquiétudes quant aux attaques potentielles de la chaîne d'approvisionnement..
Vulnérabilités de TensorFlow et risque d'attaques de la chaîne d'approvisionnement
Les chercheurs prétoriens Adnan Khan et John Stawinski ont mis en évidence des vulnérabilités qui auraient pu permettre à des attaquants de compromettre les versions de TensorFlow sur GitHub et PyPi en manipulant les agents de build de TensorFlow via une demande d'extraction malveillante..
L'exploitation de ces erreurs de configuration aurait pu permettre à des attaquants externes de télécharger des versions malveillantes dans le référentiel GitHub., atteindre exécution de code distant sur le coureur GitHub auto-hébergé, et même obtenir un jeton d'accès personnel GitHub (TAPOTER) pour l'utilisateur tensorflow-jenkins.
TensorFlow utilise GitHub Actions pour automatiser la création de ses logiciels, tester, et pipeline de déploiement, avec des coureurs exécutant des tâches dans le flux de travail. La documentation de GitHub met l'accent sur l'utilisation de coureurs auto-hébergés avec des référentiels privés en raison des risques de sécurité potentiels associés aux forks publics..
Le problème identifié permettait à tout contributeur d'exécuter du code arbitraire sur le programme d'exécution auto-hébergé en soumettant une pull request malveillante.. Praetorian a identifié les workflows TensorFlow exécutés sur des coureurs auto-hébergés, révélant que les demandes de fork pull des contributeurs précédents déclenchaient automatiquement les flux de travail CI/CD sans nécessiter d'approbation.
Une enquête plus approfondie a révélé des coureurs auto-hébergés non éphémères avec des autorisations GITHUB_TOKEN étendues, permettre à un attaquant de télécharger des versions, envoyer le code directement vers le référentiel TensorFlow, et compromettre le secret du référentiel JENKINS_TOKEN.
Cette divulgation a incité les responsables du projet TensorFlow à mettre en œuvre des mesures de sécurité cruciales en exigeant l'approbation de tous les flux de travail provenant des requêtes fork pull et en limitant les autorisations GITHUB_TOKEN en lecture seule pour les flux de travail exécutés sur des exécuteurs auto-hébergés.. Ces changements, mis en œuvre d’ici décembre 20, 2023, visant à renforcer la sécurité et à empêcher tout accès non autorisé.
pensées conclusives
Cet incident met en évidence la menace croissante des attaques CI/CD, impactant particulièrement les entreprises d’IA/ML qui s’appuient sur une puissance de calcul importante. Étant donné que de plus en plus d'organisations automatisent leurs processus CI/CD, des mesures de sécurité strictes deviennent impératives pour se protéger contre les vulnérabilités potentielles.
En outre, les chercheurs ont également divulgué des vulnérabilités dans d'autres référentiels publics GitHub, y compris ceux associés à Chia Networks, Microsoft DeepSpeed, et PyTorch, renforçant la nécessité d’évaluations continues de la sécurité dans le paysage évolutif du développement et du déploiement de logiciels.