L’attaque du package SAP npm met en évidence les risques dans les outils de développement et les pipelines CI/CD

Lucas Morel

Les chercheurs affirment que la campagne ciblait les informations d’identification des développeurs et les secrets du cloud tout en abusant des configurations fiables des outils de publication et de codage de l’IA.

Une attaque de la chaîne logistique contre les packages npm liés à SAP a mis en lumière les outils de développement et la création de flux de travail sur lesquels les entreprises s’appuient pour produire des logiciels.

La campagne, appelée « mini Shai-Hulud », concernait les packages utilisés dans l’écosystème de développement d’applications JavaScript et cloud de SAP.

Les versions malveillantes ajoutaient du code au moment de l’installation qui pourrait voler les informations d’identification du développeur, les jetons GitHub et npm, les secrets GitHub Actions et les informations d’identification cloud des environnements AWS, Azure, GCP et Kubernetes.

Des chercheurs de SafeDep, Aikido Security, Wiz et plusieurs autres sociétés de sécurité ont déclaré que les packages concernés incluaient mbt@1.2.48, @cap-js/db-service@2.10.1, @cap-js/postgres@2.2.2 et @cap-js/sqlite@2.2.2.

Les versions suspectes ont été publiées le 29 avril et ont ensuite été remplacées par des versions sécurisées.

Le malware a crypté les données volées et les a envoyées vers des référentiels publics GitHub créés à partir des propres comptes des victimes, selon les chercheurs. Il a également utilisé des jetons GitHub et npm volés pour ajouter des flux de travail GitHub Actions malveillants aux référentiels accessibles et publier des versions de packages empoisonnées.

SafeDep a déclaré que les attaquants avaient abusé d’une lacune de configuration dans la configuration de publication approuvée OIDC de npm pour les packages @cap-js concernés. La compromission de MBT, quant à elle, est soupçonnée d’impliquer un jeton NPM statique.

Les attaquants ont également tenté de persister via les fichiers de configuration Visual Studio Code et Claude Code. Cette technique place les postes de travail des développeurs et les outils de codage assistés par l’IA au centre des préoccupations en matière de sécurité de la chaîne d’approvisionnement.

Implications pour les RSSI

Pour les RSSI, ce cas montre à quelle vitesse une dépendance corrompue peut dépasser le processus de construction. Cela ajoute également aux inquiétudes selon lesquelles les environnements de développement, bien qu’ils soient essentiels à la fourniture de logiciels d’entreprise, ne sont toujours pas gouvernés avec la même rigueur que les systèmes de production.

« Le fait que le malware ait été conçu pour récolter les jetons GitHub et npm, les secrets GitHub Actions et les informations d’identification cloud d’AWS, Azure, GCP et Kubernetes en un seul passage vous indique que les attaquants traitent désormais le poste de travail du développeur comme une clé principale », a déclaré Sakshi Grover, directeur de recherche senior pour IDC Asia Pacific Cybersecurity Services.

Une seule identité de développeur compromise dans un pipeline CI/CD peut donner aux attaquants un accès à la chaîne d’approvisionnement logicielle plus large, leur permettant d’insérer du code malveillant dans des packages que les développeurs en aval peuvent installer avec peu de visibilité sur la falsification.

Ce manque de visibilité reste une préoccupation, a déclaré Grover, citant l’enquête sur la sécurité Asie-Pacifique 2025 d’IDC, qui a révélé que 46 % des entreprises prévoient de déployer l’IA pour l’analyse des risques liés aux tiers et à la chaîne d’approvisionnement au cours des 12 à 24 prochains mois. Pour l’instant, a-t-elle déclaré, de nombreuses organisations en sont encore au stade de la planification et n’ont pas encore mis en œuvre de défenses basées sur l’IA contre des attaques telles que la mini campagne Shai-Hulud.

Sunil Varkey, analyste en cybersécurité, a décrit la campagne comme un cas de « vie aux dépens du développeur », où les attaquants ciblent les développeurs, leurs outils et l’automatisation plutôt que uniquement le progiciel lui-même.

Varkey a déclaré que les attaquants sont allés au-delà de l’empoisonnement des packages npm en compromettant les comptes GitHub du responsable, en abusant de npm OIDC Trusted Publishing et en utilisant des hooks de préinstallation pour publier des logiciels malveillants volant des informations d’identification.

L’élément le plus troublant, a-t-il déclaré, était l’utilisation des fichiers de configuration Visual Studio Code et Claude Code, en particulier .vscode/tasks.json et .claude/settings.json, pour la persistance et la propagation. Cela permettait au malware de s’exécuter lorsqu’un référentiel infecté était ouvert dans Visual Studio Code ou lorsqu’une session Claude Code démarrait, a-t-il déclaré.

« L’attaquant transforme l’expérience moderne du développeur en un vecteur d’attaque », a déclaré Varkey.

CyberattaquesCybercriminalitéSécuritéOutils de développementDéveloppement de logiciels