De FBI heeft een officiele waarschuwing uitgebracht voor TeamPCP, een cybercriminele groep die dit jaar maandenlang breed gebruikte ontwikkel- en beveiligingstools vergiftigde om bij bedrijven binnen te dringen. Opvallend is de concrete maatregel die het opsporingsbureau meelevert: installeer een open-source pakket pas nadat het een minimale leeftijd heeft, als vuistregel zeven dagen. Voor elk Nederlands bedrijf dat op open-source of AI-tooling leunt, is dat een direct toepasbaar stukje beleid.
In de FLASH-melding van 2 juli, afgestemd met het Amerikaanse DHS/CISA, beschrijft de FBI hoe TeamPCP vertrouwde distributiekanalen misbruikte om kwaadaardige code in legitieme pakketten te injecteren, waarna ontwikkelaars die code ongemerkt binnenhaalden. Volgens de waarschuwing van de FBI over TeamPCP ging het onder meer om Trivy, KICS, LiteLLM en de Telnyx Python SDK, stuk voor stuk tools die diep in CI/CD-pijplijnen, cloudomgevingen en beveiligingsworkflows zitten.
Hoe de aanval verliep
Het startpunt was uitgerekend een beveiligingstool. Onderzoekers van Palo Alto's Unit 42 reconstrueerden hoe de aanvallers via een gekaapt serviceaccount kwaadaardige code in 76 van de 77 versietags van de trivy-action wisten te duwen, nadat een eerdere inbraak bij Aqua Security niet volledig was opgeschoond. Met de tokens die daarbij werden buitgemaakt, konden ze doorstoten naar andere projecten.
Zo belandden er twee vergiftigde LiteLLM-versies (1.82.7 en 1.82.8) rechtstreeks op de Python-pakkettenindex PyPI, en werden met gestolen npm-tokens tientallen andere pakketten in minder dan een minuut besmet. Unit 42 doopte de campagne veelzeggend "Weaponizing the Protectors": de tools die je inzet om je te verdedigen, werden zelf de voordeur. Dat maakt deze zaak anders dan een losse vergiftiging, want de besmetting plantte zich via de ene tool naar de volgende voort.

Wat de aanvallers buitmaakten
Eenmaal binnen ging het om de sleutels van het koninkrijk. De ingezette malware, met namen als CanisterWorm en SANDCLOCK, harkte cloud-toegangstokens van AWS, Google Cloud en Azure binnen, plus SSH-sleutels, Kubernetes-secrets en zelfs cryptowallets. Twee zelf-replicerende wormen, Mini Shai-Hulud en een variant genaamd Miasma, verspreidden zich vervolgens dwars door zowel npm als PyPI en vergiftigden onderweg configuratiebestanden. De FBI koppelt de campagne aan meerdere CVE's en waarschuwt dat aangesloten actoren gestolen gegevens nog lang na de eerste inbraak zullen inzetten, inclusief afpersing via een publieke leksite.
De schaal is fors: uit de analyse van de aanval blijkt dat er alleen al ruim 33.000 LiteLLM-instanties via het internet bereikbaar waren op het moment dat de vergiftigde versies live gingen. LiteLLM is een populaire gateway die verkeer naar meer dan honderd AI-modellen routeert, van OpenAI tot Anthropic, en zit daarmee bij veel bedrijven precies op het kruispunt van hun AI-stack en hun cloud-credentials.
De maatregel: laat een pakket eerst rijpen
De kern van het FBI-advies is verrassend laagdrempelig. Kwaadaardige pakketversies worden meestal binnen enkele dagen ontdekt en teruggetrokken, dus wie een nieuw uitgebracht pakket niet meteen installeert maar een minimale leeftijd van zeven dagen afdwingt, loopt veel minder kans het eerste slachtoffer te zijn. Dat is geen aankoop maar een instelling: dependency-bots als Renovate kennen een drempel voor de minimale release-leeftijd, en in je pijplijn pin je versies tot op de hash zodat een stille update je niet verrast.
De FBI stapelt daar nog een reeks concrete stappen bovenop: pin GitHub Actions-workflows op een geverifieerde commit-hash in plaats van een meebewegende versietag, dwing phishing-bestendige MFA af op elk account met publicatierechten, roteer CI/CD-secrets, zet gedragsmonitoring op je pijplijnen, en controleer npm-maintainer-accounts op verlopen herstel-e-maildomeinen, precies het gat waarmee aanvallers publicatierechten overnemen. Deze aanpak sluit naadloos aan op onze eerdere gids over het dichttimmeren van je AI-stack, van een SBOM en pinnen tot op de hash tot het hardenen van LiteLLM. Pijnlijk detail: die gids raadt onder meer Trivy aan om images te scannen, precies de tool die hier het startpunt werd. Geen enkele tool staat boven de keten. En dezelfde werkwijze, een overgenomen maintainer-account, zagen we eerder bij de vergiftiging van ruim 140 Mastra-npm-pakketten met een verborgen wachtwoordsteler.
Wat dit betekent voor Nederlandse bedrijven
De grens van je beveiliging ligt allang niet meer bij je firewall, maar in je dependency-boom: de code van vreemden die je elke dag automatisch binnenhaalt. Het goede nieuws is dat de sterkste verdediging hier geen duur platform is, maar een paar beleidskeuzes die je vandaag kunt maken. Zet een minimale package-leeftijd, pin je versies vast en scan continu, dan verandert een supply-chain-aanval van een onzichtbare ramp in een risico dat je actief beheert. Wie zijn afhankelijkheden behandelt als iets dat je bewust binnenlaat in plaats van iets dat vanzelf komt, heeft het grootste gat al gedicht.
Veelgestelde vragen
Je AI-stack veilig ingericht
Een supply-chain-aanval raakt precies het kruispunt van je tooling, je pijplijn en je cloud-sleutels. Ik denk met je mee, ontwerp en bouw je AI- en softwarestack zo dat pinnen, package-beleid en self-hosted draaien er vanaf het begin in zitten, van idee tot beheer.
Dit artikel is geproduceerd samen met het Agent Team. Meer over de redactie.
