Présentation

GitHub a mis en place plusieurs mesures pour renforcer la sécurité de la chaîne d'approvisionnement sur npm et GitHub Actions. Ces mesures visent à prévenir les attaques de la chaîne d'approvisionnement, qui ciblent les faiblesses dans les référentiels de packages et les systèmes de CI/CD pour propager rapidement des logiciels malveillants à des centaines de projets open source.

Anatomie des attaques de la chaîne d'approvisionnement

Les attaques de la chaîne d'approvisionnement enchaînent plusieurs faiblesses et nécessitent une approche holistique pour les prévenir. GitHub a étudié ces attaques pour déployer plusieurs améliorations qui les perturbent et limitent leur impact. Les attaques varient dans leur propagation à travers l'écosystème logiciel, mais la plupart suivent des techniques similaires pour gagner un accès initial à un projet, escalader les privilèges et se propager aux utilisateurs et aux logiciels.

Mesures de sécurité mises en place

GitHub a mis en place plusieurs mesures de sécurité pour prévenir les attaques de la chaîne d'approvisionnement, notamment la protection préventive des comptes à impact élevé sur npm, la modification des paramètres par défaut de GitHub Actions pour prévenir l'exécution de code non fiable, et la mise en place d'une politique de contrôle d'accès pour les workflows GitHub Actions. De plus, npm a ajouté la publication sécurisée avec CircleCI, et GitHub Actions a mis en place un pare-feu de réseau pour détecter les activités anormales.

Implications et limites

Les mesures de sécurité mises en place par GitHub visent à perturber les attaques de la chaîne d'approvisionnement et à limiter leur impact. Cependant, il est important de noter que la sécurité de la chaîne d'approvisionnement est un problème complexe qui nécessite une approche continue et proactive. Les utilisateurs doivent rester vigilants et mettre en place des mesures de sécurité supplémentaires pour protéger leurs projets et leurs données.