Guerre en Ukraine : pour protester contre l'invasion russe, un développeur sabote son paquet npm
Pour protester contre l'invasion russe en Ukraine, un développeur a délibérément saboté son paquet npm ce mois-ci.
La bibliothèque en question, node-ipc, est plutôt populaire puisqu'elle dépasse le million de téléchargements chaque semaine depuis le registre npm, et se trouve également dans des frameworks et outils majeurs comme par exemple le CLI (interface en ligne de commande) du framework Vue.js.
Mis au point par le développeur américain Brandon Nozaki Miller, connu sous le pseudonyme RIAEvangelist sur GitHub, node-ipc permet de gérer la communication inter-processus pour Node, en supportant les sockets et les protocoles TCP, TLS et UDP.
La Russie et la Biélorussie en ligne de mire
Dans les dernières versions de sa lib (10.1.1 et 10.1.2), le développeur a incorporé du code malicieux capable d'écraser un maximum de fichiers pour les utilisateurs localisés en Russie ou en Biélorussie en remplaçant l'intégralité de leur contenu par un symbole en forme de coeur.
Le code en question, commité pour la première fois le 7 mars, se charge de consulter l'adresse IP externe du système avant de décider de son passage à l'action.
En complément, les bundles de l'outil à compter de sa version 9.2.2 embarquaient un module prénommé peacenotwar, qui déposait automatiquement un fichier texte "WITH-LOVE-FROM-AMERICA.txt" sur le bureau des utilisateurs de la bibliothèque. Le fichier en question comportait des messages appelant à la paix dans le monde et retranscrits dans plusieurs langues.
Le problème, c'est que dès lors que ces versions étaient utilisées comme dépendances dans un projet, le module peacenotwar se retrouvait embarqué et exécuté, déposant ses fichiers sur un grand nombre de postes.
La version 10.1.3 a rapidement été déployée, sans embarquer la fonctionnalité destructrice, et les versions 10.1.1 et 10.1.2 ont quant à elles été retirées du registre npm, tout comme la version 9.2.2.
De son côté, le développeur a mis à jour l'intro du fichier README de son projet sur GitHub, en indiquant "merci pour toutes les pizzas gratuites, et merci à la police qui est venue me swater, c'était vraiment des types cools".
Une initiative condamnée par la communauté open source
Ce n'est pas la première fois qu'un développeur fait usage d'un de ses projets pour amplifier la portée de son message ou de ses revendications personnelles : en janvier, un autre développeur avait volontairement corrompu 2 de ses paquets npm largement utilisés dans le monde (faker.js et colors.js) afin de protester contre le fait que des sociétés inscrites au classement Fortune 500 exploitaient son code open source sans le financer.
L'incident a également soulevé de nombreuses réactions de mécontentement de la part de la communauté open source, qui juge que ce genre d'initiative immature et dangereuse porte préjudice à la crédibilité des logiciels libres de manière générale.
Nous assistons avec ce genre d'acte à un phénomène nouveau et à fort impact sur la sécurité et la stabilité des projets — à tel point que l'on parle désormais non plus de malware mais de "protestware" —, qui doit désormais être sérieusement pris en compte par les entreprises et utilisateurs d'outils open source.
À lire aussi sur Les Joies du Code :
⚠️ Des milliers de paquets npm exposés en raison de noms de domaine expirés
🇺🇦 Guerre en Ukraine : à travers le chaos russe, l'incroyable résilience des développeurs
À propos de l'auteur
Nicolas Lecointre
Fondateur des Joies du Code, je suis l'actualité et la culture des développeurs depuis 2012. Ancien développeur, je me consacre aujourd'hui entièrement au média.
Offres d'emploi
À lire également
Tech Show Paris 2026 : DevOps Live et quatre autres salons pour un seul badge gratuit, les 18 et 19 novembre
Les 18 et 19 novembre 2026, Tech Show Paris souffle sa 10ème bougie à Paris Expo Porte de Versailles, avec la recette qui fait sa marque : un seul badge...
Articles similaires
Faire tourner des applis Android sur Mac sans émulateur, c'est possible avec Mac.apk
Wine débarque sur OpenBSD, et même The Witcher 3 (Remastered) tourne dessus
Deno rejoint Cloudflare, et son runtime JavaScript n'a plus qu'un an à vivre
L'industrie du disque demande à l'Europe de ficher yt-dlp comme un vulgaire site pirate
Plus de contenu
Quand on donne tout pour boucler le projet la veille de sa livraison
Quand j'ai corrigé THE bug
Quand quelqu'un me dit qu'il y a des erreurs dans mon code
Quand le stagiaire va commencer sa démo
Quand je relis le ticket trois fois et que je comprends toujours pas ce qu'on me demande
Quand je lance la mise en prod
Quand je jette un oeil aux logs après notre passage en prod
Quand j'observe le dev senior modifier le Core du projet
Quand on donne tout pour boucler le projet la veille de sa livraison
Quand j'ai corrigé THE bug
Quand quelqu'un me dit qu'il y a des erreurs dans mon code
Quand le stagiaire va commencer sa démo
Quand je relis le ticket trois fois et que je comprends toujours pas ce qu'on me demande

