GlassWorm-malware
En ny bølge af GlassWorm-malwarekampagnen er aktivt rettet mod softwareforsyningskæder ved at udnytte stjålne GitHub-tokens til at injicere ondsindet kode i hundredvis af repositories. Denne operation fokuserer primært på Python-baserede projekter, herunder Django-applikationer, maskinlæringsforskningskode, Streamlit-dashboards og PyPI-pakker.
Angrebsvektoren er bedragerisk simpel, men yderst effektiv: obfuskeret malware tilføjes til almindeligt udførte filer såsom setup.py, main.py og app.py. Enhver udvikler, der installerer afhængigheder via pip install eller udfører klonet kode fra et kompromitteret arkiv, aktiverer ubevidst den skadelige nyttelast.
Indholdsfortegnelse
Stille overtagelser af arkiver: ForceMemo-teknikken
Denne udvikling af kampagnen, nu kaldet ForceMemo, introducerer en skjult metode til at kompromittere datalagre. Trusselaktører får adgang til udviklerkonti og manipulerer datalagre uden at efterlade konventionelle spor.
Ved at ombasere legitime commits med ondsindet kode og tvinge dem til standardgrenen, bevarer angriberne originale commit-metadata, inklusive besked, forfatter og tidsstempel, hvilket effektivt maskerer indtrængen. Denne tilgang eliminerer synlige indikatorer såsom pull-anmodninger eller mistænkelige commit-historikker, hvilket gør detektion betydeligt vanskeligere.
Angrebsudførelseskæde: Fra tyveri af legitimationsoplysninger til levering af nyttelast
ForceMemo-kampagnen følger en struktureret og flertrinnet indtrængningsproces:
- Udviklermiljøer kompromitteres i første omgang via ondsindet Visual Studio Code og Cursor-udvidelser, der indeholder GlassWorm-komponenter, der er designet til at indsamle følsomme legitimationsoplysninger, herunder GitHub-tokens.
- Stjålne legitimationsoplysninger bruges derefter til at indsprøjte obfuskerede Base64-kodede nyttelast i Python-filer på tværs af alle lagre, der er knyttet til den kompromitterede konto.
- Den indlejrede malware udfører miljøtjek, især ved at undgå udførelse på systemer konfigureret med en russisk lokalitet. Den forespørger derefter en Solana blockchain-wallet for dynamisk at hente URL'en til levering af nyttelasten.
- Yderligere nyttelast downloades, herunder krypteret JavaScript designet til kryptovalutatyveri og dataudvinding.
Blockchain-baseret kommando og kontrol: En robust infrastruktur
Et definerende kendetegn ved denne kampagne er dens afhængighed af Solana-blockchainen som en kommando-og-kontrol (C2)-mekanisme. I stedet for traditionelle servere gemmer angriberne payload-URL'er i transaktionsmemo-felter, der er knyttet til specifikke wallet-adresser.
Analysen viser, at aktiviteten knyttet til den primære tegnebog begyndte så tidligt som den 27. november 2025, måneder før der blev observeret kompromitterede datalager. Tegnebogen har behandlet snesevis af transaktioner, hvor nyttelastplaceringer opdateres ofte, nogle gange flere gange om dagen. Denne decentraliserede tilgang forbedrer modstandsdygtigheden og komplicerer nedlukningsindsatsen.
Udvidelse af angrebsfladen: npm og tværøkosysteminfektioner
Kampagnen har udvidet sig ud over Python-økosystemer til JavaScript-forsyningskæder. To React Native npm-pakker, react-native-international-phone-number (version 0.11.8) og react-native-country-select (version 0.3.91), blev midlertidigt kompromitteret og distribueret med indlejret malware.
Disse ondsindede versioner introducerede præinstallations-hooks, der udførte obfuskeret JavaScript, som startede en lignende infektionskæde. Malwaren undgår igen russiske systemer, henter payload-instruktioner via en Solana-wallet og implementerer platformspecifikke trusler.
Udførelsen sker udelukkende i hukommelsen ved hjælp af runtime-teknikker som eval() eller Node.js sandboxing, hvilket efterlader minimale retsmedicinske artefakter. Derudover forhindrer en persistensmekanisme reinfektion inden for et 48-timers vindue ved at gemme et tidsstempel lokalt.
Avancerede unddragelses- og distributionstaktikker
Nyere versioner af GlassWorm demonstrerer øget sofistikering i levering og skjulning. Ved at udnytte extensionPack- og extensionDependencies-mekanismerne distribuerer angribere ondsindede nyttelast transitivt gennem betroede udvidelsesøkosystemer.
Tidligere kampagner, der var knyttet til den samme trusselsaktør, kompromitterede over 151 GitHub-lagre ved hjælp af usynlige Unicode-tegn til at skjule ondsindet kode. Trods forskellige tilslørings- og leveringsstrategier er alle kampagner konsekvent afhængige af den samme Solana-baserede infrastruktur, hvilket bekræfter en samlet operationel ramme.
Ondsindede IDE-udvidelser: Målrettet mod udviklermiljøer
Kampagnen har også infiltreret udviklingsværktøjer gennem en uærlig udvidelse identificeret som reditorsupporter.r-vscode-2.8.8-universal, der er rettet mod Windsurf IDE'en. Forklædt som et R-sprogsunderstøttende plugin, implementerer den en Node.js-baseret informationstyveri.
Når udvidelsen er installeret, henter den krypterede data fra blockchain-transaktioner, udfører dem i hukommelsen og implementerer kompilerede komponenter for at udtrække følsomme data fra Chromium-baserede browsere. Vedvarende data opnås gennem planlagte opgaver og ændringer i Windows-registreringsdatabasen, hvilket sikrer udførelse ved systemstart.
Malwaren er specifikt rettet mod udviklermiljøer, mens den udelukker russiske systemer, hvilket afspejler den adfærd, der er observeret på tværs af andre GlassWorm-varianter.
Indikatorer for skala og effekt
Sikkerhedsanalyser viser, at kampagnen har kompromitteret en betydelig del af open source-økosystemet og påvirket mere end 433 projekter på tværs af flere platforme. Disse omfatter GitHub-lagre (Python og JavaScript), VS Code-udvidelser og npm-biblioteker.
Alle infektionsstier konvergerer i sidste ende om implementeringen af en JavaScript-baseret informationstyver, hvilket fremhæver et ensartet slutmål om indsamling af legitimationsoplysninger og dataudrensning.
- Over 433 bekræftede kompromitterede projekter og pakker
- Flere leveringsvektorer, herunder GitHub, npm og IDE-udvidelser
- Konsekvent brug af Solana blockchain-infrastruktur til levering af nyttelast
- Gentagen udelukkelse af russiske systemer på tværs af alle varianter
Strategisk vurdering: En ny æra af forsyningskædeangreb
ForceMemo-kampagnen repræsenterer en betydelig eskalering af trusler mod softwareforsyningskæden. Kombinationen af skjult manipulation af Git-historik, blockchain-baseret C2-infrastruktur og infektionsvektorer på tværs af platforme demonstrerer et højt niveau af operationel modenhed.
Genbrugen af infrastruktur sammen med udviklende leveringsmekanismer indikerer en adaptiv modstander, der er i stand til at skalere angreb, samtidig med at den opretholder vedholdenhed og undvigelse. Dette skift fra isolerede kompromiser til koordinerede indtrængen på tværs af flere økosystemer understreger den voksende risiko, som moderne udviklingsmiljøer og open source-fællesskaber står over for.