Wat is Session Hijacking?

Session hijacking is een aanvalstechniek waarbij een aanvaller een al geauthenticeerde sessie van een gebruiker of apparaat overneemt door het sessiekenmerk (cookie, token of verbinding) te stelen, te raden of te kapen, zodat hij zonder eigen inlog handelt met de rechten van het slachtoffer. Omdat de aanvaller instapt ná de authenticatie, helpen sterke wachtwoorden en zelfs MFA op dat moment niet meer. Het slachtoffer merkt meestal niets: de sessie blijft gewoon werken.

In OT-netwerken kan een gekaapte sessie leiden tot ongeautoriseerde besturing van installaties, gewijzigde setpoints of gemanipuleerde SCADA-visualisaties, met fysieke gevolgen.


🧠 Hoe werkt session hijacking?

Elke sessie, of het nu een webapplicatie, een RDP-verbinding of een TCP-verbinding met een controller is, draait om een geheim dat bewijst “deze gebruiker heeft al ingelogd”. Wie dat geheim bezit, ís voor het systeem die gebruiker. Een aanval verloopt doorgaans zo:

  1. Legitieme sessie - een operator of engineer logt in op een HMI, een webportaal, een engineering station of via remote access.
  2. Bemachtigen van het sessiekenmerk - de aanvaller onderschept, steelt of raadt de sessie-ID, het token of de verbindingsparameters.
  3. Overname - de aanvaller hergebruikt het kenmerk vanaf een eigen systeem, of neemt de verbinding direct over via een man-in-the-middle-positie.
  4. Misbruik - de aanvaller voert acties uit als de oorspronkelijke gebruiker, zonder nieuwe inlog en vaak zonder opvallende logregels.

Het verschil met een replay-aanval is subtiel: bij replay wordt een opgenomen bericht opnieuw verstuurd, bij session hijacking neemt de aanvaller een hele lopende sessie over en stuurt hij nieuwe, eigen opdrachten.


🔄 Welke varianten van session hijacking zijn er?

Variant Werkwijze Typisch doelwit
Sidejacking (sniffing) Sessiecookie meelezen op onversleuteld verkeer, bijvoorbeeld via open Wifi Webportalen via HTTP
Session fixation Aanvaller dringt het slachtoffer een vooraf bekende sessie-ID op en wacht tot die inlogt Webapplicaties die de ID na inloggen niet vernieuwen
Cookie- en tokendiefstal Infostealer-malware of cross-site scripting (XSS) leest cookies uit de browser Cloudportalen, webgebaseerde HMI’s
Adversary-in-the-middle-phishing Een phishingproxy (zoals Evilginx) zit tussen gebruiker en site en vangt het sessiecookie ná de MFA-stap Remote-accessportalen, Microsoft 365
RDP- en SSH-hijacking Overnemen van een bestaande remote sessie, zoals RDP-sessies via tscon met SYSTEM-rechten Jumpservers, engineering stations
TCP-hijacking Via ARP-spoofing tussen client en server gaan zitten en pakketten in een lopende verbinding injecteren Modbus TCP, klassiek S7comm, Telnet

De Firefox-extensie Firesheep maakte sidejacking in 2010 met één klik mogelijk op open wifi. In de jaren daarna maakten grote sites HTTPS standaard voor alle pagina’s, Twitter in 2012 en Facebook in 2013.

MITRE ATT&CK beschrijft deze technieken onder meer als Remote Service Session Hijacking (T1563, met de subtechnieken SSH Hijacking en RDP Hijacking), Steal Web Session Cookie (T1539) en Browser Session Hijacking (T1185). Bij die laatste misbruikt malware de ingelogde browsersessie van het slachtoffer zelf om interne webapplicaties te bereiken. Bij T1563 gebruikt de aanvaller de gekaapte sessie vooral voor laterale beweging richting kritieke systemen.


🏭 Waarom is session hijacking extra gevaarlijk in OT?

In OT-omgevingen komen de zwakke plekken samen:

  • Protocollen zonder sessiebeveiliging - Modbus TCP en klassieke S7-communicatie kennen geen authenticatie of integriteitscontrole. Wie in het netwerkpad zit, kan commando’s in een bestaande verbinding injecteren; de PLC ziet geen verschil.
  • Langdurige sessies - operatorstations en HMI’s blijven vaak dagen ingelogd onder een gedeeld account, zodat er altijd een actieve sessie is om over te nemen.
  • Onversleutelde beheerverbindingen - VNC, Telnet en HTTP zijn op oudere apparatuur nog gangbaar.
  • Remote onderhoud - leveranciers werken via VPN of RDP; een gekaapte leverancierssessie is een directe route naar het procesnetwerk.
Scenario Mogelijk gevolg
Webgebaseerde HMI via browser Aanvaller neemt het sessiecookie over en geeft bedieningscommando’s
Remote desktop- of VPN-sessie van een leverancier Verbinding wordt overgenomen; aanvaller werkt verder op het engineeringnetwerk
Actieve engineeringtool zoals TIA Portal Aanvaller downloadt aangepaste programmatuur naar de controller
Historian of visualisatieportaal Procesdata worden ingezien, of gemanipuleerd zodat operators een vals beeld krijgen

🔐 Hoe beschermt u sessies tegen overname?

Maatregel Toelichting
TLS-versleuteling Sessietokens zijn niet leesbaar voor afluisteraars; gebruik HTTPS voor elke pagina, niet alleen de inlogpagina
Sterke sessie-ID’s Minimaal 64 bits entropie uit een cryptografisch veilige randomgenerator (OWASP, NIST)
Cookie-attributen Secure, HttpOnly en SameSite=Strict of Lax, bij voorkeur met het __Host--prefix
Nieuwe ID na inloggen Vernieuw de sessie-ID na inloggen en bij elke rechtenwijziging; dat blokkeert session fixation
Time-outs Inactiviteits- én absolute time-out, afgedwongen op de server; ook voor RDP-sessies via groepsbeleid
Phishingbestendige MFA FIDO2-sleutels voorkomen dat een phishingproxy het sessiecookie buitmaakt; gewone MFA doet dat niet
IP- of apparaatbinding Koppel de sessie aan bron-IP of apparaatkenmerken; let op dat NAT en wisselende IP-adressen dit beperken
Zero Trust Verifieer toegang en gedrag doorlopend, niet alleen bij de inlog
Beheerde remote access Laat leveranciers via een jumpserver of PAM-oplossing met sessieopname werken

Voor OT-protocollen zonder ingebouwde beveiliging komt daar netwerksegmentatie bij, plus Dynamic ARP Inspection op switches en, waar mogelijk, beveiligde protocolvarianten zoals S7CommPlus of OPC UA met signering en versleuteling.


🔧 Welke waarden en eisen gelden in de praktijk?

Concrete getallen helpen bij het inrichten van HMI-portalen, webinterfaces en remote access:

Bron Eis Waarde
OWASP Session Management Cheat Sheet Inactiviteitstime-out 2–5 min voor waardevolle toepassingen, 15–30 min bij laag risico
OWASP Absolute time-out Afhankelijk van gebruik, bijvoorbeeld 4–8 uur voor een kantoordag
NIST SP 800-63B-4 (2025) Herauthenticatie AAL2 Uiterlijk na 24 uur, inactiviteit maximaal 1 uur
NIST SP 800-63B-4 Herauthenticatie AAL3 Uiterlijk na 12 uur, inactiviteit maximaal 15 minuten
NIST SP 800-63B-4 Sessiegeheim Minimaal 64 bits, niet opslaan in HTML5 Local Storage

In OT is een korte time-out niet altijd wenselijk: een controlekamer die midden in een storing wordt uitgelogd, is zelf een veiligheidsrisico. Een gangbare aanpak is daarom:

  1. Splits naar functie - korte time-outs voor engineering- en beheersessies, langere voor alleen-lezen operatorschermen in een fysiek beveiligde controlekamer.
  2. Gebruik schermvergrendeling in plaats van uitloggen, zodat het proces zichtbaar blijft maar bediening een nieuwe inlog vraagt.
  3. Beëindig remote sessies actief zodra het onderhoudsvenster sluit, en sta niet meer dan één gelijktijdige sessie per account toe.

IEC 62443-3-3 dekt precies deze punten met systeemeisen als SR 2.5 (Session lock), SR 2.6 (Remote session termination), SR 2.7 (Concurrent session control) en SR 3.8 (Session integrity). In Nederland vallen veel OT-exploitanten sinds 15 augustus 2026 onder de Cyberbeveiligingswet, die passende maatregelen voor onder meer toegangsbeheer en beveiligde communicatie vraagt. Sessiebeveiliging is daar een concreet onderdeel van.


🔍 Hoe detecteert u een gekaapte sessie?

Signaal Wat u ziet
Dubbel gebruik Hetzelfde sessiecookie of account vanaf twee IP-adressen of browsers tegelijk
Onmogelijke reis Een sessie springt binnen minuten tussen ver uiteenliggende locaties
Sessiewisseling zonder inlog Gebruik van tscon of een RDP-sessie die van gebruiker wisselt zonder bijbehorende aanmeldgebeurtenis
Onverwachte rechtenverhoging Een account krijgt midden in een sessie meer rechten of start beheertools die het normaal niet gebruikt
Afwijkende commando’s Programmadownloads of setpointwijzigingen buiten onderhoudsvensters
Verdachte netwerkpatronen ARP-wijzigingen, dubbele MAC-adressen of verstoorde TCP-volgnummers op het procesnetwerk

Combineer logging in een SIEM met een OT-IDS of anomaliedetectie die het industriële verkeer passief meeleest. Leg ook vast welke sessies er normaal zijn, zodat afwijkingen opvallen.


❓ Veelgestelde vragen

Helpt MFA tegen session hijacking?

MFA beschermt het inlogmoment, maar session hijacking vindt plaats ná de inlog, dus een gestolen sessiecookie omzeilt gewone MFA. Phishingproxy’s zoals Evilginx vangen het cookie juist op nadat de gebruiker de MFA-stap heeft doorlopen. Alleen phishingbestendige MFA zoals FIDO2, gecombineerd met korte sessieduur en apparaatbinding, verkleint dit risico wezenlijk.

Wat is het verschil tussen session hijacking en een man-in-the-middle-aanval?

Een man-in-the-middle-aanval is een positie: de aanvaller zit tussen twee partijen en kan verkeer lezen of wijzigen. Session hijacking is het doel: het overnemen van een bestaande sessie. Een man-in-the-middle is één manier om een sessie te kapen; cookiediefstal via malware is een andere die geen netwerkpositie vereist.

Wat is session fixation?

Session fixation is een variant van session hijacking waarbij de aanvaller het slachtoffer een sessie-ID opdringt die hij zelf al kent. Logt het slachtoffer daarna in en vernieuwt de applicatie de ID niet, dan deelt de aanvaller de geauthenticeerde sessie. Een nieuwe sessie-ID na elke inlog en rechtenwijziging voorkomt dit.

Kunnen PLC-verbindingen gekaapt worden?

Ja, PLC-verbindingen via protocollen zonder authenticatie, zoals Modbus TCP en klassiek S7comm, zijn kwetsbaar voor session hijacking op TCP-niveau. Een aanvaller met een man-in-the-middle-positie kan commando’s in een lopende verbinding injecteren, waarna de PLC die als legitiem uitvoert. Segmentatie, ARP-bescherming en beveiligde protocolvarianten beperken dit risico.

Welke sessietime-out is verstandig voor een HMI?

Voor beheer- en engineeringsessies op een HMI is een inactiviteitstime-out van enkele minuten verstandig, in lijn met de 2–5 minuten die OWASP voor waardevolle toepassingen noemt. Voor operatorschermen in een afgesloten controlekamer werkt schermvergrendeling vaak beter dan uitloggen, zodat het procesbeeld zichtbaar blijft. Leg de gekozen waarden per rol vast in het beveiligingsbeleid.

Hoe herkent u RDP-hijacking?

RDP-hijacking is herkenbaar aan een sessie die van gebruiker wisselt zonder bijbehorende aanmelding, vaak via het Windows-hulpmiddel tscon uitgevoerd met SYSTEM-rechten. Monitor daarom op het gebruik van tscon, op processen die starten in andermans sessie en op RDP-verkeer tussen netwerkzones. Time-outs voor actieve en verbroken sessies verkleinen de kans dat er een sessie klaarligt om over te nemen.


📌 Samengevat

Session hijacking is een stille aanval waarbij een aanvaller instapt in een sessie die al geauthenticeerd is, zodat wachtwoorden en gewone MFA geen bescherming meer bieden.

In OT is het risico groot door protocollen zonder sessiebeveiliging, langlopende HMI-sessies en remote onderhoud door derden. Bescherm sessies met versleuteling, sterke en kortlevende sessie-ID’s, phishingbestendige MFA, beheerde remote access en segmentatie, en detecteer overnames met logging en netwerkmonitoring. Verwante onderwerpen zijn Man-In-The-Middle, Replay Attack en Phishing.