Cursor-gebruikers zijn het doelwit geworden van een supply chain-aanval waarbij een malicious Claude Code extension werd verspreid via de Cursor VS Code Extension Marketplace. Het gaat om aangepaste versies van een extensie die ogenschijnlijk legitiem waren, maar in werkelijkheid extra code konden uitvoeren op developer-machines.
De incidentdetails zijn gemeld na detectie en ingrijpen door zowel de partijen achter de extensie als het platform dat de marketplace beheert. Hoewel niet iedereen uiteindelijk via een SSH-tunnel kon worden bereikt, is de kans op ongewenste installaties en persistentie reëel: gebruikers wordt aangeraden om direct te controleren en te verwijderen.
Wat is er gebeurd met de malicious Claude Code extension?
Op 29 oktober zijn door de aanvallers aangepaste versies van de Claude Code-extensie gepubliceerd in de Cursor marketplace. Die versies stonden volgens de melding circa 11 uur online voordat ze werden verwijderd.
Het ging om extensieversies 2.1.312 en 2.1.313. De code was gericht op zowel macOS als Windows-gebruikers, en bevatte JavaScript dat werd uitgevoerd tijdens het laden van modules.
Welke versies en platforms waren betrokken?
Volgens de beschikbare informatie waren deze onderdelen specifiek gekoppeld aan de aanval:
- Versies: 2.1.312 en 2.1.313
- Platformen: macOS en Windows
- Distributie: Cursor VS Code Extension Marketplace
Een schatting van een securityonderzoeker noemt dat er mogelijk ongeveer 5.000 developer-systemen de gemanipuleerde varianten hebben gedownload.
Belangrijk detail: de gemodificeerde versies kwamen niet terecht in de officiële kanalen van de maker en werden ook niet geplaatst op andere distributieplekken zoals de Visual Studio Marketplace, Open VSX of de NPM-registry.
Waarom is dit een supply chain-incident?
Deze aanval draait om het principe dat je software niet alleen via “mainstream” releases hoeft te vertrouwen. Wanneer een extensie via een marketplace wordt aangeboden, kan een aanvaller met toegang tot publicatiekanalen een “tampered copy” neerzetten die in het pad van ontwikkelaars terechtkomt.
In dit geval is gemeld dat een aanvaller misbruik maakte van toegang tot de Cursor marketplace om een bewerkte variant van de extensie te publiceren. De maker heeft aangegeven dat de officiële versies via de eigen kanalen niet door dit incident zijn geraakt.
Welke gedragspatronen toonden de gemanipuleerde code?
De malicious Claude Code extension bevatte een functie die draait tijdens het laden van modules. Daarbij werden meerdere stappen uitgevoerd, gericht op informatieverzameling, het aanpassen van bestanden en het uitvoeren van OS-opdrachten.
De beschreven aanpak volgt ruwweg dit traject:
- Host-reconnaissance: verzamelen van systeem- en omgevingsgegevens
- Proberen een SSH-sleutel te installeren en SSH in te schakelen
- Opzetten van een reverse SSH tunnel
- Configureren van persistentie
- Later, met een vertraagde callback, opnieuw hostinformatie versturen
Onder de waargenomen gegevens die werden verzameld vallen onder meer: hostnaam, gebruikersnaam, besturingssysteem, systeemarchitectuur en de werkmap. Daarnaast is ook melding gemaakt van het ophalen van de globale Git e-mailinstelling. Ook werden platform-specifieke scripts en opstartconfiguraties ingezet om persistentie te bevorderen.
Kon de aanvaller daadwerkelijk inloggen?
Volgens Cursor is de stap richting het daadwerkelijk openen van een SSH-service grotendeels mislukt bij de meeste getroffen omgevingen. De reden: het inschakelen van de lokale SSH-service vereist admin-rechten, en de extensie beschikte daar op de meeste macOS- en Windows-systemen niet over.
Dat betekent echter niet dat het incident “onschadelijk” was. Zelfs wanneer directe toegang via de tunnel niet lukte, kan de payload nog steeds informatie verzamelen, bestanden wijzigen of persistentiemechanismen activeren.
Wat deed Cursor na ontdekking?
Zodra het platform het gemanipuleerde pakket identificeerde, werd het verwijderd en werd de marketplace tijdelijk geschorst om onderzoek te doen. Verder heeft Cursor aangegeven dat het:
- geen andere kwaadaardige extensies heeft gevonden
- alle sleutels heeft geroteerd
- de marketplace opnieuw heeft opgebouwd en heropend
- heeft samengewerkt met de cloudprovider om de server van de aanvaller offline te halen
Ook wordt vermeld dat er geen aanwijzingen zijn dat andere versies van de extensie of officiële distributiekanalen waren aangetast.
Wat moeten gebruikers nu doen?
Cursor adviseert getroffen gebruikers om de gemanipuleerde versies zo snel mogelijk te verwijderen en hun omgeving te controleren. Daarbij benadrukken ze dat uninstallatie alleen mogelijk niet genoeg is, omdat de payload ook standalone persistentiescripts kan neerzetten die blijven draaien.
Concreet wordt aangeraden om:
- Hosts te isoleren waarop tekenen van payload-uitvoering of backdoor-installatie zichtbaar zijn
- de ongeautoriseerde SSH-sleutel te verwijderen
- persistentiemechanismen en processen die verband houden met een reverse tunnel te stoppen
- te beoordelen of een rebuild (opnieuw opbouwen) van de host nodig is
- de beschikbaar gestelde detectiescript en IoC’s (Indicators of Compromise) te gebruiken om besmetting te verifiëren
Het belangrijkste is dat je controles niet beperkt tot de extensie zelf. Kijk ook naar wat er na het draaien van de code op het systeem is achtergebleven.
Extra context: vergelijkbare supply chain aanvallen
Dit incident past in een bredere trend waarin aanvallers toegang zoeken tot distributiekanalen en ontwikkeltools misbruiken. In eerdere meldingen op deze site zagen we bijvoorbeeld hoe supply chain risico’s kunnen leiden tot compromise van tooling en dependencies.
Als je wilt doorgronden waar de zwakke plekken vaak zitten, is het ook nuttig om te lezen over supply chain-incidenten zoals:
Door patronen te herkennen (publicatiekanaal, gemanipuleerde code, persistentie en verborgen uitvoering) kun je je detectie en reactieprocessen sneller opschalen.
Praktische checklist voor je securityaanpak
Wil je dit soort incidenten voortaan sneller afvangen? Dan helpt het om een vaste werkwijze te hanteren rondom extensies en ontwikkelomgevingen.
- Inventariseer welke IDE-extensies op je systemen staan (ook op CI/CD-servers en ontwikkelworkstations).
- Controleer updates: let op wanneer extensies worden hersteld of vervangen door een veilige opvolgversie.
- Monitor gedrag: let op processen die onverwacht tunnels opzetten, scripts uitvoeren of SSH-configuratie wijzigen.
- Werk procedures bij voor isolatie, forensische analyse en rebuild/rollback.
- Gebruik IoC’s en scans om compromissen systematisch uit te sluiten.
Met zo’n aanpak verklein je de kans dat een gemanipuleerde extensie ongemerkt lang kan blijven bestaan in jouw omgeving.
Conclusie
De aanval met de malicious Claude Code extension laat zien hoe krachtig (en gevaarlijk) supply chain misbruik is: een gemanipuleerde variant kan via een marketplace terechtkomen bij developer-systemen, waar vervolgens reconnaissance, bestandswijzigingen en pogingen tot SSH-gebaseerde toegang plaatsvinden.
Omdat de code ook persistentie kan achterlaten, is alleen “extensie verwijderen” niet altijd genoeg. Controleer daarom op basis van de door Cursor gedeelde detectiescript en IoC’s, isoleer verdachte hosts en verifieer of SSH-gerelateerde configuratie en processen zijn achtergebleven.
Bron: https://www.securityweek.com/malicious-claude-code-extension-served-in-cursor-supply-chain-attack/
