Introduction
Une attaque massive a visé les packages npm, avec 314 packages compromis par un attaquant qui a pris le contrôle du compte atool sur npm. Les versions compromises incluent des packages populaires tels que size-sensor, echarts-for-react et @antv/scale.
Contexte Technique
L'attaque a consisté en deux vagues automatisées de publication de versions compromises, avec un total de 637 versions malveillantes publiées. Les packages compromises ont été modifiés pour inclure un hook preinstall qui exécute un script Bun obfusqué, ainsi qu'une entrée optionalDependencies qui pointe vers des commits imposteurs dans le référentiel GitHub antvis/G2.
Le payload de l'attaque est un script Bun obfusqué qui vise à voler des informations d'identification sensibles, notamment des clés SSH, des tokens GitHub et des informations de connexion AWS. Les données volées sont exfiltrées via des commits Git dans des référentiels GitHub publics créés avec les tokens compromis.
Analyse et Implications
L'attaque a des implications importantes pour la sécurité des projets qui utilisent les packages compromis. Les attaquants peuvent utiliser les informations d'identification volées pour accéder à des ressources sensibles et exécuter des actions malveillantes. Les utilisateurs de npm doivent être vigilants et prendre des mesures pour se protéger contre de telles attaques.
Perspective
Il est essentiel de surveiller les mises à jour de sécurité et les alertes de vulnérabilité pour les packages npm. Les utilisateurs doivent également être prudents lors de l'installation de packages et vérifier les sources et les versions avant de procéder. Des outils tels que Package Manager Guard (pmg) peuvent aider à évaluer les packages contre les menaces avant leur installation.