Het open source package elementary-data, met meer dan een miljoen downloads per maand, is gecompromitteerd. Aanvallers misbruikten een kwetsbaarheid in een GitHub Actions-workflow om signing keys te stelen en een kwaadaardige versie te publiceren. Gebruikers van versie 0.23.3 worden gevraagd hun credentials direct te roteren. Het zal voor developers inmiddels een bekend fenomeen zijn: open-source packages zijn een populair vervoersmiddel voor de malware van kwaadwillenden.
Afgelopen vrijdag slaagden onbekende aanvallers erin om een kwaadaardige versie van elementary-data te publiceren op de Python Package Index (PyPI) en als Docker-image. De package, bestaande uit een CLI voor het monitoren van prestaties en merkwaardigheden in ML-systemen, heeft meer dan een miljoen downloads per maand. De besmette versie droeg het versienummer 0.23.3 en was zo’n twaalf uur beschikbaar voordat het werd verwijderd.
De aanval volgde een inmiddels traditioneel patroon. Via een kwetsbaarheid in een eigen GitHub Action wisten de aanvallers kwaadaardige code te injecteren via een pull request. Een bash-script draaide vervolgens binnen de ontwikkelaarsomgeving en gaf de aanvallers toegang tot signing keys en account tokens. Daarmee publiceerden zij een package dat nauwelijks van de officiële versie te onderscheiden was.
Dergelijke aanvallen zijn het afgelopen jaar veelvuldig voorgekomen. Denk aan een vergelijkbare compromis via de Nx-package op GitHub afgelopen zomer, ook met een Actions-fout als aanvalsmethode. Aanvallers misbruikten ook bij dat incident pull requests om de workflow te ondermijnen. Onderzoek van ReversingLabs toont dat het aantal kwaadaardige open source-packages in 2026 met 73 procent is gestegen. We meldden recent ook over campagnes als TeamPCP en GlassWorm, die op vergelijkbare wijze ontwikkelomgevingen bestoken.
Gevoelige data buitgemaakt
De kwaadaardige versie van elementary-data zocht actief naar gebruikersprofielen, warehouse credentials, cloudsleutels, API-tokens, SSH-sleutels en de inhoud van .env-bestanden. Gebruikers die 0.23.3 hebben geïnstalleerd of de gerelateerde Docker image draaien, moeten er volgens de ontwikkelaar vanuit gaan dat hun credentials blootgesteld zijn geweest.
Ontwikkelaars die versie 0.23.3 hebben geïnstalleerd, wordt gevraagd de package te verwijderen en te upgraden naar elementary-data==0.23.4. Controleer daarnaast op het aanwezige markerbestand van de malware: /tmp/.trinny-security-update op macOS en Linux, of %TEMP%\.trinny-security-update op Windows. CI/CD-runners zijn extra kwetsbaar omdat die doorgaans brede toegang hebben tot secrets tijdens runtime. De ontwikkelaars hebben de kwetsbaarheid inmiddels gedicht en alle andere GitHub Actions geauditeerd.