Een nieuwe cyberdreiging treft wereldwijd ontwikkelaars die werken met Visual Studio Code. Onderzoekers van Koi Security hebben een aanval ontdekt die ze GlassWorm noemen. Het is een worm die zichzelf via besmette VS Code-extensies verspreidt.
Volgens Koi Security is het de eerste aanval van dit type die gebruikmaakt van zogenoemde onzichtbare Unicode-tekens, waardoor kwaadaardige code letterlijk onzichtbaar wordt voor ontwikkelaars en beveiligingstools.
De aanval begon op de OpenVSX Marketplace, het open-source alternatief voor Microsofts eigen extensiemarkt. Een populaire extensie met de naam CodeJoy bleek besmet toen versie 1.8.3 werd gepubliceerd. De malware voegde zich tussen de reguliere broncode, maar door het gebruik van speciale Unicode-tekens leek het voor het oog alsof er niets aan de hand was. Zelfs een handmatige code-inspectie liet geen afwijkingen zien. Deze techniek doorbreekt het fundamentele principe dat menselijke codecontrole voldoende is om kwaadaardige toevoegingen te ontdekken.
Solana-blockchain als infrastructuur
GlassWorm gaat verder dan een traditionele supply-chain-aanval. De malware maakt gebruik van de Solana-blockchain als command-and-control infrastructuur. In plaats van instructies te ontvangen van een centrale server, leest de worm gegevens uit het memo-veld van Solana-transacties. Dat maakt de communicatie permanent, anoniem en onmogelijk te blokkeren. Als back-upmechanisme gebruikt de aanvaller zelfs een Google Calendar-event waarin een versleutelde link naar nieuwe instructies verborgen zit. Hierdoor blijft het netwerk actief, zelfs als bepaalde onderdelen worden verwijderd.
Koi Security ontdekte dat de worm niet alleen via OpenVSX maar ook via npm en GitHub wordt verspreid, meldt Heise. GlassWorm gebruikt gestolen authenticatietokens om kwaadaardige pakketten te publiceren en legitieme repositories te compromitteren. Daarmee ontstaat een zelfversterkend ecosysteem waarin elke geïnfecteerde ontwikkelaar onbedoeld helpt bij de verdere verspreiding.
De laatste fase van de aanval, bekend als de Zombi-module, installeert bovendien een remote access trojan die de getroffen computer verandert in een SOCKS-proxyserver. De besturing daarvan verloopt via peer-to-peerverbindingen met WebRTC, terwijl commando’s worden uitgewisseld via het BitTorrent-netwerk. Hierdoor ontstaat een volledig gedistribueerde infrastructuur zonder centraal aanstuurpunt.
Malware profiteert van automatische updates
Koi Security meldt dat minstens zeven extensies op 17 oktober besmet raakten en dat inmiddels ook één geïnfecteerde extensie op Microsofts officiële VS Code Marketplace is opgedoken. In totaal zouden zo’n 35.800 installaties getroffen zijn. Omdat VS Code-extensies automatisch updaten, kunnen gebruikers ongemerkt slachtoffer worden zonder iets te installeren of te bevestigen.
Volgens een bericht van Infoworld is dit niet het eerste incident in zijn soort. Vorige maand werd in de open source NPM-repository al een vergelijkbare worm ontdekt, en recent werden ook andere campagnes zoals de TigerJack-aanval op VS Code-extensies blootgelegd. De verspreiding van GlassWorm past in een bredere trend waarbij kwaadwillenden marktplaatsen voor ontwikkeltools gebruiken als ingang voor supply-chain-aanvallen.
Beveiligingsexperts waarschuwen dat organisaties dit als een onmiddellijk beveiligingsincident moeten behandelen. Chief information security officers wordt geadviseerd hun incidentresponsproces te starten, te inventariseren welke extensies in gebruik zijn en verdachte processen te monitoren. Vooral ontwikkelaarsomgevingen gelden als risicovol, omdat extensies in VS Code volledige toegang tot systeem- en netwerkbronnen hebben.