144 packages du framework Mastra compromis le 17 juin 2026 via easy-day-js, typosquat de dayjs. Un RAT cross-platform cible les portefeuilles crypto et l'historique navigateur de 1,1 million de téléchargements hebdomadaires.
En bref
- 144 packages du framework open source Mastra ont été backdoorés le 17 juin 2026 via une dépendance malveillante nommée easy-day-js, typosquat de la librairie dayjs.
- L'attaque exploite un compte npm d'un ancien contributeur dont les droits n'avaient jamais été révoqués, exposant plus de 1,1 million de téléchargements hebdomadaires.
- Les équipes de développement utilisant Mastra doivent immédiatement auditer leurs lock files, révoquer leurs tokens npm et vérifier les traces d'exécution postinstall suspectes.
Comment 144 packages npm ont été backdoorés en 88 minutes
Dans la nuit du 16 au 17 juin 2026, le framework JavaScript Mastra — utilisé par des milliers de développeurs pour construire des applications d'intelligence artificielle — a été au centre d'une attaque de supply chain soigneusement préparée. En l'espace de quatre-vingt-huit minutes, un attaquant a publié cent quarante-quatre versions malveillantes de packages appartenant à l'organisation npm @mastra. L'ensemble de l'opération n'a été détecté que plusieurs heures après sa mise en œuvre, laissant le temps à la charge malveillante de se propager auprès de nombreux développeurs.
Le vecteur initial de cette attaque n'est pas une vulnérabilité technique dans l'infrastructure de npm, mais bien un problème de gestion des accès humains. L'attaquant a utilisé le compte d'un ancien contributeur légitime de Mastra, identifié sous le pseudonyme ehindero, dont les droits de publication n'avaient jamais été révoqués après son départ du projet. Ce type de faille organisationnelle — des comptes fantômes conservant des permissions actives longtemps après la fin de leur contribution — est un vecteur classique et sous-estimé dans les projets open source. La compromission du compte ehindero lui-même reste à ce stade sous enquête, les chercheurs n'excluant ni une attaque par credential stuffing ni un hameçonnage ciblé.
La mécanique de l'attaque repose sur une dépendance tierce malveillante : easy-day-js. Ce package a été initialement publié sur npm le 16 juin 2026 à 7h05 UTC par l'utilisateur sergey2016 comme une copie parfaitement fonctionnelle de la librairie day.js, référence pour la manipulation de dates en JavaScript. En apparence, easy-day-js était un package propre et sans danger. C'est précisément là que réside la sophistication de l'attaque : cette phase de mise en sommeil du package vise à lui faire accumuler de la visibilité et de la légitimité avant que le code malveillant ne soit injecté.
Le 17 juin 2026 à 1h01 UTC, l'attaquant a publié une nouvelle version d'easy-day-js intégrant un payload obfusqué dans le hook postinstall du package.json. Ce hook s'exécute automatiquement dès l'installation du package, avant même que le développeur n'ait lancé son application — et donc avant que tout mécanisme de détection runtime ne soit en mesure de l'intercepter. C'est dans cette fenêtre de 88 minutes, entre 1h01 et 2h29 UTC, que le compte ehindero a publié les cent quarante-quatre nouvelles versions de packages Mastra, chacune intégrant easy-day-js comme nouvelle dépendance.
La charge utile déposée par easy-day-js est un Remote Access Trojan (RAT) multiplateforme écrit en Node.js. Ce RAT s'installe de manière persistante sur Windows via le registre Run, sur macOS via LaunchAgent et sur Linux via systemd ou cron, garantissant sa survie aux redémarrages. Une fois installé, il procède à plusieurs actions critiques : inventaire systématique des extensions de navigateur liées à cent soixante-six portefeuilles de cryptomonnaies (MetaMask, Phantom, Coinbase Wallet), exfiltration de l'historique de navigation complet depuis Google Chrome, et collecte d'informations système pour un profilage de la machine compromise.
Selon les analyses publiées par StepSecurity et OX Security, les packages compromis totalisaient plus de 1,1 million de téléchargements hebdomadaires cumulés. Ce chiffre représente l'étendue maximale de l'exposition potentielle, sachant que tous les environnements ne disposaient pas nécessairement de la version infectée dans leur cache ou leurs lock files. Les développeurs ayant lancé un npm install ou npm ci dans la fenêtre de disponibilité des versions malveillantes — sans lock file strict ou sans vérification d'intégrité — sont considérés comme exposés.
L'équipe de Mastra a réagi dès la détection de l'incident en révoquant les accès du compte ehindero, en supprimant les versions compromises de l'ensemble des packages affectés, et en publiant de nouvelles versions propres dépourvues de la dépendance easy-day-js. npm, désormais sous GitHub/Microsoft, a de son côté supprimé le package easy-day-js et suspendu les comptes impliqués. Une demande CVE formelle a été déposée pour référencer cette attaque, identifiée provisoirement sous le nom EASY_DAY_JS_MASTRA_2026.
Pour les équipes impactées, les étapes de remédiation recommandées incluent : vérifier la présence d'easy-day-js dans les lock files (package-lock.json, yarn.lock, pnpm-lock.yaml), inspecter les logs système à la recherche de processus Node.js anormaux démarrés depuis un répertoire npm, révoquer tous les tokens et secrets potentiellement exfiltrés, et auditer les extensions de navigateur sur les machines des développeurs ayant installé des packages Mastra durant la nuit du 16 au 17 juin.
Un révélateur des fragilités structurelles de l'écosystème npm
L'attaque easy-day-js/Mastra s'inscrit dans une tendance de fond particulièrement préoccupante pour l'écosystème JavaScript : les attaques de supply chain passant par le détournement de comptes de contributeurs légitimes. Ce vecteur est fondamentalement différent des attaques de typosquatting classiques où l'attaquant tente d'imiter le nom d'un package populaire. Ici, l'accès est direct et authentique — ce qui contourne tous les contrôles de réputation basés sur l'ancienneté du compte ou l'historique de publication.
La technique du package endormi utilisée avec easy-day-js mérite une attention particulière. En publiant d'abord une version fonctionnelle et légitime d'une librairie connue, l'attaquant cherche à s'inscrire dans les résultats de recherche npm et à accumuler des téléchargements propres pour passer sous les radars des systèmes de détection comportementale. Cette stratégie de patience est empruntée aux acteurs APT et son apparition dans le contexte de la supply chain JavaScript signale une professionnalisation croissante des attaquants ciblant les développeurs.
Pour les entreprises, cette affaire illustre plusieurs risques concrets. Premièrement, les pipelines CI/CD qui résolvent les dépendances à la volée sans lock file immuable sont structurellement vulnérables — un npm install sans --frozen-lockfile peut introduire une version malveillante même si le code source n'a pas changé. Deuxièmement, l'utilisation de frameworks IA open source comme Mastra dans des contextes de production crée une surface d'attaque souvent sous-évaluée : ces frameworks traitent fréquemment des données sensibles (contexte utilisateur, données métier, clés API). Troisièmement, l'absence de révocation systématique des accès des anciens contributeurs open source est un angle mort persistant, y compris dans des projets bien maintenus.
Du point de vue réglementaire, cet incident renforce l'urgence des exigences de traçabilité des composants logiciels portées par des cadres comme le Cyber Resilience Act européen et les SBOM mandatés dans certains contextes par la directive NIS2. Les organisations soumises à ces obligations doivent documenter leurs dépendances et maintenir la capacité d'identifier rapidement tous les systèmes utilisant un composant compromis — exactement le type de réponse rendu difficile lorsqu'une dépendance transitive est infectée.
Ce qu'il faut retenir
- 144 packages Mastra ont été backdoorés le 17 juin 2026 via easy-day-js, un typosquat de dayjs déposant un RAT multiplateforme ciblant les portefeuilles crypto et l'historique Chrome.
- L'attaque a exploité un compte d'ancien contributeur aux droits non révoqués — un vecteur souvent négligé dans la gestion des identités open source.
- Toute équipe utilisant Mastra doit auditer ses lock files, inspecter les processus Node.js actifs et révoquer les tokens potentiellement exposés dans la fenêtre 1h01-2h29 UTC du 17 juin.
Comment savoir si mon environnement a été compromis par easy-day-js ?
Vérifiez la présence d'easy-day-js dans vos fichiers package-lock.json, yarn.lock ou pnpm-lock.yaml. Recherchez des processus Node.js persistants démarrés depuis un répertoire de modules npm dans les services Windows, les LaunchAgents macOS ou systemd/cron Linux. Inspectez également les extensions de navigateur installées sur les machines des développeurs ayant effectué des installations de packages Mastra dans la nuit du 16 au 17 juin 2026 UTC.
Besoin d'un accompagnement expert ?
Ayi NEDJIMI vous accompagne sur vos projets cybersécurité et IA.
Prendre contactÀ propos de l'auteur
Ayi NEDJIMI
Auditeur Senior Cybersécurité & Consultant IA
Expert Judiciaire — Cour d'Appel de Paris
Habilitation Confidentiel Défense
[email protected]
Ayi NEDJIMI est un vétéran de la cybersécurité avec plus de 25 ans d'expérience sur des missions critiques. Ancien développeur Microsoft à Redmond sur le module GINA (Windows NT4) et co-auteur de la version française du guide de sécurité Windows NT4 pour la NSA.
À la tête d'Ayi NEDJIMI Consultants, il réalise des audits Lead Auditor ISO 42001 et ISO 27001, des pentests d'infrastructures critiques, du forensics et des missions de conformité NIS2 / AI Act.
Conférencier international (Europe & US), il a formé plus de 10 000 professionnels.
Domaines d'expertise
Ressources & Outils de l'auteur
Articles connexes
Databricks Genie One : IA agentique SQL-first pour l'entreprise
Databricks lance Genie One au Data + AI Summit de juin 2026 : un agent IA ancré sur les données SQL via Genie Ontology pour éliminer les hallucinations et automatiser le travail des équipes métier.
Ghostwriter : phishing Gmail et vol de 2FA contre la Pologne
Le groupe APT biélorusse UNC1151/Ghostwriter intensifie en juin 2026 ses attaques de phishing AiTM contre les comptes Gmail de personnalités politiques polonaises, contournant les protections TOTP et SMS.
iRhythm : données médicales volées par ingénierie sociale
iRhythm Holdings a divulgué le 10 juin 2026 une violation de données médicales patients consécutive à une attaque par ingénierie sociale sur des systèmes tiers. Un groupe d'extorsion exige un paiement pour ne pas divulguer publiquement les informations de santé volées.
Un projet cybersécurité ? Parlons-en.
Pentest, conformité NIS 2, ISO 27001, audit IA, RSSI externalisé… nos experts répondent sous 24h pour évaluer votre besoin et vous proposer un accompagnement sur mesure.
Commentaires
Aucun commentaire pour le moment. Soyez le premier à commenter !
Laisser un commentaire