Les dépôts GitHub de Microsoft brièvement compromis dans une attaque de la chaîne d'approvisionnement Miasma
Microsoft a récemment subi un incident de sécurité rapide mais préoccupant sur GitHub, où 73 dépôts de ses organisations Azure et Microsoft ont été temporairement désactivés. Cette perturbation provenait d'une attaque de la chaîne d'approvisionnement, identifiée comme faisant partie de la campagne plus large Miasma/Shai-Hulud, qui vise à voler les identifiants des développeurs.

Le 5 juin, **Microsoft** a pris des mesures décisives, retirant 73 dépôts de ses organisations **Azure**, **microsoft**, **Azure-Samples** et **MicrosoftDocs** sur **GitHub**. Cet incident, contenu en seulement 105 secondes, a été déclenché par la découverte de "contenu potentiellement malveillant" dans ces dépôts.
### La connexion Miasma/Shai-Hulud
Les chercheurs en sécurité ont rapidement lié le compromis à une campagne de la chaîne d'approvisionnement en cours connue sous le nom de **Miasma** ou **Shai-Hulud**. Ce vecteur d'attaque sophistiqué cible les écosystèmes open-source, avec un accent particulier sur le vol des identifiants des développeurs.
Des préoccupations ont été soulevées par la plateforme **OpenSourceMalware**, qui a noté un compromis antérieur en mai impliquant le dépôt 'durabletask' au sein de l'organisation Azure de Microsoft. Cela suggère un nettoyage potentiellement incomplet qui a permis à l'acteur de la menace de revenir.
### Impact immédiat et résolution
Au cours de l'incident, le personnel de GitHub a affiché un message indiquant que les dépôts avaient été retirés en raison d'une "violation des conditions d'utilisation de GitHub". Un représentant de Microsoft a ensuite précisé que la désactivation était due à un "problème de gestion interne" et qu'une enquête était en cours.
La conséquence immédiate la plus notable a été la perturbation des pipelines d'intégration continue, impactant spécifiquement l'action GitHub 'Azure/functions-action'. Les développeurs s'appuyant sur cette action pour déployer **Azure Functions** ont connu des pannes et de la confusion car les workflows échouaient.
Heureusement, tous les dépôts affectés ont depuis été restaurés et sont considérés comme propres et sûrs à utiliser. Microsoft a également informé un petit nombre de clients qui auraient pu télécharger du contenu à partir des dépôts compromis, promettant une communication supplémentaire si des mesures supplémentaires étaient nécessaires.
### Une campagne plus large
L'incident du 5 juin n'est pas isolé. La campagne Miasma a précédemment impacté **Red Hat**, compromettant 32 de ses packages npm. **Cloudsmith**, une société de gestion de la chaîne d'approvisionnement logicielle, a conclu dans un rapport récent que l'environnement Azure de Microsoft sur GitHub et le dépôt 'durabletask' avaient été ciblés via Miasma.
L'attaque aurait exploité un compte GitHub compromis d'un employé de Red Hat pour injecter des workflows malveillants, demandant des **tokens OIDC de GitHub**. Cela a permis à l'attaquant de pivoter des packages npm de Red Hat vers les ressources GitHub de Microsoft.
L'attaque **Shai-Hulud**, une variante de cette campagne, a également été récemment repérée par **Socket**, ciblant 19 packages **PyPI** axés sur la science via un nouveau mécanisme de livraison. **StepSecurity** a également signalé une attaque Shai-Hulud impactant **Pythagora-io/gpt-pilot**, un outil populaire de développement IA open-source.
### Atténuer les risques de la chaîne d'approvisionnement
À la lumière de ces menaces persistantes, il est fortement conseillé aux développeurs de logiciels d'améliorer leurs postures de sécurité. Les recommandations clés incluent :
* **Verrouillage des dépendances de projet :** Épingler les dépendances à des versions spécifiques peut empêcher des mises à jour malveillantes inattendues.
* **Mise en œuvre de délais de plusieurs jours :** L'introduction de délais pour la récupération de nouvelles mises à jour de packages permet un examen plus approfondi.
* **Test des nouvelles versions dans des environnements isolés :** L'isolation des nouvelles versions peut empêcher le code malveillant d'impacter les systèmes de production.
Ces mesures sont cruciales pour se protéger contre le paysage évolutif des attaques de la chaîne d'approvisionnement ciblant les écosystèmes open-source.