pypi

Vendredi, le Python Bundle Index (PyPI), le référentiel officiel des projets Python open up-resource tiers a annoncé son intention d’imposer une exigence d’authentification à deux facteurs pour les mainteneurs de projets “critiques”.

Bien que de nombreux membres de la communauté aient salué cette décision, le développeur d’un projet Python populaire a décidé de supprimer son code de PyPI et de le republier pour invalider le statut “critique” attribué à son projet.

PyPI déploie 2FA pour les projets du best 1 %

Hier, les administrateurs du registre PyPI ont annoncé qu’ils étaient en practice d’introduire une exigence d’authentification à deux facteurs (2FA) pour les projets jugés “critiques”.

Tout projet PyPI représentant le top rated 1 % des téléchargements au cours des 6 derniers mois ainsi que les dépendances de PyPI ont été désignés critiques.

“Afin d’améliorer la sécurité générale de l’écosystème Python, PyPI a commencé à implémenter une exigence d’authentification à deux facteurs (2FA) pour les projets critiques. Cette exigence entrera en vigueur dans les mois à venir”, ont annoncé les administrateurs dans un short article de site.

De in addition, les mainteneurs de projets critiques se voient offrir des clés de sécurité matérielles gratuites, avec le soutien de l’équipe de sécurité Google Open Source, un sponsor de Python Computer software Basis (PSF).

L’initiative fait suite à des incidents répétés récents de piratage de bibliothèques de logiciels légitimes, à la fois dans les écosystèmes npm et PyPI.

L’année dernière, les bibliothèques npm très utilisées, “ua-parser-js”, “coa” et “rc” ont été modifiées par des logiciels malveillants après une compromission de leurs comptes de responsable. En tant que telle, la société mère de npm, GitHub, a pris des mesures pour déployer une expérience de connexion améliorée (options 2FA) pour les développeurs à partir de décembre 2021, avec de nouvelles mises à jour de sécurité annoncées en mai.

Avec les dernières nouvelles concernant le piratage du projet PyPI “ctx”, comme BleepingComputer l’a signalé pour la première fois, et l’affaire s’est avérée moreover tard être une expérience de piratage “éthique” qui a mal tourné, PyPI a suivi l’exemple de GitHub en mettant également en œuvre 2FA pour les comptes de responsable.

“S’assurer que les projets les as well as largement utilisés disposent de ces protections contre la prise de contrôle de compte est une étape vers nos initiatives furthermore larges pour améliorer la sécurité générale de l’écosystème Python pour tous les utilisateurs de PyPI”, explique les administrateurs de PyPI qui ont également partagé un tableau de bord montrant furthermore de 3 818 projets PyPI et 8 218 comptes d’utilisateurs PyPI qu’ils ont identifiés comme “critiques” et qui seront probablement invités à adopter 2FA.

Malgré cela, additionally de 28 000 comptes d’utilisateurs PyPI (y compris ceux ne pas associés à un projet “critique”) ont volontairement activé 2FA.

Le développeur repousse le 2FA obligatoire

Bien que la plupart [1, 2, 3] ont réagi favorablement à cette décision et ont salué l’initiative de PyPI visant à améliorer la sécurité globale de la chaîne d’approvisionnement logicielle, certains ne l’ont pas fait.

Markus Unterwaditzer, développeur du projet PyPI « atomicwrites » a décidé de supprimer son code du registre après avoir reçu un « Félicitations ! e-mail de PyPI informant le développeur que son projet a été jugé critique et nécessite désormais une authentification à deux facteurs.

Remarque, Unterwaditzer écritures atomiques aurait est téléchargé as well as de 6 hundreds of thousands de fois dans un mois donné.

Certains ont comparé ce mouvement à la Incident du coussinet gauche de 2016 qui impliquait un autre développeur qui a presque cassé World-wide-web en retirer ses projets JavaScript critiques du registre npm.

Bien que, dans ce cas, Unterwaditzer ait simplement republié des versions de “atomicwrites” pour réinitialiser le nombre de téléchargements de son projet (et donc son statut de projet “critique” attribué par PyPI) au lieu de retirer définitivement son code. En revanche, les circonstances entourant l’incident du « pad gauche » étaient quelque peu différentes et impliquaient un litige de marque.

“J’ai décidé de déprécier ce paquet. Bien que je regrette d’avoir supprimé le paquet et d’avoir fini par activer 2FA, je pense que le changement soudain de règles de PyPI et le comportement strange de la suppression du paquet ne valent pas la peine de maintenir le logiciel Python de cette popularité gratuitement. Je préfère simplement écrire du code pour le plaisir et ne m’inquiéter de la sécurité de la chaîne d’approvisionnement que lorsque je suis réellement payé pour le faire », a écrit Sous-waditzer.

BleepingComputer a observé qu’Unterwaditzer a en effet republié toutes les versions de son projet peu de temps après les avoir supprimées au cours des dernières 24 heures :

Le projet PyPI atomicwrites republié
Variations ‘atomicwrites’ du projet PyPI republiées aujourd’hui (Ordinateur Bip)

D’autres membres de la communauté sont également intervenus sur le sujet :

Armin Ronacher, le créateur du micro framework Internet basé sur Python. Flask a soutenu:

“…lorsque je crée un projet Open Supply, je ne choisis pas de créer un deal ‘critique’. Cela devient cela par adoption au fil du temps,” a écrit Ronacher.

“Pour le instant, la conséquence d’être un deal critique est assez légère : il vous suffit d’activer 2FA. Mais une ligne a été tracée maintenant et je ne sais pas pourquoi ce ne serait pas dans [PyPI’s] dans l’intérêt de mettre en position de nouvelles restrictions.”

“Au lieu de mettre le fardeau sur l’utilisateur des offers, nous empilons maintenant des choses sur le développeur qui y consacre déjà son propre travail et son temps. Du issue de vue d’Index, il y a un avantage à ne pas appliquer de règles à tout le monde vehicle certaines de ces règles peuvent rendre l’utilisation de l’index fastidieuse, mais mettre la demand uniquement sur les deals critiques ne nuit pas autant à l’adoption », écrit encore le développeur.

Les incidents répétés de logiciels malveillants et les attaques impliquant des composants logiciels open supply ont forcé les administrateurs de registre à renforcer la sécurité sur leurs plates-formes. Il reste à voir dans quelle mesure la cost supplémentaire de sécuriser leurs projets, en furthermore de les développer, s’alignerait sur les attentes d’un développeur de logiciels open up source.