Microsoft waarschuwt voor een grote npm-aanval op Mastra, een TypeScript-framework voor
AI-agenten en AI-applicaties. De aanval raakt niet direct een blockchain, maar wel de softwarelaag waar crypto, tradingbots, wallets en AI-agenten steeds vaker samenkomen.
Microsoft Threat Intelligence zag meer dan 140 getroffen pakketten binnen de mastra- en @mastra-scopes op npm. De besmette pakketten zijn verwijderd en de publicatierechten van de aanvaller zijn ingetrokken.
De aanval begon volgens Microsoft met de overname van het npm-account ehindero. Dat account had publicatierechten binnen het Mastra-ecosysteem en werd gebruikt om besmette pakketversies te publiceren met een nieuwe dependency: easy-day-js.
Een vertrouwde update werd het aanvalspad
Mastra beschrijft zichzelf als een TypeScript-framework waarmee ontwikkelaars AI-agenten kunnen bouwen. De documentatie noemt agents, workflows, tools, memory, modelproviders en integraties met frameworks als Next.js, React en Express.
Dat maakt de aanval gevoelig. Een besmet pakket in zo’n stack kan terechtkomen in agents die met databases, API’s, dashboards, deployments of handelsdiensten praten.
Een supply-chain-aanval raakt software via een bouwblok.
Niet de app zelf hoeft eerst gehackt te worden.
Een dependency voert al code uit tijdens installatie.
Voor crypto kan dat secrets, API-keys en buildsystemen raken.
easy-day-js deed zich volgens Microsoft voor als de bekende JavaScript-library dayjs. De naam leek vertrouwd, maar het pakket bevatte in versie 1.11.22 een postinstall-hook. Die hook draaide automatisch bij installatie.
De malware hoefde niet eens geïmporteerd te worden
Dit is het gevaarlijkste deel. Microsoft schrijft dat iedere ontwikkelmachine of CI/CD-pipeline die npm install of npm update draaide na publicatie van de besmette versies mogelijk risico liep. Het pakket hoefde niet actief in applicatiecode te worden geïmporteerd.
De postinstall-hook voerde een verborgen dropper uit. Die schakelde TLS-certificaatcontrole uit, maakte verbinding met command-and-control-infra en haalde een tweede payload op. Daarna werd die code als los, verborgen Node.js-proces gestart.
Microsoft noemt daarbij risico voor credentials, tokens, buildomgevingen en downstream software-integriteit. Voor crypto is dat precies de rode zone.
Een aanvaller hoeft niet direct een wallet te openen. Toegang tot GitHub-tokens, deployment secrets, exchange-API’s, backendkeys of agenttools kan genoeg zijn om later schade aan te richten.
AI-agenten vergroten de blast radius
Een gewone webapp toont vaak data. Een agent kan meer. Mastra noemt onder meer data analysis agents, DevOps-automatisering, interne copilots en workflows die met tools werken.
Die kracht verhoogt het risico. Een agentomgeving bevat vaak modelkeys, databaseconnecties, toolrechten en serviceaccounts. Een besmet pakket in de buildstraat kan daardoor dichter bij operationele toegang komen dan een gewone frontend-bug.
Voor cryptoprojecten telt dat dubbel. Tradingbots, walletdashboards, DeFi-analytics en AI-agents kunnen allemaal draaien op JavaScript- of TypeScript-stacks. Veel teams vertrouwen op automatische dependency-updates om snel te bouwen.
Snel bouwen is mooi. Snel besmet raken niet.
GitHub-signaal kwam uit de updateketen zelf
Op GitHub verscheen op 17 juni een melding over verdachte @mastra/*-publicaties. De issue noemde onder meer @mastra/core, @mastra/memory, @mastra/loggers, @mastra/deployer en @mastra/client-js, met easy-day-js als nieuwe dependency.
De melding stelde dat een dependency-updatebot de besmette versie binnen enkele minuten probeerde op te halen. Dat is precies hoe moderne supply-chain-aanvallen kunnen versnellen: automatische tooling doet het werk voor de aanvaller.
Dezelfde issue zag dat eerdere schone versies via GitHub Actions werden gepubliceerd, terwijl de verdachte versies via een anoniem Tutamail-account verschenen. Microsoft beschrijft een vergelijkbare afwijking in publicatiepatroon.
Wat ontwikkelaars nu moeten controleren
Microsoft adviseert om dependency trees te controleren op direct of indirect gebruik van getroffen @mastra-pakketten. Teams moeten ook zoeken naar easy-day-js in node_modules en lockfiles zoals package-lock.json.
Voor crypto- en AI-teams hoort daar meer bij. Controleer CI/CD-logs rond 17 juni. Bekijk welke machines npm install of npm update draaiden. Roteer secrets als een besmette installatie mogelijk is uitgevoerd.
Pin dependencies waar dat past. Test updates gecontroleerd. Beperk install-scripts waar mogelijk. Geef buildomgevingen niet meer rechten dan nodig.
Dat klinkt saai. Dat is beveiliging meestal voordat het misgaat.
De nieuwe crypto-AI-laag krijgt zijn eerste harde lessen
De Mastra-aanval laat zien dat crypto-AI niet alleen risico loopt door slechte tokens, nepagents of misleidende handelsbots. De zwakke plek kan ook lager zitten: in open-source dependencies die iedereen vertrouwt.
Crypto wil automatiseren. AI-agenten willen handelen, zoeken, samenvatten, deployen en verbinden. Ontwikkelaars willen snelheid. Aanvallers kijken naar precies die combinatie.
Voor gebruikers is dit geen bewijs dat elke Mastra-app of AI-agent onveilig is. Voor bouwers is het wel een waarschuwing dat de softwareketen net zo serieus moet worden behandeld als een wallet.
Zodra een agent toegang krijgt tot tools, accounts of financiële workflows, is een besmet npm-pakket geen technisch detail meer. Dan wordt dependencybeheer onderdeel van vermogensbeveiliging.