Skip to main content
Blog
Blog Attacks

Cookiediefstal en Sessieovername: Hoe Aanvallers Sessies Stelen en Hoe Je Ze Stopt

Cookiediefstal is wanneer een aanvaller het sessietoken van een ingelogde gebruiker afvangt en opnieuw afspeelt vanaf een ander apparaat. Geen wachtwoord nodig, geen MFA-prompt. Zo werkt de aanval en hoe je hem stopt.

Jul 21, 2026 9 min read
Cookiediefstal en Sessieovername: Hoe Aanvallers Sessies Stelen en Hoe Je Ze Stopt
Inhoudsopgave

Kort samengevat: hergebruik sessietoken na authenticatie tussen apparaten

  • Het gat: Elke pitchdeck behandelt MFA als eindstreep. Cookie-diefstal ontmaskert die bluf. MFA authenticeert het login-event, en een gestolen sessiecookie is het bewijs dat de login al plaatsvond, dus geeft de server het account zonder tweede prompt weg.
  • Het bewijs: SpyCloud herwon in 2024 meer dan 17 miljard gestolen credential-records uit de crimineleonderwereld en DBSC dekt alleen Chrome 146+ op Windows. cside fingerprintt apparaten via meer dan 250 signalen op 99,7% nauwkeurigheid en pakt het moment dat een cookie vanaf de verkeerde machine wordt afgespeeld.
  • De beslissing: Elk team dat leunt op MFA plus HttpOnly voor levende sessies is blootgesteld. Voeg dit kwartaal runtime-scriptmonitoring voor token-exfiltratie en apparaatgerichte gedragsanalyse toe, voordat een infostealerverkoop op Telegram jouw incident wordt.

Weinig tijd? Bekijk cside accountovername-detectie. Dit dekt alles hieronder in één deployment.

Cookiediefstal is wanneer een aanvaller het sessietoken dat een website heeft uitgegeven na het inloggen van een gebruiker, afvangt en opnieuw afspeelt vanaf een ander apparaat. De aanvaller erft de toegang van de gebruiker zonder het wachtwoord te kennen. Er wordt geen MFA-prompt geactiveerd. De gebruiker blijft ingelogd en merkt niets; beide sessies draaien parallel.

De reden dat MFA dit niet stopt is structureel. MFA authenticeert de gebruiker bij de inloggebeurtenis. Na het inloggen vertrouwt de server op de sessiecookie, een tijdgebonden credential die bewijst dat de browser al door authenticatie is gegaan. Een gestolen cookie is bewijs dat de browser er al doorheen is. De server kan het verschil niet zien tussen de echte gebruiker en de aanvaller tenzij het iets controleert buiten het token zelf.

Beveiligingsonderzoekers noemen dit een pass-the-cookie-aanval. Het is de dominante techniek achter een groot deel van de accountovernames in 2026.

Hoe sessieovername werkt

De aanvalsketen is dezelfde ongeacht hoe de cookie werd verkregen.

  1. De gebruiker authenticeert. De browser voltooit het inloggen en MFA. De server geeft een sessiecookie uit, een lange willekeurige string, en stuurt deze terug met het antwoord.
  2. De aanvaller vangt de cookie af. Dit gebeurt via infostealer-malware, een phishingproxy of een kwaadaardig script dat op de pagina draait.
  3. De aanvaller speelt de cookie opnieuw af. Vanuit zijn eigen browser of een script stelt hij de gestolen cookie in en stuurt een verzoek naar de doelsite.
  4. De server ziet een geldige sessie. De cookie is actief en werd uitgegeven aan een geauthenticeerde gebruiker. Toegang wordt verleend.

De legitieme sessie blijft open. De gebruiker browst nog steeds op zijn apparaat; de aanvaller browst hetzelfde account op het zijne.

Drie manieren waarop aanvallers sessietokens stelen

Infostealer-malware

Infostealer-malware is de meest voorkomende route. Families zoals Lumma, Vidar en RedLine doorzoeken de cookie-opslag op schijf van de browser, extraheren sessietokens voor honderden sites en sturen deze binnen minuten na infectie naar een door de aanvaller beheerste server. Het SpyCloud 2025 Jaarlijks Rapport Blootstelling Identiteit herstelde meer dan 17 miljard gestolen inloggegevensrecords uit de criminele onderwereld in 2024. Gestolen sessiecookies bereiken Telegram-markten binnen uren na een succesvolle infectie.

De cookie-opslag van de browser is een lokaal bestand, in platte tekst of een lokale SQLite-database. Elk proces dat met de rechten van de gebruiker draait, kan het lezen. Infostealers onderscheppen geen netwerkverkeer; ze lezen van schijf nadat de browser de gegevens al heeft gedecodeerd.

Adversary-in-the-middle (AiTM) phishing

AiTM-phishing plaatst een reverse proxy tussen het slachtoffer en de echte inlogpagina. Het slachtoffer ziet een exacte visuele kopie van de login, voert inloggegevens in en voltooit MFA. De proxy stuurt alles door naar de echte site en vangt de resulterende sessiecookie op bij terugkomst. De aanvaller beschikt nu over een geldig post-authenticatie token zonder zelf MFA te hebben doorlopen.

Deze techniek omzeilt traditionele antiphishingcontroles omdat de pagina authentiek oogt, de MFA-prompt wordt voltooid bij de echte service en het slachtoffer normaal inlogt. Alleen de proxy van de aanvaller zit in het midden, onzichtbaar.

Kwaadaardige scripts van derden en XSS

Een XSS-kwetsbaarheid of een gecompromitteerd script van derden kan sessietokens bij runtime uit de browser extraheren. JavaScript dat in de oorsprongscontext van de pagina draait, kan cookies lezen die niet als HttpOnly zijn gemarkeerd, ze coderen en exfiltreren in verzoeken die op routinematige analyseoproepen lijken.

Dit is het client-side supply chain-vector: de aanvaller richt zich niet direct op jouw site maar compromitteert een analysetag, een chatwidget of een betalingsbibliotheek die jouw site vertrouwt en op elke pagina laadt. De skimmer arriveert in code die de site al als veilig beschouwt.

Waarom standaardverdedigingen dit missen

Het HttpOnly-attribuut

HttpOnly voorkomt dat JavaScript de cookie leest via document.cookie. Het blokkeert XSS-tokenleesacties voor die specifieke cookie, wat belangrijk is. Maar het doet niets tegen infostealer-malware die de cookie rechtstreeks van schijf leest nadat de browser deze heeft opgeslagen, en beschermt niet tegen een AiTM-proxy die het token via het netwerk afvangt voordat het de beschermde opslag bereikt.

HTTPS en TLS

TLS versleutelt verkeer in transit en stopt passief afluisteren van het netwerk. Infostealers lezen van schijf, na decodering. AiTM-proxies beëindigen TLS aan beide kanten van de verbinding. Geen van beide wordt alleen door transportversleuteling gestopt.

MFA

MFA verifieert de gebruiker bij het inloggen. Na het inloggen vertrouwt de server alleen op de cookie. Een gestolen cookie activeert nooit een andere MFA-prompt tenzij de server herauthenticatie afdwingt op basis van apparaat- of gedragssignalen, wat de meeste servers niet bij elk verzoek doen.

Apparaat-gebonden sessies en DBSC

De structurele oplossing voor pass-the-cookie-aanvallen is het koppelen van de sessie aan de hardware die deze heeft aangemaakt. Een gestolen cookie wordt nutteloos als de server cryptografisch bewijs vereist dat de browser nog steeds een specifieke apparaat-gehouden privésleutel beheert.

Het Device Bound Session Credentials (DBSC)-protocol van Google doet dit met behulp van de TPM of Secure Enclave van het apparaat. Op Chrome 146+ voor Windows genereert de browser bij het opzetten van de sessie een privésleutel in hardware. Kortdurende sessiecookies worden alleen uitgegeven zolang de browser het bezit van die sleutel kan bewijzen. Een aanvaller die de cookie van een ander apparaat steelt, kan deze niet vernieuwen zonder de privésleutel.

Praktische beperkingen medio 2026:

  • Dekking: Chrome 146+ op Windows is de primaire implementatie. iOS, Firefox en Safari ondersteunen DBSC nog niet.
  • Terugvalpaden: wanneer geen TPM aanwezig is of een netwerkfout optreedt tijdens sleutelverificatie, kan DBSC koppeling overslaan. Die sessie gedraagt zich dan als een conventionele cookie.
  • Malware op hetzelfde apparaat: als een infostealer op dezelfde machine draait die de privésleutel bezit, kan de aanvaller de sessie vanaf dat apparaat gebruiken. DBSC richt zich op off-device herhaling, niet op compromittering op hetzelfde apparaat.

Deze hiaten maken DBSC tot één laag, niet tot een complete oplossing.

Checklist voor het voorkomen van sessieovername

ControleWat het stopt
TLS + HSTSNetwerk afluisteren (session sidejacking)
HttpOnly-, Secure-, SameSite-attributenXSS-leesacties via document.cookie
Rotatie sessie-ID na inloggenSessiefixatie
Korte absolute en inactieve time-outsVenster voor herhaling na diefstal
Lange willekeurige sessietokensToken raden
Serverside intrekking bij uitloggenActieve sessies na accountactie
DBSC (Chrome 146+ / Windows)Off-device herhaling van gestolen cookie
Monitoring van client-side scriptsToken-exfiltratie via XSS of supply chain
Apparaatintelligentie + gedragsscoreOpnieuw afgespeeld token dat de actieve sessie bereikt

Geen enkel controle is volledig. Infostealers omzeilen transportcontroles. AiTM-proxies omzeilen MFA en HTTPS op de sessielaag. HttpOnly beperkt één JavaScript-leesroute maar niet schijfleesacties. Het gelaagde model werkt omdat elke controle omzeilt wat de anderen niet kunnen.

Een gekaapte sessie detecteren in de live browser

Preventie vermindert de kans op tokendiefstal. Detectie vangt de sessie op die al gestolen is en opnieuw wordt afgespeeld.

cside draait als een enkel eigen JavaScript-snippet in de browser van de bezoeker zonder proxy en zonder DNS-wijzigingen. Het monitort wat scripts van derden en de sessie zelf daadwerkelijk doen op de live pagina voor echte gebruikers, niet wat een crawler of scanner observeert bij code in rust.

Token-exfiltratie aan de bron. Een script van derden dat onverwachte event listeners aan formuliervelden koppelt, cookiewaarden leest buiten normale analyseoproepen of gegevens naar een onbekend domein stuurt, activeert een detectiesignaal voordat het token de pagina verlaat. Dit sluit het XSS- en supply chain-vector voordat een cookie wordt gestolen. Dezelfde runtime-monitoring detecteert ook affiliate cookie stuffing en link hijacking, waarbij geïnjecteerde scripts door de aanvaller beheerde affiliate-cookies plaatsen of uitgaande links herschrijven om attributie om te leiden, een even onzichtbare browserlaag-aanval.

Apparaatmismatch bij herhaling. Wanneer een gestolen cookie vanaf een ander apparaat wordt gebruikt, verandert de vingerafdruk van de sessie. De apparaatintelligentie van cside genereert een persistente apparaat-ID uit meer dan 250 browser-, hardware- en netwerksignalen met 99.7% nauwkeurigheid. Een vingerafdrukwisseling na een gevestigde sessie is een anomalie die de gedragsscore-laag markeert voor herauthenticatie of blokkering.

Gedragssignalen. Geautomatiseerde sessie-herhaling vanuit een script of een AI-agent produceert patronen die verschillen van echte menselijke sessies: geen realistisch muisbeweging, geen scrollvariatie, geen natuurlijk typritme. De gedragsniveau-signalen van cside scheiden automatisering van echt gebruik.

cside integreert ook AI-agentdetectie en vangt orkestratiegereedschappen en geautomatiseerde browsers op die gestolen sessies opnieuw afspelen of gescripte accounttoegang op schaal uitvoeren.

PCI DSS 4.0.1 en sessiebeveiliging op betaalpagina's

Voor e-commerce- en betaalplatforms zijn de client-side script- en XSS-vectoren die sessietokens exfiltreren dezelfde risico's die PCI DSS 4.0.1-vereisten 6.4.3 en 11.6.1 aanpakken. Vereiste 6.4.3 vereist een scriptinventaris en autorisatiemethode voor elk script op betaalpagina's. Vereiste 11.6.1 vereist continue monitoring en alertering over ongeautoriseerde wijzigingen in betaalpagina-scripts en HTTP-beveiligingsheaders.

Een kwaadaardig script van derden dat een sessietoken of betaalkaartgegevens exfiltreert op een betaalpagina is precies de dreiging die deze vereisten aanpakken. cside automatiseert beide controles en produceert wekelijkse QSA-klare rapporten (VikingCloud-gevalideerd). Monitoring die een kwaadaardig script detecteert dat sessietokens steelt, voldoet ook aan het tamper-detectiemandat dat QSA's nu beoordelen.

PCI DSS 4.0.1-vereisten 6.4.3 en 11.6.1 zijn verplicht en worden beoordeeld sinds 1 april 2025.

Simon Wijckmans
Founder & CEO

Founder and CEO of cside. Previously a product manager on Cloudflare Page Shield (now Cloudflare Client-Side Security). Co-chair of the W3C Anti-Fraud Community Group and a Forbes 30 Under 30 honoree. Building accessible security against client-side attacks, web security is not an enterprise-only problem.

FAQ

Frequently Asked Questions

Cookiediefstal is wanneer een aanvaller de sessiecookie (of het sessietoken) die een website heeft uitgegeven aan een ingelogde gebruiker, afvangt en opnieuw afspeelt vanaf een ander apparaat om die gebruiker na te bootsen. Omdat de cookie een al-geauthenticeerde sessie vertegenwoordigt, erft de aanvaller de toegang van de gebruiker zonder het wachtwoord te kennen of met een MFA-prompt geconfronteerd te worden.

Een pass-the-cookie-aanval is het stelen van een sessiecookie en het gebruiken ervan op een ander apparaat om de actieve sessie over te nemen. Authenticatie voltooide zich al toen de originele sessie werd aangemaakt, dus de server ziet een geldige cookie en verleent toegang zonder opnieuw om inloggegevens te vragen. MFA beschermt de inloggebeurtenis, niet de actieve sessie daarna.

Ja. Sessieovername werkt nadat authenticatie is voltooid. Of de aanvaller nu infostealer-malware gebruikt om cookies uit de browser te kopiëren, een adversary-in-the-middle-phishingproxy uitvoert, of een token exfiltreert via een kwaadaardig script van derden, de gestolen cookie vertegenwoordigt een sessie die al door MFA is gegaan. De server kan een herhaling niet onderscheiden van de legitieme gebruiker zonder apparaatkoppeling of detectie van gedragsanomalieën.

Sessieovername steelt een bestaand, actief sessietoken. Sessievervalsing maakt een sessie-ID aan of raadt deze om een gebruiker na te bootsen zonder een echt token te stelen. Sessiefixatie dwingt een bekend sessie-ID op het slachtoffer voordat het inlogt, en neemt vervolgens de controle over die sessie over bij het inloggen. Alle drie exploiteren sessie-identifiers, maar op verschillende punten in de levenscyclus.

Een apparaat-gebonden sessie koppelt een sessietoken cryptografisch aan de specifieke hardware die het heeft aangemaakt. Het Device Bound Session Credentials (DBSC)-protocol van Google, uitgerold in Chrome 146+ op Windows, gebruikt een privésleutel opgeslagen in de TPM of Secure Enclave van het apparaat. De server verifieert het bezit van die sleutel om kortdurende sessiecookies te vernieuwen. Een gestolen cookie wordt nutteloos op een ander apparaat omdat het het bezit van de privésleutel niet kan bewijzen.

DBSC vermindert maar elimineert het risico op cookiediefstal niet. Er bestaan gedocumenteerde terugvalpaden wanneer geen TPM beschikbaar is of wanneer netwerkfouten optreden tijdens sleutelverificatie, wat betekent dat koppeling kan worden overgeslagen. Gedrags- en apparaatintelligentiedetectie biedt de aanvullende laag die opnieuw afgespeelde sessies in die hiaten opvangt.

Preventie gebruikt lagen: TLS en HSTS afdwingen; HttpOnly-, Secure- en SameSite-attributen instellen op sessiecookies; het sessie-ID direct na inloggen roteren; korte absolute en inactieve time-outs toepassen; lange willekeurige tokens met serverside-intrekking gebruiken. Apparaatkoppeling via DBSC of apparaatintelligentiesignalen toevoegen om sessies waar mogelijk aan hardware te koppelen. Elk script van derden monitoren op token-exfiltratiebehavior en elke sessie beoordelen aan de hand van apparaat- en gedragsbaselines om herauthenticatie te activeren bij afwijkingen.

cside werkt als een enkel eigen JavaScript-snippet zonder proxy en zonder DNS-wijzigingen. Het monitort wat scripts van derden en de sessie zelf daadwerkelijk doen in de browsers van echte bezoekers op de live pagina, niet wat een crawler of scanner observeert bij code in rust. Gelaagde detectie combineert signalen op netwerk-, browser- en gedragsniveau (muisbeweging, scrollen, typritme) met detectie van AI-gegenereerde tekst in ingediende formulierinhoud om sessies te markeren waarvan het apparaat of gedrag niet meer overeenkomt met de legitieme gebruiker.

Apparaatintelligentie met 99.7% nauwkeurigheid over meer dan 250 signalen onderscheidt een hergebruikt of gespoofd apparaat van het echte. cside detecteert ook het kwaadaardige script van derden of de XSS-injectie die een sessietoken exfiltreert aan de bron, waardoor het client-side supply chain-vector bij de bron wordt gesloten.

Monitor en beveilig je third-party scripts

Gain full visibility and control over every script delivered to your users to enhance site security and performance.

Start gratis, of probeer Business met een proefperiode van 14 dagen.

cside-dashboardinterface met scriptmonitoring en beveiligingsanalyses
Related Articles
Boek een demo

Wil je dit doornemen met een engineer?

Dertig minuten, op je eigen site. Geen slides.

We laten je zien:

Welke scripts van derden er nu op je site draaien
Hoe je ervoor staat op PCI DSS 6.4.3 en 11.6.1
Welk deel van je verkeer uit bots en AI-agents bestaat

Liever gewoon een vraag stellen?

Vrije momenten zoeken…

Alleen echte mensen. Wij merken het.

Lukt het boeken niet? Agenda in een nieuw tabblad openen

Wat wil je oplossen?

Vertel het ons in één zin, dan komen we terug met iets bruikbaars in plaats van een standaardverhaal.

Waar we meestal mee helpen:

Zien welke scripts van derden op je site draaien
Bewijs voor PCI DSS 6.4.3 en 11.6.1
Bots, AI-agents en accountovername

Liever meteen een moment inplannen? Kies een tijdstip