Het diefstalmechanisme was brutaal simpel en effectief. Een ontwikkelaar plakte de API-sleutel van zijn AI-provider in het instellingenpaneel van de plugin en klikte op Toepassen (Apply). Op dat moment werd de sleutel direct in platte tekst verzonden naar een hardgecodeerde server van de aanvaller . Deze uitlek gebeurde in stilte. De plugin bleef gewoon werken, waardoor de gebruiker geen enkele indicatie kreeg dat zijn inloggegevens gestolen waren.
Aikido merkte een bijzonder gewaagd detail op: sommige varianten van de malware boden zelfs een betaald abonnement aan, waarbij slachtoffers een klein bedrag konden betalen om een "werkende" API-sleutel terug te krijgen. Deze sleutel was waarschijnlijk gestolen van een ander gecompromitteerd slachtoffer .
Volgens de analyse van Aikido verscheen de eerste van deze kwaadaardige plugins in oktober 2025. Nieuwe exemplaren werden nog tot in juni 2026 gepubliceerd . Dit betekent dat de campagne meer dan acht maanden actief was op de officiële marktplaats voordat deze werd ontdekt.
Ten tijde van de onthulling door Aikido hadden de 15 plugins gezamenlijk ongeveer 70.000 installaties verzameld onder de zeven frauduleuze leveranciersaccounts . De schaal van de operatie suggereert dat dit waarschijnlijk de eerste gecoördineerde malwarecampagne in zijn soort was die succesvol doordrong tot de JetBrains Marketplace
.
Dit incident stond niet op zichzelf. Het viel samen met een parallelle campagne waarin kwaadwillenden een netwerk van meer dan 88 nep-installatiesites bouwden. Deze sites deden zich voor als Claude Code, Cline en JetBrains, en gebruikten Google Ads om ontwikkelaars naar malware te leiden die inloggegevens stal . Samen wijzen deze operaties op een bewuste, veelzijdige poging om de geheimen van AI-ontwikkelaars te stelen.
De aanval op de JetBrains Marketplace is onderdeel van een verontrustende trend in de softwaretoeleveringsketen. API-sleutels voor grote taalmodellen zijn een primair doelwit voor aanvallers vanwege de toegang die ze bieden. Een gecompromitteerde sleutel kan worden gebruikt om enorme facturen te maken voor AI-gebruik, toegang te krijgen tot privémodellen en interne data, of om door te dringen in verbonden cloudinfrastructuur.
Eerder in 2026 werd het npm-pakket codexui-android, met wekelijks ongeveer 28.000 downloads, betrapt op het stilletjes stelen van OpenAI OAuth-refreshtokens die nooit verliepen . Aanvallers vermomden de gegevensdiefstal als routineus Sentry-telemetrieverkeer. In 2025 compromitteerde een aparte campagne 141 Mastra npm-pakketten om kwaadaardige code te injecteren tijdens de installatie, wat de kwetsbaarheid van ontwikkelingsecosystemen verder aantoonde
.
IDE-plugins vormen een bijzonder waardevol doelwit. Plugins binnen de JetBrains-omgeving draaien met volledige toegang tot het IDE-proces. Dat betekent dat ze broncode kunnen lezen, opgeslagen inloggegevens kunnen benaderen, bestanden kunnen wijzigen en netwerkverbindingen kunnen opzetten . Een kwaadaardige plugin is niet alleen een theoretisch risico, maar een praktische achterdeur naar alles wat een ontwikkelaar aanraakt. Zoals een analyse na het incident opmerkte, is een AI-assistent die in een IDE is geïntegreerd nu een "automatiseringsoppervlak met hoge privileges" dat zich naast broncode, geheimen, SSH-sleutels en cloudcredentials bevindt
.
Het directe risico voor elke ontwikkelaar die de afgelopen maanden heeft geëxperimenteerd met AI-assistent-plugins, is dat hun API-sleutel al in handen is van een aanvaller. Aikido en andere beveiligingsbronnen hebben de respons samengevat in een paar essentiële stappen.
1. Roteer blootgestelde API-sleutels onmiddellijk. Als je tussen oktober 2025 en juni 2026 een AI-assistent-plugin van de JetBrains Marketplace hebt geïnstalleerd en een API-sleutel hebt ingevoerd, ga er dan van uit dat deze is gecompromitteerd. Genereer direct een nieuwe sleutel via het dashboard van je AI-provider en trek de oude in .
2. Controleer je geïnstalleerde plugins. Open de Instellingen/Voorkeuren van je IDE, ga naar Plugins en bekijk de lijst met geïnstalleerde plugins. Schakel elke plugin uit (of verwijder deze) die je niet expliciet herkent en vertrouwt. Herstart de IDE na verwijdering om er zeker van te zijn dat de code volledig uit het geheugen is gewist .
3. Controleer je omgeving op achtergebleven wijzigingen. Het verwijderen van een plugin garandeert niet dat alle effecten ongedaan zijn gemaakt. Plugins kunnen IDE-instellingen en bestanden wijzigen. Controleer op onverwachte configuraties of netwerkgedrag dat blijft bestaan na de verwijdering .
4. Wees kritisch op pluginrechten vóór installatie. Wees vooral wantrouwig over plugins die brede netwerktoegang vragen zonder duidelijke rechtvaardiging. Een tool voor codeopmaak zou bijvoorbeeld niet met externe servers moeten hoeven communiceren.
5. Gebruik API-sleutels met een korte levensduur en beperkte reikwijdte. Waar je AI-provider dit ondersteunt, beperk je sleutels tot specifieke projecten of services en stel je een vervaldatum in. Houd factureringsoverzichten actief in de gaten op ongebruikelijke pieken, een vroeg waarschuwingssignaal voor misbruik van inloggegevens.
6. Meld verdachte plugins. Als je een plugin tegenkomt die zich onverwacht gedraagt, gebruik dan de optie "Plugin rapporteren" op de pagina van de JetBrains Marketplace om het beveiligingsteam van het platform te waarschuwen . Gezamenlijke waakzaamheid blijft een van de meest effectieve verdedigingen tegen supplychain-bedreigingen.
Comments
0 comments