Les cybercriminels ont réussi à prendre le contrôle du paquet NPM coa et à publier des mises à jour 2.0.3, 2.0.4, 2.1.1, 2.1.3 et 3.1.3, contenant des modifications malveillantes. Le paquet coa, qui fournit des fonctionnalités pour analyser les arguments de ligne de commande, connaît environ 9 millions de téléchargements par semaine et est utilisé comme dépendance par 159 autres paquets NPM, y compris react-scripts et vue/cli-service. L'administration NPM a déjà supprimé la version avec les modifications malveillantes et a bloqué la publication de nouvelles versions jusqu'à ce que l'accès au dépôt du développeur principal soit rétabli.
L'attaque a été réalisée par le piratage du compte du développeur du projet. Les modifications malveillantes ajoutées sont similaires à celles utilisées lors d'une attaque sur les utilisateurs du paquet NPM UAParser.js, deux semaines auparavant, mais se limitaient à une attaque uniquement sur la plateforme Windows (des vides étaient laissés dans les blocs de téléchargement pour Linux et macOS). Un fichier exécutable pour le minage de la cryptomonnaie Monero (le mineur XMRig était utilisé) était téléchargé et exécuté depuis un hôte externe et une bibliothèque pour intercepter les mots de passe était installée.
Une erreur a été commise lors de la création du paquet contenant du code malveillant, ce qui a provoqué un échec lors de l'installation du paquet. Par conséquent, le problème a été rapidement identifié et la propagation de la mise à jour malveillante a été bloquée à un stade précoce. L'utilisateur doit s'assurer qu'il a installé la version coa 2.0.2 et, de préférence, ajouter dans le package.json de ses projets une liaison à la version fonctionnelle en cas de nouvelle compromission. npm et yarn : «resolutions»: { «coa»: «2.0.2» }, pnpm : «pnpm»: { «overrides»: { «coa»: «2.0.2» } }.
Source : opennet.ru
