Een beveiligings- en privacydashboard met statusmeldingen op een scherm
Nieuws30 juni · 17:076 min leestijd

119 malafide Edge-extensies stalen inloggegevens en 2FA-codes van miljoenen gebruikers

Microsoft verwijderde 119 kwaadaardige Edge-extensies die jarenlang inloggegevens, tweestapscodes en sessiecookies stalen. Samen tot 2,6 miljoen keer geinstalleerd. Een directe reden om je browserextensies na te lopen.

Een browserextensie die belooft advertenties te blokkeren, een video te downloaden of een pagina te vertalen, oogt onschuldig. Toch bleken 119 van zulke extensies in de officiele add-on-store van Microsoft Edge jarenlang inloggegevens, tweestapscodes en sessiecookies te stelen. Microsoft heeft ze verwijderd en meer dan 90 bijbehorende ontwikkelaarsaccounts geschorst. Samen waren de extensies tot 2,6 miljoen keer geinstalleerd. Voor elke organisatie die Edge op de werkplek toelaat, is dit een directe aanleiding om de geinstalleerde extensies na te lopen.

Wat Microsoft aantrof

De campagne, die Microsoft zelf StegoAd noemt naar de combinatie van steganografie en adware, draaide volgens het eigen onderzoek sinds minstens 2021. Een enkele dadergroep zette 119 extensies in de winkel, verspreid over ruim 90 ontwikkelaarsaccounts en gekoppeld aan meer dan tien command-and-control-domeinen die elkaar automatisch konden vervangen. De extensies deden zich voor als alledaagse hulpmiddelen: adblockers, een vpn, een vertaaltool of een video-downloader, met namen als Ads Block Ultimate.

Het sluwe zit in de manier waarop de kwaadaardige code verstopt werd. In plaats van zichtbare scripts gebruikten de makers steganografie: ze verborgen de schadelijke payload in afbeeldingen en lettertypebestanden. Eerst plakten ze JavaScript achter de eindmarkering van PNG-bestanden, later verschoven ze naar WebP-afbeeldingen en zelfs naar WOFF2-fonts, waarbij de tekens van de code in de glyphs van het lettertype zaten. De extensie haalde dat beeld of font op, pelde er via lagen van Base64- en XOR-bewerkingen de echte instructies uit en voerde die pas daarna uit. Een gewone scan van de extensiecode zag niets verdachts.

De moderne Microsoft Edge-browser, op Chromium gebouwd, in een InPrivate-venster. Bron: Lunaeth9 / Wikimedia Commons (CC BY-SA 4.0)
De moderne Microsoft Edge-browser, op Chromium gebouwd, in een InPrivate-venster. Bron: Lunaeth9 / Wikimedia Commons (CC BY-SA 4.0)

Wat de extensies precies buitmaakten

De payload was geen eenvoudige adware. Hij opende een achterdeur waarmee de aanvaller op afstand willekeurige JavaScript in de browser kon draaien, en die toegang werd op meerdere manieren te gelde gemaakt. Bij het inloggen op een Google-account onderschepte de extensie zowel de inloggegevens als de tweestapscode. Ze verzamelde sessiecookies, waarmee een aanvaller een actieve sessie kan overnemen zonder ooit een wachtwoord of tweede factor te hoeven invoeren. En ze oogstte beheerdersgegevens van WordPress-sites, met voorrang voor de drukst bezochte sites.

Daarnaast draaide er klassieke advertentiefraude doorheen: geinjecteerde advertenties en gekaapte affiliate-commissies bij grote webwinkels. Dat de operatie twee jaar lang grotendeels onopgemerkt bleef, zegt iets over hoe lastig dit type misbruik te detecteren is.

Waarom 2,6 miljoen geen 2,6 miljoen slachtoffers zijn

Het getal van 2,6 miljoen is het maximale aantal installaties, niet het aantal daadwerkelijk getroffen gebruikers. De extensies waren namelijk slapers. Na installatie wachtten ze drie tot vijf dagen voordat ze ook maar iets kwaadaardigs deden, zodat ze door de eerste controles glipten. Stond de ontwikkelaarsconsole (DevTools) open, dan hielden ze zich onbeperkt koest. De uitvoering verliep deels op kans, en de servers gaven onderzoekers die de payload probeerden op te halen simpelweg een leeg antwoord terug.

Die ingebouwde voorzichtigheid betekent dat lang niet elke installatie ook echt buitgemaakte data opleverde. Geruststellend is het niet: juist omdat de code zich gedeisd hield, kon de campagne zo lang doordraaien, en weet je als organisatie niet zomaar of een medewerker in de actieve periode is geraakt.

Wat dit betekent voor jouw bedrijf

Browserextensies zijn een onderschat stuk van je aanvalsoppervlak. Ze worden door medewerkers vaak zonder nadenken geinstalleerd, draaien met verregaande rechten binnen de browser en vallen buiten het zicht van veel beheertooling. Een handige adblocker of vertaaltool die stiekem de Google Workspace-login en de bijbehorende tweestapscode meeleest, geeft een aanvaller toegang tot mail, agenda en documenten van het hele bedrijf. En omdat StegoAd ook sessiecookies stal, kan zo'n aanvaller je multifactor-beveiliging volledig omzeilen: met een gekaapte sessie hoeft hij niet meer langs het inlogscherm.

De diefstal van WordPress-beheerdersgegevens raakt bovendien een groot deel van het Nederlandse MKB, waar talloze bedrijfssites op WordPress draaien. Een gekaapte beheeraccount betekent in de praktijk dat een vreemde je website kan herschrijven, malware aan bezoekers kan serveren of je in een volgende aanvalsketen kan gebruiken.

Dit is geen op zichzelf staand incident. Eerder deze maand liet een kwaadaardige Edge-extensie zien hoe een nep-IT-melding via de Native Messaging-functie ransomware een bedrijfsnetwerk in kon trekken, en in Operatie Endgame werden 24 miljoen via infostealers gestolen inloggegevens teruggevonden. De rode draad is steeds dezelfde: gestolen inloggegevens en sessies zijn de grondstof van moderne aanvallen, en de browser is een van de plekken waar ze het makkelijkst weglekken.

Wat je nu moet doen

Loop de geinstalleerde extensies na via edge://extensions en verwijder alles wat je niet herkent of niet meer gebruikt, en vergelijk dat met de lijst van indicatoren die Microsoft heeft gepubliceerd. Stond er een verdachte extensie op een werkplek, behandel die machine dan als mogelijk gecompromitteerd: reset de wachtwoorden van de belangrijke accounts en log actieve sessies uit, want gestolen cookies blijven anders bruikbaar. Microsoft adviseert daarbij om tweestapsverificatie aan te zetten op belangrijke accounts en, waar het kan, over te stappen op hardware-sleutels volgens de FIDO2-standaard, omdat die niet te onderscheppen zijn met de truc die StegoAd gebruikte.

Structureler dwing je in een organisatie af welke extensies zijn toegestaan. Via het groepsbeleid voor Edge kun je een allowlist instellen, zodat medewerkers alleen goedgekeurde extensies kunnen toevoegen en de rest standaard geblokkeerd is. Dat is dezelfde basishygiene die ook in een bredere beveiligingscheck van vijf lagen die je zonder eigen securityafdeling zelf kunt nalopen thuishoort.

De les van StegoAd is ongemakkelijk: dat iets in een officiele winkel staat, betekent niet dat het veilig is. Vertrouwen op de poortwachter alleen is geen beleid. Wie zelf bepaalt wat er in de browser van zijn mensen mag draaien, haalt een van de stilste lekken in zijn organisatie dicht.

Veelgestelde vragen

Alisina Nawabi
Geschreven doorAlisina Nawabi

AI Product Engineer & Solutions Architect

Grip op je werkplek

Een veilige werkplek is geen los product maar een ontwerpkeuze. Ik denk met je mee, richt je tools en beleid zo in dat lekken als deze geen kans krijgen, en automatiseer het beheer ervan, self-hosted waar dat kan.

Meer informatie

Dit artikel is geproduceerd samen met het Agent Team. Meer over de redactie.

Gerelateerde artikelen

Je webbureau heeft je website en e-mail offline gehaald: zo ben je binnen 48 uur weer bereikbaar
Gids
Uitgebreide gids18 min

23 aug 17:00

Je webbureau heeft je website en e-mail offline gehaald: zo ben je binnen 48 uur weer bereikbaar

Je bureau zette de knop om: site en mail liggen plat. Dit draaiboek herstelt eerst je bereikbaarheid en pas daarna het geschil. Welke knop om is, hoe je binnen 24 uur weer mail ontvangt, en of dat opschorten mocht.

Je ex-medewerker levert de bedrijfslaptop en telefoon niet in: zo krijg je het apparaat en de data terug
Gids
Uitgebreide gids14 min

24 aug 09:00

Je ex-medewerker levert de bedrijfslaptop en telefoon niet in: zo krijg je het apparaat en de data terug

Een vertrekker houdt de laptop en de telefoon. Dit is de volgorde waarin je ze terugkrijgt zonder je bewijs, je data of je gelijk weg te gooien: vastleggen, inventariseren, veiligstellen, vergrendelen, sommeren, en pas dan de rechter.

Externe AI-notulisten blokkeren in Teams, Zoom en Google Meet: de instellingen die je als gastheer zet
Gids
Uitgebreide gids12 min

20 aug 17:00

Externe AI-notulisten blokkeren in Teams, Zoom en Google Meet: de instellingen die je als gastheer zet

De AI-notulist van je gesprekspartner is geen tool van hem maar een deelnemer die jij toelaat. Zo zie je wie er meeluistert, zet je de knoppen om in Teams, Zoom en Google Meet, en beslis je wanneer hij binnen mag.

Nepfacturen onder jouw bedrijfsnaam stoppen: DMARC, lookalike-domeinen en je klantcommunicatie
Gids
Uitgebreide gids15 min

19 aug 17:00

Nepfacturen onder jouw bedrijfsnaam stoppen: DMARC, lookalike-domeinen en je klantcommunicatie

Een klant belt dat hij een factuur onder jouw naam al betaald heeft. KVK en de Fraudehelpdesk vertellen je dan wat je moet melden. Dit is het draaiboek dat vertelt wat je moet dichtzetten.

737 nep-VPN-extensies leiden Chrome-verkeer via één Russische proxy
Nieuws
5 min

12 aug 22:33

737 nep-VPN-extensies leiden Chrome-verkeer via één Russische proxy

Beveiligingsbedrijf Socket vond 737 nep-VPN-extensies in de Chrome Web Store die al het browserverkeer door SOCKS5-proxy's van één Russische aanbieder stuurden. Google haalde er 221 weg, ruim vijfhonderd staan er nog.

De kennis van je vertrekkende vakman vastleggen voor zijn laatste werkdag
Gids
Uitgebreide gids13 min

12 aug 17:00

De kennis van je vertrekkende vakman vastleggen voor zijn laatste werkdag

Een vertrekkende vakman neemt de beslissingen mee die alleen hij neemt. Dit is de borgingsronde in vier stappen, met de overdrachtstoets die laat zien of een collega het er echt mee kan.