Les logiciels malveillants basés sur DLL ciblent les utilisateurs de Windows après qu’une campagne de phishing a incité le mainteneur à fuir un jeton.
Des packages de configuration populaires pour intégrer plus jolis avec Eslint, les outils de mise en forme de code largement utilisés dans les projets JavaScript et TypeScript, ont été détournés après qu’un mainteneur a été victime d’un schéma de phishing.
Selon une observation de socket, des packages comme Eslint-Config-Pretttier et Eslint-Plugin-Prettier ont été compromis quelques heures après que la société de sécurité de la chaîne d’approvisionnement en open source a signalé une campagne de phishing NPM en utilisant le domaine NPNJS.COM TYPOSQUATED.
« L’attaquant a publié des versions malveillantes sans engagement correspondant ou PRS sur GitHub », a expliqué un article de blog Socket, « y compris une charge utile qui exécute une DLL sur Windows via Rundll32. »
Socket a ajouté que les attaquants avaient publié quatre nouvelles versions d’Eslint-Config-Prettier au moment de la détection.
Le jeton NPM a phis
L’incident a commencé par un e-mail envoyé le 17 juillet, usurpant l’identité du support NPM et liant le domaine npnjs.com du domaine. Ignorant, le responsable est entré dans ses références, donnant son jeton NPM.
Les attaquants ont utilisé le jeton pour publier des versions malveillantes 8.10.1,9.1.1,10.1.6 et 10.1.7 d’Eslint-Config-Prettier, ainsi que des mises à jour empoisonnées pour Eslint-Plugin-Prettier, Synckit, @ PKGR / Core et Napi-Postinstall.
« Les e-mails d’enregistrement et les métadonnées du maintien du maintien sont facilement accessibles dans les informations sur les packages de NPM, que les acteurs menacent les acteurs pour créer des listes cibles de mainteneurs de package », a déclaré l’équipe de socket. Les versions malveillantes transportaient un logiciel malveillant de script d’installation ciblant les machines Windows en chargeant un nœud malveillant-gyp.dll.
Les intégrations plus jolies et Eslint sont des capacités largement utilisées avec des outils populaires comme Depenabot et rénover automatiquement les «dernières» versions des packages. Les pipelines CI / CD et un certain nombre de développeurs ont peut-être déjà inconsciemment installé des versions compromises, selon Socket.
Les alarmes de github automatisées ont déclenché une réponse rapide
La détection a été rapide une fois que les mises à jour ont contourné les alertes habituelles basées sur les engagements de GitHub et augmenté les drapeaux rouges dans les journaux de registre. Le mainteneur a révoqué le jeton compromis, a déprécié les versions malveillantes et collaboré avec le NPM pour les supprimer.
Socket a noté que l’attaque est un exemple de manuel de «compromis de la chaîne d’approvisionnement en plusieurs étapes», qui implique la récolte des références du mainteneur, la publication de versions malveillantes sur NPM et d’infecter potentiellement des milliers de projets.
« Plus de rapports de références compromises sont susceptibles de rouler alors que les attaquants ciblent d’autres mainteneurs, tirant parti des métadonnées NPM grattées et ce qui s’est jusqu’à présent avéré être une campagne de phishing automatisée très convaincante », a-t-il ajouté.
Les développeurs sont recommandés pour auditer les fichiers de verrouillage, effacer les caches, réinstaller des versions propres, épingler des versions de package spécifiques et activer l’authentification à deux facteurs sur les comptes NPM.
NPM, le gestionnaire de packages par défaut du JavaScript Runtime Node.js, a connu une augmentation des abus ces derniers temps, en raison de sa portée et de sa popularité. Le mois dernier, Socket a observé deux packages NPM malveillants capables d’essuyer les systèmes de production avec une seule demande. Auparavant, un score de packages NPM avait été surpris en train de fouiller sur les machines de développement en plus d’une campagne intelligente qui a laissé tomber les packages de frappe-carré avec des voleurs et des codes RCE.



