Dans ce qui est un acte de sabotage délibéré, le développeur à l’origine du populaire package NPM « node-ipc » a livré une nouvelle version falsifiée pour condamner l’invasion russe de l’Ukraine, soulevant des inquiétudes quant à la sécurité de l’open-source et de la chaîne d’approvisionnement en logiciels.

Affectant les versions 10.1.1 et 10.1.2 de la bibliothèque, les modifications introduites par son responsable RIAEvangelist ont provoqué un comportement indésirable en ciblant les utilisateurs avec des adresses IP situées en Russie ou en Biélorussie, et en effaçant le contenu arbitraire des fichiers et en les remplaçant par un emoji en forme de cœur.

Node-ipc est un module de nœud important utilisé pour la communication inter-processus (IPC) locale et distante avec prise en charge de Linux, macOS et Windows. Il compte plus de 1,1 million de téléchargements hebdomadaires.

« Un abus très clair et un incident critique de sécurité de la chaîne d’approvisionnement se produiront pour tout système sur lequel ce paquet NMP sera appelé, si cela correspond à une géolocalisation de la Russie ou de la Biélorussie », a déclaré le chercheur de Synk, Liran Tal, dans une analyse.

Le problème a reçu l’identifiant CVE-2022-23812 et est noté 9,8 sur 10 sur le système de notation des vulnérabilités CVSS. Les modifications du code malveillant ont été publiées le 7 mars (version 10.1.1), avec une deuxième mise à jour 10 heures plus tard le même jour (version 10.1.1).

Fait intéressant, bien que les modifications destructrices aient été supprimées de la bibliothèque avec la version 10.1., une mise à jour majeure a été poussée après moins de quatre heures (version 11.0.0), qui a importé une autre dépendance appelée « peacenotwar », également publiée par RIAevangelist comme une forme de « protestation non-violente contre l’agression de la Russie. »

« Chaque fois que la fonctionnalité du module node-ipc est appelée, elle imprime sur STDOUT un message extrait du module peacenotwar et place un fichier sur le répertoire du bureau de l’utilisateur avec un contenu relatif à la situation actuelle en temps de guerre de la Russie et de l’Ukraine. « , a expliqué Tal.

Depuis le 15 mars 2022, la dernière version de node-ipc – 11.1.0 – fait passer la version du package « peacenotwar » de 9.1.3 à 9.1.5 et regroupe la bibliothèque NPM « colors », tout en supprimant également les messages de la console STDOUT .

Il convient de noter que « colors », ainsi qu’un autre package appelé « faker », ont tous deux été intentionnellement sabotés plus tôt en janvier par son développeur Marak Squires en introduisant des boucles infinies dans le code source, brisant ainsi d’autres applications qui dépendaient des bibliothèques.

Selon Bleeping Computer, qui a d’abord signalé la corruption, les changements auraient été des représailles, le développeur notant que « respectueusement, je ne vais plus soutenir les Fortune 500 (et d’autres petites entreprises) avec mon travail gratuit ».

Au contraire, l’idée d’utiliser des modules populaires comme « protestware » pour déployer des charges utiles destructrices et mettre en scène une compromission de la chaîne d’approvisionnement risque de saper la confiance dans les logiciels open source.

« Cet incident de sécurité implique des actes destructeurs de corruption de fichiers sur disque par un responsable et leurs tentatives de cacher et de reformuler ce sabotage délibéré sous différentes formes », a déclaré Tal. « Bien qu’il s’agisse d’une attaque avec des motivations motivées par la protestation, elle met en évidence un problème plus large auquel est confrontée la chaîne d’approvisionnement logicielle : les dépendances transitives dans votre code peuvent avoir un impact énorme sur votre sécurité. »

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *