session hijacking,, wat houdt dit in?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Low Code Developer voor o.a. overheidsprojecten!

Bedrijfsomschrijving Wil jij ook behoren tot de specialist in Low Code? Dan zou ik zeker aanraden om verder te lezen. Deze organisatie is ooit opgericht door twee studenten en is inmiddels uitgegroeid tot een serieuze werkgever met een groot aanzien op Low Code projecten. De sfeer is echter niet veranderd, er heerst een informele sfeer met een open deuren beleid, en hierin mag de eigen bar natuurlijk niet ontbreken. Momenteel maakt deze organisatie een flinke groei door en hier kan jij natuurlijk niet bij ontbreken. Daarom ben ik op zoek naar Low Code Developers met een degelijke technische achtergrond. Kennis

Bekijk vacature »

.NET Developer C#

Dit ga je doen Als developer nieuwe gave features implementeren; Werken met technieken als C# .NET en (REST) API's webservices; Ontwikkelen van koppelingen middels API's; Maken van technische keuzes en beslissingen over de architectuur; Junior collega's coachen; Initiatief nemen voor nieuwe technische mogelijkheden; Je bent een belangrijke schakel - en vindt het leuk - om te schakelen met de business. Hier ga je werken Als C# .NET Developer wordt je verantwoordelijk voor het ontwikkelen van applicaties voor belangrijkste product van deze organisatie. Dit product is een applicatie voor alles omtrent hypotheken. De programmeertaal die je hierbij beheerst is C#. Er

Bekijk vacature »

Developer Front-end

Functie omschrijving Front-end Developer gezocht! Wij zijn op zoek naar een front-end developer voor een organisatie in de regio Veenendaal die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. Je hebt in deze functie een adviserende rol hiervoor moet je beschikken over een grote dosis vakinhoudelijke kennis. Je creëert unieke concepten door samen met collega’s en klanten te overleggen over aangeleverde designs. Hiermee draag jij je steentje bij aan de groeiambities van de klant. Jij wordt het vaste aanspreekpunt voor klanten wanneer het gaat over planningen, hierin is het jouw taak om alle betrokkenen goed

Bekijk vacature »

PHP Software Developer

Functie omschrijving PHP Software Developer gezocht! Voor een organisatie in de regio Zeist die zich bezighoud met het verbeteren van de medicatieveiligheid zoeken wij een Software Developer. In deze functie zijn wij op zoek naar een slimme en enthousiaste Developer die interesse heeft in farmacie, logistiek en ICT. Daarnaast beschik je over een goed analytisch vermogen en ben je van nature gestructureerd en resultaatgericht. Je moet in deze functie daadkrachtig, flexibel en communicatief goed zijn. Je verantwoordelijkheden bestaan uit: Object georiënteerd programmeren; Werken in een scrumteam aan de ontwikkeling van een medicatiebewakingssysteem; Meedenken over de mogelijkheden en onmogelijkheden van projecten;

Bekijk vacature »

Front-end Developer

Dit ga je doen Doorontwikkelen van software; Ontwikkelen en testen van nieuwe functionaliteiten; Implementaties van nieuwe functionaliteiten en updates; Verzorgen van technische migraties naar nieuwe frameworks; Verwerken van incidenten. Hier ga je werken Onze klant, gevestigd in de regio Amsterdam, draagt bij aan het verbeteren van de veiligheid en efficiëntie van de Nederlandse infrastructuur door het ontwikkelen van afgemeten software oplossingen. Zo passen zij location intelligence toe om onderhoud en reparaties efficiënt te laten verlopen. Verder zorgen deze systemen dat incidenten zo snel mogelijk worden opgelost. Als Front-end Developer ben jij samen met je team betrokken met het (door)ontwikkelen van

Bekijk vacature »

C# .NET Developer

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging binnen development waar je komt te werken binnen een flexibel, jong en ondernemend bedrijf. Lees dan snel verder! Voor deze functie zoeken wij een C# .NET Developer die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Daarnaast begeleid je complexe projecten, wij zoeken iemand die altijd kansen ziet en waarbij het glas altijd half vol is. Voor deze functie zoeken wij een Developer met ervaring op het gebied van .NET die deze organisatie gaat versterken. Binnen de organisatie ga jij je vooral bezighouden met het verbeteren van

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

PHP Developer

Dit ga je doen Je werkt nauw samen met het websitebureau aan de ontwikkeling en optimalisering van het internationale platform; Je ziet nieuwe webshops op en voert optimalisaties door; Je bouwt aan technische, functioneel en commercial resultaat; Je vindt het leuk om zelfstandig binnen een internationale organisatie te werken, maar krijgt ook energie om samen met collega's te werken. Hier ga je werken Voor een bedrijf in de regio Rotterdam zijn wij opzoek naar een PHP Developer. Je wordt onderdeel van het communicatieteam en gaat je bezighouden met het optimaliseren van de website van dit internationale bedrijf. Je schakelt veel

Bekijk vacature »

PHP Developer Symfony

Dit ga je doen Ontwikkelen van Product Informatie Management (PIM) systemen; Werken aan zowel grotere als kleine projecten voor toonaangevende klanten binnen o.a. de retail. Hier ga je werken Als PHP Developer kom je te werken binnen een vooruitstrevende organisatie die Product Informatie Management (PIM) systemen levert aan hun klanten. Hun klanten zijn toonaangevende bedrijven binnen o.a. de retail. De organisatie zit gevestigd in regio Zwolle en bestaat uit zo'n 35 medewerkers, waarvan 30 IT. Je komt te werken binnen één van de zelfsturende development teams welke ieder verantwoordelijk zijn voor hun 'eigen' klanten. Jouw team bestaat uit 6 backend

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »

Full stack .NET developer Microsoft 365

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

.NET Developer

Functie omschrijving Jij gaat in de functie van Software Developer werken met C# en .NET framework. Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Je komt te werken in een klein team van developers, die zich voornamelijk bezighouden met back-end development. Verder staat dit

Bekijk vacature »

Lasrobot Programmeur

Over de functie Off-line programma’s maken die het beste resultaat bij de lasrobot mogelijk maken De programma’s met behulp van teach verder optimaliseren Proactief meedenken over oplossingen en over de juiste invulling van lasmallen Het lasrobotproces zoveel mogelijk optimaliseren Over het bedrijf Onze opdrachtgever is gespecialiseerd in de engineering, productie en assemblage van samengestelde plaatwerkproducten en monodelen uit metaal. Onze klant werkt samen met het team aan de mooiste producten van de toekomst. Binnen dit bedrijf staat een sterk team van specialisten op het gebied van industrial design, mechanical engineering, in-house prototyping en all-round projectmanagement. Met daarbij uiteenlopende kennis in

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Software Programmeur

Functie omschrijving Voor een informele club in omgeving Delft zijn wij op zoek naar versterking. Ben jij op zoek naar een nieuwe uitdaging als Software Programmeur lees dan snel verder! Als ontwikkelaar kom je terecht op een afdeling van 6 medewerkers. Werkzaamheden Programmeur Je bent bezig met het ontwikkelen van software en webapplicaties. Je kunt technische klussen uitvoeren op locatie. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een project goed verloopt. Je zult klanten ondersteunen. Verder zul je technische ontwerpen en gebruikersdocumentaties schrijven en deze onderhouden. Er wordt voornamelijk gewerkt met PHP, Java en

Bekijk vacature »

Pagina: « vorige 1 2 3 4 volgende »

Chris PHP

Chris PHP

08/10/2012 12:42:05
Quote Anchor link
@Mik,

Wat bodoel je precies met het id van je browser? Welk id heb je het dan over, je sessie-id? Voor zover ik weet geven browsers zelf geen uniek id hoor, waar jij met PHP gebruik van kunt maken
 
PHP hulp

PHP hulp

04/05/2024 22:02:20
 
Ward van der Put
Moderator

Ward van der Put

08/10/2012 12:42:57
Quote Anchor link
Ook zonder IP-adres kun je op allerlei manieren een sterke hash genereren. Ander voorbeeld:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
// Geheime sleutel
define('SECRET_KEY', 'JHNIRxywSjFTKv5bsGjPchzxekuvdZuj2XvduLf');
/**
 * [a] Asymmetrische 512-bit hash met
 * [b] fingerprinting van de user agent die
 * [c] alleen vandaag geldig is voor
 * [d] applicaties die de geheime sleutel kennen en
 * [e] de strings b, c en d in de juiste volgorde toepassen.
 */
//              |--a---|  |------------b------------|   |----c----|   |---d----|

$hashkey = hash('sha512', $_SERVER['HTTP_USER_AGENT'] . date('Ymd') . SECRET_KEY);
//                        |---------------------------e------------------------|
?>
 
Chris PHP

Chris PHP

08/10/2012 12:46:10
Quote Anchor link
Ward,

De hash generen is geen probleem, de controle met de client is het euvel hier om hijacking tegen te gaan. Controle op IP werkt niet meer anno 2012.
 
Mik PHP

Mik PHP

08/10/2012 12:47:16
Quote Anchor link
@Chris,

Nee, ik dacht dat misschien de browser bepaalde unieke waardes meestuurt naar de client.

Maar helaas
 
Chris PHP

Chris PHP

08/10/2012 12:49:40
Quote Anchor link
Mik tH op 08/10/2012 12:47:16:
@Chris,

Nee, ik dacht dat misschien de browser bepaalde unieke waardes meestuurt naar de client.

Maar helaas


Nee helaas niet, dat zou het probleem gelijk oplossen :D vandaar dat er nu de functionele cookie voorgesteld wordt. Ik had het als idee, echter SanThe heeft het zelfs ooit al gemaakt en getest. Het was goed te doen, en werkte ook op mobiele apparaten.
 
Mik PHP

Mik PHP

08/10/2012 12:54:28
Quote Anchor link
Chris NVT op 08/10/2012 11:10:48:
Maar om even verder te gaan over het sessie hjack verhaal :D

Je kunt natuurlijk ook gewoon een 'functionele' cookie maken, waar je een random id in zet die aangemaakt wordt tijdens het inloggen. Dan kun je kijken of de sessie-id en dat random id (los van je sessie cookie) matchen.

Dit soort cookies mag je plaatsen, en kun je zien of het nog om het zelfde 'apparaat' gaat. Dan sla je beide op in je database tijdens het inloggen, en bij het uitloggen delete je de entry.


Ik snap niet 100% wat je hier mee bedoeld. Dit zijn even als voorbeeld de waardes:

Je session id = 1234
random id cookie = abc123CBA

Wat bedoel je nu precies met het verhaal hierboven.
 
Chris PHP

Chris PHP

08/10/2012 13:09:31
Quote Anchor link
Mik tH op 08/10/2012 12:54:28:
Chris NVT op 08/10/2012 11:10:48:
Maar om even verder te gaan over het sessie hjack verhaal :D

Je kunt natuurlijk ook gewoon een 'functionele' cookie maken, waar je een random id in zet die aangemaakt wordt tijdens het inloggen. Dan kun je kijken of de sessie-id en dat random id (los van je sessie cookie) matchen.

Dit soort cookies mag je plaatsen, en kun je zien of het nog om het zelfde 'apparaat' gaat. Dan sla je beide op in je database tijdens het inloggen, en bij het uitloggen delete je de entry.


Ik snap niet 100% wat je hier mee bedoeld. Dit zijn even als voorbeeld de waardes:

Je session id = 1234
random id cookie = abc123CBA

Wat bedoel je nu precies met het verhaal hierboven.


Als je een sessie aanmaakt krijg je een sessie-id, die sla je op in een database, tevens maak je tijdens het inloggen een cookie aan met een random id.

Dus bijvoorbeeld

Sessie id = 1234567890
Random id = OSIFDjk4POJD8903-2

Deze zet je beide in een database, samen met bijvoorbeeld het unieke id van de gebruiker.

Als je nu op een ‘beveiligde’ pagina komt, kijk je of de sessie-id en het random-id nog steeds gelijk zijn, dan tijdens het eerste inlog. Zoniet is de toegang geweigerd, is het wel zo dan gaat hij verder.

Bij het uiloggen, haal je die entry weer uit je database, aangezien je tijdens het inloggen weer een nieuw (ander) sessie-id en random-id krijgt, zolang er niet uitgelogd wordt.
 
Ward van der Put
Moderator

Ward van der Put

08/10/2012 13:25:03
Quote Anchor link
Chris, als de random id tijdens de huidige sessie niet verandert, gebruik je in wezen een dubbele sessie-id. Twee id's zijn veiliger dan één, maar je kunt min of meer hetzelfde bereiken met één veel sterkere sessie-id, bijvoorbeeld:

ini_set('session.hash_function', 'sha512');

Wat ik veel meer bedoelde, was élke HTTP-respons voorzien van een uniek token dat bij het eerstvolgende HTTP-verzoek moet worden geretourneerd. Als het geretourneerde token niet gelijk is aan het laatste in de database opgeslagen token, kun je de complete sessie ongeldig verklaren.

Als je een voortdurend veranderend token opslaat in een database, kunnen twee clients niet meer één sessie delen. Het ongeldige (verouderde) token vernietigt namelijk de gehele sessie.

Schematisch:

1. Gebruiker A start sessie x en krijgt token y.

2. Indringer B kaapt sessie x met geldige sessie-id en krijgt token z.

3. Gebruiker A doet weer iets in sessie x maar retourneert het verlopen token y.

4. Fout afgevangen: y moest z zijn, dus de gehele sessie wordt vernietigd.
 
- SanThe -

- SanThe -

08/10/2012 13:25:28
Quote Anchor link
Mijn methode:
- Er komt een bezoeker op de site.
- Session starten.
- Kijken of er een cookie is.
- Zo nee:
- (A) Is een nieuwe bezoeker.
- - Maak een nieuwe session (met nieuw session_id) aan.
- - Set een cookie met sha1(ip-nummer).
- - Zet session_id en sha1(ip-nummer) in de database.
- Zo ja:
- - Kijken of session_id in de database staat.
- - Zo nee:
- - - Dan is het een nieuwe bezoeker en ga naar (A).
- - Zo ja:
- - - Cookie uitlezen.
- - - Kijken of cookieinhoud bij het session_id hoort in de database.
- - - Zo nee:
- - - - Hacker.
- - - - Stuur mail naar webmaster.
- - - - Ga naar (A) als nieuwe bezoeker.
- - - Zo ja:
- - - - Geef cookie nieuwe inhoud sha1(ip-nummer).
- - - - Update het record van het session_id en set sha1(ip-nummer).
 
Ward van der Put
Moderator

Ward van der Put

08/10/2012 13:41:41
Quote Anchor link
@SanThe. Als het (vaak vaste) IP-nummer van het slachtoffer bekend is, is sha1(IP-nummer) ook zo gevonden en kan de hacker dus het bijbehorende cookie ook vervalsen. Kun je dan niet beter sha1(IP-nummer . SECRET_KEY) gebruiken? IP-nummer en het gebruik van sha1() zijn gemakkelijk te raden, maar de SECRET_KEY bijna niet als je er een lange, aselecte string van maakt.
 
- SanThe -

- SanThe -

08/10/2012 13:47:44
Quote Anchor link
@Ward: Je kan daar inderdaad iets anders van maken. Zoals Cris reeds aangaf bijvoorbeeld een Random id. Of zoals jij beschrijft een SECRET_KEY er bij. Hoe onbekender, hoe beter.
 
Chris PHP

Chris PHP

08/10/2012 13:48:57
Quote Anchor link
@SanThe,

Het enige wat ik zou veranderen, is dat de sessie evenals de cookie na elke logout gedelete wordt. Zodat er geen troep op de pc achterblijft, en de hacker niet de random id uit de cookie kan halen.

Bij mij zou ik er per login/logout een nieuwe sessie-id genereren evenals een nieuwe random controle string voor de random cookie. Dit is mijn zicht erop, als ik naar mijn eigen browsergedrag kijk clear ik na elke keer internetten mijn complete borwser history.
 
- SanThe -

- SanThe -

08/10/2012 13:56:52
Quote Anchor link
@Cris: Wat jij aangeeft zit er allemaal in. Maar dat leek mij een beetje erg veel info in mijn opsomming.
 
Chris PHP

Chris PHP

08/10/2012 14:03:54
Quote Anchor link
- SanThe - op 08/10/2012 13:56:52:
@Cris: Wat jij aangeeft zit er allemaal in. Maar dat leek mij een beetje erg veel info in mijn opsomming.


Aaah ok, helder :D
 
Mik PHP

Mik PHP

08/10/2012 14:12:50
Quote Anchor link
@SanThe,

Hebben we nu niet weer hetzelfde probleem dat het op mobieltjes niet werkt? Omdat je weer het ip adres gebruikt voor de hash?
 
Chris PHP

Chris PHP

08/10/2012 14:20:47
Quote Anchor link
Mik tH op 08/10/2012 14:12:50:
@SanThe,

Hebben we nu niet weer hetzelfde probleem dat het op mobieltjes niet werkt? Omdat je weer het ip adres gebruikt voor de hash?


Ja dat is wat SanThe ook al aangaf een post terug, dat er ter controle beter een andere manier gepakt kan worden voor het genereren van een controle hash.
 
Mik PHP

Mik PHP

08/10/2012 14:37:26
Quote Anchor link
Ward van der Put op 08/10/2012 13:25:03:
Chris, als de random id tijdens de huidige sessie niet verandert, gebruik je in wezen een dubbele sessie-id. Twee id's zijn veiliger dan één, maar je kunt min of meer hetzelfde bereiken met één veel sterkere sessie-id, bijvoorbeeld:

ini_set('session.hash_function', 'sha512');

Wat ik veel meer bedoelde, was élke HTTP-respons voorzien van een uniek token dat bij het eerstvolgende HTTP-verzoek moet worden geretourneerd. Als het geretourneerde token niet gelijk is aan het laatste in de database opgeslagen token, kun je de complete sessie ongeldig verklaren.

Als je een voortdurend veranderend token opslaat in een database, kunnen twee clients niet meer één sessie delen. Het ongeldige (verouderde) token vernietigt namelijk de gehele sessie.

Schematisch:

1. Gebruiker A start sessie x en krijgt token y.

2. Indringer B kaapt sessie x met geldige sessie-id en krijgt token z.

3. Gebruiker A doet weer iets in sessie x maar retourneert het verlopen token y.

4. Fout afgevangen: y moest z zijn, dus de gehele sessie wordt vernietigd.


Misschien zie ik het fout, maar betekend dit niet dat Gebruiker A uitgelogd word en gebruiker B (hacker) niet?

En dat de sessie pas vernietigt word als Gebruiker A weer een actie onderneemt, dus dat Gebruiker B (Hacker) tussen die periode alles kan doen wat hij wil?
Gewijzigd op 08/10/2012 14:39:02 door Mik PHP
 
Chris PHP

Chris PHP

08/10/2012 14:49:44
Quote Anchor link
@Mik,

Nee want de sessie wordt beeindigd, dus is de hacker ook gelijk 'uitgelogd' aangezien de sessie niet meer actief is :D
 
Ward van der Put
Moderator

Ward van der Put

08/10/2012 15:02:28
Quote Anchor link
@Mik, als je het via een database laat lopen, kun je de gedeelde/gestolen sessie voor beiden vernietigen. Aansluitend kun je, indien nodig, ook tijdelijk automatisch beide IP-adressen blokkeren.

Dat kán juist voordelen hebben. De gebruiker kan uit foutmeldingen zelf afleiden dat er iets niet in de haak is. En je moet extra oplettend zijn bij gebruikers waarvan de sessie wordt gehackt, want dat kan bijvoorbeeld betekenen dat ze een onveilig netwerk gebruiken, dat hun verouderde browser lek is of dat hun accountgegevens op straat liggen.

Het geeft je verder ook de mogelijkheid om onmiddellijk een twee-factor beveiliging te activeren. Is je sessie gestolen? Dan moet je bijvoorbeeld met een bevestiging/code via e-mail of sms een nieuw wachtwoord opgeven. Daarvoor heb je een ingreep van de echte gebruiker nodig, niet de hacker.

Uiteindelijk is beveiliging ook een keuze. En in dit geval een vraag: wil je dat een gebruiker waarvan de sessie wordt gekaapt met dezelfde rechten kan verder werken? Meestal is het antwoord daarop: nee.

Het omgekeerde is bij mijn voorbeeld overigens ook mogelijk en dan krijg je een vorm van een cross-site request forgery (CSRF). De hacker start daarbij een geldige sessie, maar leidt de echte gebruiker aansluitend naar dezelfde sessie. Uit de start van de sessie kun je dus niet afleiden wie de slechterik of goedzak is; ook daarom moeten beide worden geweigerd.
 
Ozzie PHP

Ozzie PHP

08/10/2012 15:05:44
Quote Anchor link
Ward van der Put op 08/10/2012 15:02:28:
Uit de start van de sessie kun je dus niet afleiden wie de slechterik of goedzak is; ook daarom moeten beide worden geweigerd.

Goed punt.
 

Pagina: « vorige 1 2 3 4 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.