Hier vind je alle nieuwsberichten van CyberAnt

Magecart aanval maakt 8,8 miljoen slachtoffers wereldwijd

Beveiligingsonderzoekers ontdekten een web-skimmingoperatie die wereldwijd meer dan 8,8 miljoen slachtoffers maakte. Sinds januari 2022 vielen de criminelen legitieme webshops aan, waarbij er in het afrekenproces malware wordt geïnjecteerd om zo creditcardgegevens te stelen.

Magecart

De campagne is een voorbeeld van een Magecart-aanval. Magecart verwijst naar een verzameling criminele groepen die kwaadaardige JavaScript-code injecteren in legitieme online winkels. De naam ontstond bij aanvallen op sites die op het Magento-platform waren gebouwd, maar de methoden zijn in de loop der tijd uitgebreid naar vele andere e-commercesystemen. Het team van Silent Push herleidde de operatie tot een domein, cdn-cookie.com, dat werd gehost op een zogenoemde bullet-proof hostingdienst die voorheen bekendstond als Stark Industries en nu onder Nederlandse eigenaar is omgedoopt tot THE[.]Hosting.

Analyse van de malware

Wanneer een klant een gecompromitteerde afrekenpagina bezoekt, wordt het geïnjecteerde script – vaak recorder.js of tab-gtm.js genoemd – in de browser uitgevoerd. Het controleert eerst het Document Object Model (DOM) op een element met de naam wpadminbar, een werkbalk die op WordPress-sites verschijnt wanneer een beheerder is aangemeld. Als de werkbalk wordt gedetecteerd, verwijdert het script zichzelf van de pagina en stopt het met uitvoeren, een techniek die is ontworpen om detectie door sitebeheerders te voorkomen.

De malware wordt geactiveerd wanneer het DOM van de pagina verandert, wat gebeurt zodra een gebruiker een actie op de site uitvoert. Vervolgens controleert het script of de gebruiker Stripe als betaalmethode heeft gekozen. Als Stripe is geselecteerd, zoekt het script naar de flag wc_cart_hash in de localStorage van de browser. Het mechanisme zorgt ervoor dat de gebruiker slechts één keer wordt getarget.

Wanneer de flag ontbreekt, vervangt het script het legitieme Stripe-formulier door een vervalst formulier dat identiek lijkt aan het echte. Het nepformulier verzamelt het de creditcardgegevens en contactgegevens en verstuurt deze het domein lasorie.com. Omdat het script de originele Stripe-velden verbergt, meldt de betalingsgateway bij het afrekenen een fout, waardoor het lijkt alsof de klant verkeerde informatie heeft ingevoerd. Als de gebruiker het opnieuw probeert wordt de malware niet opnieuw actief, zodat de betaling de tweede keer wel werkt en de gebruiker niets doorheeft.

Verspreiding

Wereldwijd zijn er meer dan 8,8 miljoen slachtoffers van deze online skimming. Webshop eigenaren kunnen hun klanten beschermen door te voorkomen dat hun website gehackt wordt door ervoor te zorgen dat hun website gehardened is, beveiligingsupdates op tijd uitgevoerd worden en de website op veiligheid getest is, bijvoorbeeld met een pentest.

Weten of jouw webshop veilig is? Neem contact met ons op. We helpen je graag!

Opnieuw malware aangetroffen in VS Code Extensies

In november 2025 meldden cybersecurity-onderzoekers een nieuwe golf van malware die zich richt op Visual Studio Code (VS Code)-extensies. De campagne, genaamd GlassWorm, werd eind oktober voor het eerst geïdentificeerd door Koi Security en is sindsdien opnieuw opgedoken bij andere extensies.

Drie extensies zijn nog steeds beschikbaar in het Open VSX-register, een openbare repository die de Microsoft Extension Marketplace weerspiegelt. De getroffen extensies zijn ai-driven-dev (3.402 downloads), adhamu.history-in-sublime-merge (4.057 downloads) en yasuyuky.transient-emacs (2.431 downloads). De extensies bevatte code die is verstopt is met onzichtbare Unicode-tekens, een techniek die kwaadaardige payloads verbergt voor gewone code-reviews en statische analysetools.

Glassworm

De doelstellingen van GlassWorm zijn drievoudig: ten eerste verzamelt het inloggegevens van het Open VSX-register, GitHub en verschillende cryptocurrency-wallet-extensies; ten tweede rooft het tegoeden uit ongeveer 49 wallet-extensies; en ten derde installeert het extra tools die externe toegang tot geïnfecteerde machines mogelijk maken. De malware verspreidt zich ook verder door de gestolen inloggegevens te gebruiken om andere extensies te compromitteren.

Open VSX ontdekte de kwaadaardige extensies op 21 oktober, waarna het deze verwijderde en de de bijbehorende toegangstokens roteerde. Ondanks deze maatregelen wijst recente analyse van Koi Security erop dat het nog steeds mogelijk is om nieuwe extensies te infecteren via dezelfde Unicode-truc. Daarnaast is er een nieuwe transactie op de Solana-blockchain waargenomen. Deze transactie bevatte een bijgewerkt C2-eindpunt, waarmee de malware in staat wordt gesteld om een volgende payload te downloaden. Volgens onderzoekers Idan Dardikman, Yuval Ronen en Lotan Sery van Koi Security illustreert het gebruik van blockchain voor command-and-control (C2) de veerkracht van de aanvallers: zelfs wanneer een hostingserver offline gaat, volstaat een goedkope transactie om een nieuw eindpunt te publiceren, waarna geïnfecteerde systemen automatisch de nieuwe locatie ophalen.

Verspreiding

Tijdens aanvullend onderzoek identificeerde de beveiligingsleverancier een endpoint dat onbedoeld was blootgesteld op de server van de aanvaller. Het endpoint leverde een gedeeltelijke lijst van slachtoffers op, verspreid over de Verenigde Staten, Zuid-Amerika, Europa en Azië, waaronder een belangrijke overheidsinstantie in het Midden-Oosten. De vermoedelijke herkomst van de malware kwam aan het licht via keylogger-data, vermoedelijk afkomstig van een machine van de aanvallers zelf. Analisten identificeerden de dreigingsactor als Russischtalig en ontdekten dat hij gebruikmaakt van het open-source browser-extensie-C2-framework RedExt.

In een verwant onderzoek publiceerde Aikido Security bevindingen waaruit blijkt dat GlassWorm zijn focus heeft verbreed naar GitHub. Gestolen GitHub-inloggegevens worden nu gebruikt om kwaadaardige commits in repositories te pushen, wat de potentiële schade aan open-sourceprojecten vergroot.

Grootschalige aanval op populaire npm-packages: miljoenen websites en apps mogelijk getroffen

Diverse veelgebruikte npm-packages (softwarebouwstenen) zijn besmet geraakt met kwaadaardige code. Dit gebeurde na een geslaagde phishingaanval op een van de beheerders van deze bouwblokken. Een npm-package is een bouwblok dat ontwikkelaars kunnen gebruiken in hun software, zodat ze veelgebruikte onderdelen niet elke keer opnieuw hoeven te programmeren. Daardoor komen bouwblokken overal terecht: zowel in maatwerksoftware als in standaard producten. De besmette onderdelen worden samen meer dan 2 miljard keer per week gedownload en gebruikt door ontwikkelaars wereldwijd.

Phishing

De aanvallers kregen toegang tot de repository via een phishing-mail. De aanval richtte zich op Josh Junon (ook bekend als Qix), een ontwikkelaar die medebeheerder is van meerdere populaire packages. Qix heeft de rechten om nieuwe code toe te voegen en goed te keuren, waardoor zijn account voldoende is om deze malware te verspreiden.

Junon ontving een phishingmail die sterk leek alsof deze van npm zelf afkomstig was, met de mededeling dat hij vóór 10 september 2025 zijn twee-staps-verificatie (2FA) moest vernieuwen via een link. Toen hij deze link volgde, kwam hij op een nepwebsite terecht waar hij zijn gebruikersnaam, wachtwoord en 2FA-code invoerde. Deze gegevens werden direct onderschept door criminelen via een zogenoemde Adversary-in-the-Middle-aanval, waarmee zij toegang tot zijn account verkregen. Met die toegang konden de aanvallers vervolgens besmette versies van twintig populaire packages publiceren in de officiële npm-bibliotheek.

Op BlueSky reageerde Junon: “Sorry everyone, I should have paid more attention. Not like me; have had a stressful week. Will work to get this cleaned up.”

Welke pakketten zijn getroffen?

Onder meer de volgende NPM-pakketten bevatten tijdelijk kwaadaardige code:

  • chalk (veel gebruikt om tekst in kleur weer te geven in softwaretools)

  • debug (veel gebruikt voor foutopsporing)

  • ansi-regex, ansi-styles, wrap-ansi, strip-ansi (onderdelen die met tekstopmaak werken)

  • color-convert, color-string, color-name (voor kleurbeheer in software)

Samen zijn deze pakketten goed voor twee miljard downloads per week. Omdat ze vaak als bouwsteen in andere pakketten worden hergebruikt, kon de besmetting zich breed verspreiden.

Vooral risico voor crypo-aanbieders

Uit analyse van de malware bleek dat deze was ontworpen om cryptovaluta te stelen. De kwaadaardige code begon met het controleren of deze in een browser draaide, en haakte vervolgens in op functies zoals window.fetch, XMLHttpRequest en window.ethereum.request. Dit zijn onderdelen die websites gebruiken om gegevens uit te wisselen en crypto-wallets aan te sturen. Hierdoor kon de code bij een betaling ongemerkt het walletadres van de ontvanger vervangen door dat van de aanvaller, waarbij het vervalste adres lijkt op het originele en daardoor nauwelijks opviel.

Dit soort aanvallen valt onder de noemer software supply chain attack. Bij een supply chain attack wordt niet de eindgebruiker direct aangevallen, maar een schakel in de toeleveringsketen van software. Soortgelijke aanvallen zijn al vaker gezien, bijvoorbeeld via typosquatting (een pakketje aanbieden met een bijna dezelfde naam als een populair pakket) of via slopsquatting (inspelen op foutjes van AI-systemen die verkeerde pakketnamen adviseren).

In dit geval is de malware specifiek gericht op ontwikkelaars die crypto-gerelateerde diensten aanbieden, waardoor de meeste software waarschijnlijk niet geraakt wordt, zelfs als deze besmet is geraakt.

Leeftijdsverificatie op internet: hoe zit het met privacy?

Op dit moment wordt 18+ content vaak afgeschermd met een pop-up waar de gebruiker moet verklaren dat deze 18+ is, iets wat het best omschreven kan worden als een wassen neus. De Europese Unie werkt aan een systeem om leeftijdsverificatie op internet te verbeteren als tijdelijke voorloper op het digitale identiteitsbewijs (EUDI-wallet). Achter die schijnbaar simpele vraag “Ben je 18 jaar of ouder?” schuilt een lastig probleem: hoe controleer je iemands leeftijd zonder dat dit ten koste gaat van de privacy?

Hoe zou dat er uit kunnen zien?

Wereldwijd zijn er meer landen die aan dit idee denken of het zelfs al ingevoerd hebben. In sommige landen worden burgers bijvoorbeeld geacht om hun paspoort of rijbewijs te uploaden of een gezichtsscan uit te laten voeren, iets wat natuurlijk enorme gevolgen voor de privacy heeft. Het systeem dat de EU voor ogen heeft is beter. Het is een afgeleide, of eigenlijk voorloper op de EUDI-wallet. Dit is het digitale identiteitsbewijs waarmee we ons in de toekomst online kunnen identificeren. Het leeftijdsverificatie-systeem lijkt in weze op het polsbandjessysteem dat op festivals gebruikt wordt: de barman kan aan de kleur van je polsbandje zien dat je oud genoeg bent om een biertje te bestellen, maar weet verder niet wie je bent.

Het systeem werkt ongeveer als volgt:

  • Je logt in op de leeftijdsverificatie-app via een officiële instantie (bijvoorbeeld een overheid, je bank of een erkende identiteit-provider).
  • Die instantie geeft je een cryptografisch bewijs: bijvoorbeeld “Deze persoon is 18 jaar of ouder”.
  • Dit bewijs staat los van de website waar je op in wilt loggen, de identiteit-provider weet dus niet waar je dit bewijs gaat gebruiken.
  • Wanneer je naar een website gaat (bijvoorbeeld examplesite.nl), laat je dat bewijs zien.
  • De website controleert het bewijs en ziet: deze persoon is 18+, maar ziet verder níet wie je bent.

Waar zit dan het probleem?

Dat polsbandje op een festival werkt prima zolang het een kleurcode is die elke bezoeker van 18+ krijgt. Maar stel je voor dat het een uniek nummer heeft. En stel dat elke barman dat nummer noteert. In de horeca zou dit raar zijn, maar digitaal wordt alles gelogd. Aan het einde van de zou de horeca-uitbater alle barmannen kunnen vragen om de nummers, en weet deze precies wat je waar besteld hebt. Combineer dat met camerabeelden en je bent plotseling een stuk minder anoniem.

In het “leeftijdsbewijs”-systeem dat nu in ontwikkeling is, heeft een bewijs een uniek kenmerk per persoon. Stel de eigenaar van examplesite.nl runt ook viezeplaatjes.nl en gokpaleis123.nl. Door het unieke kenmerk te loggen, kan hij precies zien dat jij op al die sites kwam. Heeft hij ook nog een webshop waar je iets koopt? Dan heeft hij je NAW-gegevens en kan hij je volledige surfgedrag koppelen aan je echte identiteit.

Nog erger zou het worden als een bedrijf als Google een handige plug-in voor website eigenaren zou bouwen waarbij ze dit lastige protocol kunnen ondersteunen door gewoon op “install” te klikken. Laat die cookies maar zitten: dit zou de meest robuuste manier van online tracking zijn.

Zero knowledge proof

Een veelbelovende techniek om dit privacy probleem op te lossen heet zero-knowledge proof. Kort gezegd is dat een cryptografische manier om iets te bewijzen zonder de onderliggende informatie prijs te geven. Concreet werkt het zo: je identiteit-provider genereert een digitaal bewijs op basis van je gegevens, maar zodanig versleuteld dat een website alleen kan controleren of het bewijs geldig is voor “18+”, zonder verder iets over jou te leren. Elke keer dat je zo’n bewijs aanmaakt, kan het anders worden opgebouwd, zodat websites het niet kunnen koppelen aan eerdere bewijzen.

Dat een bewijs niet meer terug te leiden is naar een individu levert echter ook weer nieuwe problemen op, want hoe voorkom je dat iemand zijn polsbandje uitleent aan iemand anders? Een oplossing zou kunnen zijn om de bewijzen op te slaan in een beveiligd stuk in de hardware, maar dit vereist dat het merendeel van de EU-burgers een apparaat hebben die dit ondersteund, iets wat momenteel nog niet het geval is. Toch lijkt zero knowledge proof de enige manier om het internet privacy-vriendelijk te houden. Al met al lijkt privacy en online leeftijdsverificatie en bijzonder ingewikkeld duo te zijn.

Subsidie voor webshops

Hoe veilig is jouw netwerk?

Het voorkomen van een datalek

CyberAnt verhuisd naar Zeewolde