Beveiligingsonderzoekers van Checkmarx waarschuwen voor een nieuwe malwarecampagne binnen het npm-ecosysteem waarbij het kwaadaardige pakket indexed-btree de legitieme sorted-btree bibliotheek imiteert. In tegenstelling tot eerdere aanvallen maakt deze malware geen gebruik van de gebruikelijke preinstall- of postinstall-scripts, maar verbergt het zijn schadelijke code in een reguliere runtime-functie van het pakket.
De kwaadaardige code is direct ingebed in de methode BTree.prototype.set, die bij ontvangst van een specifieke sleutel een geobfusceerde loader start als een losstaand Node.js-proces. Deze loader verzamelt vervolgens systeeminformatie zoals besturingssysteem, hostnaam, CPU, geheugen en uptime, en exfiltreert deze data via hardcoded Slack-kanalen en Telegram-chats. De command-and-control (C2) serveradressen zijn verborgen in een smart contract op de Sepolia Ethereum testnet blockchain, waardoor het moeilijker wordt om de infrastructuur offline te halen.
De malware maakt gebruik van cryptografische sleutels om een gedeeld geheim te creëren met een publieke sleutel uit de blockchain, waarmee een tweede fase payload wordt ontsleuteld. Checkmarx meldt dat de malware zichzelf opruimt door bestanden te verwijderen en de triggercode uit de prototype-functie te wissen. Het kwaadaardige pakket werd bijna 2 miljoen keer per week gedownload voordat het op 3 september 2026 uit de npm-registry werd verwijderd, ongeveer 11 weken na de eerste release volgens een onafhankelijke analyse van Blogspan-auteur Alexander Baumgärtner.
Naast indexed-btree identificeerde Checkmarx nog negen andere npm-pakketten die aan dezelfde campagne gekoppeld zijn, waaronder btree-core met meer dan 1,9 miljoen downloads. De aanvallers probeerden de pakketten legitiem te laten lijken door een GitHub-repository met veel commits te onderhouden, terwijl de kwaadaardige code buiten de repository bleef. Het gebruikte GitHub-account had een door AI gegenereerde profielfoto. De campagne is nog gaande en Checkmarx heeft indicatoren van compromittering (IOC's) gedeeld om detectie en monitoring te ondersteunen.










Reacties
Geef een reactie
Vereiste velden zijn gemarkeerd met *