GitHub exigera que tous les utilisateurs qui contribuent au code sur la plateforme activent une ou plusieurs formes d'authentification à deux facteurs (2FA). Selon la société appartenant à Microsoft, seuls 16,5 % des utilisateurs actifs de GitHub et 6,44 % des utilisateurs de npm utilisent 2FA.
« GitHub est dans une position unique ici, simplement en raison de la grande majorité des communautés open source et de créateurs vivant sur GitHub.com, que nous pouvons avoir un impact positif significatif sur la sécurité de l'écosystème global en élevant la barre de l'hygiène de sécurité », a déclaré le directeur de la sécurité (CSO) de GitHub, Mike Hanley. « Nous pensons que c'est vraiment l'un des meilleurs avantages que nous puissions offrir à l'échelle de l'écosystème, et nous nous engageons à nous assurer que nous surmonterons tous les défis ou obstacles pour garantir une adoption réussie. »
GitHub, la plateforme d'hébergement de code utilisée par des dizaines de millions de développeurs de logiciels dans le monde, a annoncé que tous les utilisateurs qui téléchargent (upload) du code sur le site devront activer une ou plusieurs formes d'authentification à deux facteurs (2FA) d'ici la fin de 2023 afin de continuer à utiliser la plateforme.
La nouvelle politique a été annoncée mercredi dans un billet de blog par le directeur de la sécurité (CSO) de GitHub, Mike Hanley, qui a souligné le rôle de la plateforme appartenant à Microsoft dans la protection de l'intégrité du processus de développement logiciel face aux menaces créées par des acteurs malveillants qui prennent le contrôle des comptes des développeurs.
« La chaîne d'approvisionnement du logiciel commence par le développeur. Les comptes de développeurs sont des cibles fréquentes d'ingénierie sociale et de prise de contrôle de compte, et la protection des développeurs contre ces types d'attaques est la première et la plus importante étape vers la sécurisation de la chaîne d'approvisionnement. GitHub a une longue histoire de protection des développeurs grâce à des efforts tels que la recherche et l'invalidation de mots de passe d'utilisateurs connus compromis, offrant une prise en charge robuste des clefs de sécurité WebAuthn et inscrivant tous les éditeurs npm dans une vérification de connexion améliorée. Aujourd'hui, dans le cadre d'un effort à l'échelle de la plateforme pour sécuriser l'écosystème logiciel en améliorant la sécurité des comptes, nous annonçons que GitHub demandera à tous les utilisateurs qui contribuent au code sur GitHub.com d'activer une ou plusieurs formes d'authentification à deux facteurs (2FA ) d'ici fin 2023 ».
Bien entendu, l'expérience utilisateur des développeurs est également prise en compte et Mike Hanley souligne que cette exigence ne se fera pas à son détriment :
« GitHub s'engage à faire en sorte qu'une sécurité de compte solide ne se fasse pas au détriment d'une excellente expérience pour les développeurs, et notre objectif de fin 2023 nous donne l'opportunité d'optimiser pour cela. À mesure que les normes évoluent, nous continuerons d'explorer activement de nouvelles façons d'authentifier les utilisateurs en toute sécurité, y compris l'authentification sans mot de passe. Les développeurs du monde entier peuvent s'attendre à plus d'options pour l'authentification et la récupération de compte, ainsi qu'à des améliorations qui aident à prévenir et à récupérer de la compromission de compte ».
Même si l'authentification multifacteur offre une protection supplémentaire significative aux comptes en ligne, les recherches internes de GitHub montrent que seulement 16,5 % des utilisateurs actifs (environ un sur six) activent actuellement les mesures de sécurité renforcées sur leurs comptes - un chiffre étonnamment bas étant donné que la plateforme puisque la base d'utilisateurs doit être consciente des risques d'une protection par mot de passe uniquement.
En orientant ces utilisateurs vers une norme minimale de protection des comptes plus élevée, GitHub espère renforcer la sécurité globale de la communauté de développement de logiciels dans son ensemble.
« En novembre 2021, GitHub s'est engagé à de nouveaux investissements dans la sécurité des comptes npm à la suite des prises de contrôle de packages npm résultant de la compromission des comptes de développeurs sans 2FA activé. Nous continuons d'apporter des améliorations à la sécurité des comptes npm et nous nous engageons également à sécuriser les comptes des développeurs utilisant GitHub.
« La plupart des failles de sécurité ne sont pas le produit d'attaques exotiques de type "zero-day", mais impliquent plutôt des attaques à moindre coût comme l'ingénierie sociale, le vol ou la fuite d'informations d'identification, et d'autres voies qui offrent aux attaquants un large éventail d'accès aux comptes des victimes et aux ressources auxquelles ils ont accès. Les comptes compromis peuvent être utilisés pour voler du code privé ou apporter des modifications malveillantes à ce code. Cela expose non seulement les individus et les organisations associés aux comptes compromis, mais également tous les utilisateurs du code concerné. Le potentiel d'impact en aval sur l'écosystème logiciel plus large et la chaîne d'approvisionnement en conséquence est substantiel.
« La meilleure défense contre cela est d'aller au-delà de l'authentification de base basée sur un mot de passe. Nous avons déjà pris des mesures dans ce sens en dépréciant l'authentification de base pour les opérations git et notre API et en exigeant une vérification de l'appareil par e-mail, en plus d'un nom d'utilisateur et d'un mot de passe. 2FA est une puissante prochaine ligne de défense ; pourtant, malgré un succès démontré, l'adoption de 2FA dans l'écosystème logiciel reste globalement faible. Aujourd'hui, seulement environ 16,5 % des utilisateurs actifs de GitHub et 6,44 % des utilisateurs de npm utilisent une ou plusieurs formes de 2FA.
« Chez GitHub, nous pensons que notre position unique en tant que foyer de tous les développeurs signifie que nous avons à la fois l'opportunité et la responsabilité d'élever la barre de la sécurité dans l'ensemble de l'écosystème de développement logiciel. Bien que nous investissions profondément dans notre plateforme et dans l'ensemble du secteur pour améliorer la sécurité globale de la chaîne d'approvisionnement des logiciels, la valeur de cet investissement est fondamentalement limitée si nous ne traitons pas le risque permanent de compromission des comptes. Notre réponse à ce défi se poursuit aujourd'hui avec notre engagement à améliorer la sécurité de la chaîne d'approvisionnement grâce à des pratiques sûres pour les développeurs individuels ».
Une expérience déjà menée avec une fraction d'un sous-ensemble d'utilisateurs de la plateforme
GitHub a déjà établi un précédent pour l'utilisation obligatoire de 2FA avec un plus petit sous-ensemble d'utilisateurs de la plateforme, après l'avoir testé avec des contributeurs aux bibliothèques JavaScript populaires distribuées avec le logiciel de gestion de packages npm. Étant donné que les packages npm largement utilisés peuvent être téléchargés des millions de fois par semaine, ils constituent une cible très attrayante pour les opérateurs de logiciels malveillants. Dans certains cas, les hackers ont compromis les comptes des contributeurs npm et les ont utilisés pour publier des mises à jour logicielles qui ont installé des voleurs de mots de passe et des cryptomineurs.
En réponse, GitHub a rendu obligatoire l'authentification à deux facteurs pour les responsables des 100 packages npm les plus populaires depuis février 2022. La société prévoit d'étendre les mêmes exigences aux contributeurs des 500 packages les plus populaires d'ici la fin mai.
L'annonce avait été faite dans un billet en décembre par Myles Borins, Staff Product Manager chez GitHub puis en février pour annoncer que la mesure entrait en vigueur :
« À partir d'aujourd'hui, nous déployons la 2FA obligatoire pour notre première cohorte pour tous les mainteneurs des 100 packages npm les plus populaires. Les mainteneurs qui n'ont pas encore activé la 2FA verront leurs sessions Web révoquées et devront configurer la 2FA avant de pouvoir prendre des mesures spécifiques avec leurs comptes, comme changer leur adresse e-mail ou ajouter de nouveaux mainteneurs aux projets.
« Notre déploiement initial de la vérification de connexion améliorée a eu lieu entre le 7 décembre 2021 et le 4 janvier 2022. Sur la base des résultats de cette phase initiale, nous prévoyons d'inscrire tous les comptes npm à la vérification de connexion améliorée le 1er mars 2022. Avant le 1er mars, nous allons avoir deux dates où nous activerons temporairement la 2FA de tous les comptes pendant une période de 24 heures pour éviter toute surprise lorsque nous le déploierons de manière permanente pour tous les clients, notamment le 16 février et le 23 février.
« En vue de pousser à une adoption plus large de 2FA sur npm, nous avons mis en œuvre et livré un certain nombre d'améliorations axées sur la sécurité pour améliorer l'expérience d'utilisation de 2FA et de gestion de 2FA pour les organisations ».
Les informations de cet essai plus restreint seront utilisées pour faciliter le processus de déploiement de la 2FA sur toute la plateforme, a déclaré Hanley : « Je pense que nous avons un grand avantage du fait que nous l'avons déjà fait sur npm », a-t-il noté. « Nous avons beaucoup appris de cette expérience, en termes de retours que nous avons reçus des développeurs et des communautés de créateurs à qui nous avons parlé, et nous avons eu un dialogue très actif sur ce à quoi ressemble une bonne [pratique] avec eux ».
D'une manière générale, cela signifie fixer un long délai pour rendre l'utilisation de 2FA obligatoire à l'échelle du site et concevoir une gamme de flux d'intégration pour pousser les utilisateurs vers l'adoption bien avant la date limite de 2024, a déclaré Hanley.
La sécurisation des logiciels open source reste une préoccupation urgente pour l'industrie du logiciel, en particulier après la vulnérabilité log4j de l'année dernière. Mais alors que la nouvelle politique de GitHub atténuera certaines menaces, des défis systémiques subsistent : de nombreux projets de logiciels open source sont toujours maintenus par des bénévoles non rémunérés, et la réduction du déficit de financement a été considérée comme un problème majeur pour l'industrie technologique dans son ensemble.
Sources : GitHub (1, 2, 3)
Et vous ?
Que pensez-vous de cette orientation ?
Une initiative qui va contribuer à l'amélioration de la sécurité pour l'écosystème ?
Avez-vous activé l'authentification à deux facteurs sur votre plateforme d'hébergement de code ? Quel facteur préférez-vous (code envoyé par SMS, appel téléphonique, empreinte digitale, etc.) ?
Voir aussi :
La bibliothèque npm populaire "coa" est détournée pour voler les mots de passe des utilisateurs, le paquet npm "rc" serait également compromis
Des logiciels malveillants ont été découverts dans le très populaire paquet npm "ua-parser-js", notamment un mineur de cryptomonnaie et un cheval de Troie
25 bibliothèques JavaScript malveillantes distribuées via le référentiel de packages npm officiel, les chercheurs attribuent ce travail à des « auteurs novices de logiciels malveillants »
GitHub exigera que tous les contributeurs de code utilisent une authentification à deux facteurs d'ici la fin de 2023
Pour renforcer la sécurité de la chaîne d'approvisionnement logicielle
GitHub exigera que tous les contributeurs de code utilisent une authentification à deux facteurs d'ici la fin de 2023
Pour renforcer la sécurité de la chaîne d'approvisionnement logicielle
Le , par Stéphane le calme
Une erreur dans cette actualité ? Signalez-nous-la !