Sessions te beinvloeden door hackers

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Matthijs Vos

Matthijs Vos

03/08/2012 12:06:53
Quote Anchor link
Hallo allemaal,

Ik ben bezig met een inlogsysteem. Ik schrijf in een session de gebruikersnaam weg. Ik vroeg me echter af, is het voor een hacker mogelijk om een session aan te passen? Dus dat hij bijvoorbeeld zelf een account maakt, daar mee inlogt en dan de gebruikersnaam in de session aanpast?

Mijn 2e vraag is, is het veilig om de rang (toegangsniveau) weg te schrijven in een session, of is het veiliger dat steeds weer uit de database te halen?

Matthijs
 
PHP hulp

PHP hulp

27/01/2021 05:49:14
 
Chris PHP

Chris PHP

03/08/2012 12:11:32
Quote Anchor link
Matthijs,

Ja een sessie kan gehacked worden, echter raad ik nooit aan om een inlognaam erin te zetten. Maak gebruik van unieke 'screen names' die we hier ook hebben. Hier log je in met je email, maar er staat Matthijs Vos ipv je loginnaam.

Met screennames kan niet ingelogd worden, endus verkom je dat een bruteforce op deze manier werkt.

Tevens kun je het toegangsniveau wel in een sessie zetten, anders moet je met elke beveiligde site een query draaien om te kijken wat zijn toegangsniveau is.
 
Matthijs Vos

Matthijs Vos

03/08/2012 12:15:49
Quote Anchor link
Bedankt voor je snelle reactie. Maar als ik nu in mijn session de 'screen name' zet kan een hacker die dus ook aanpassen toch? Dan logt de hacker in op 'Matthijs Vos', past het aan naar 'Chris NVT' en hij zit in jouw account. Ditzelfde kan hij dan doen met het toegangsniveau. of zie ik dit verkeerd? en als ik het wel goed zie, hoe is dit te voorkomen?
 
Chris PHP

Chris PHP

03/08/2012 12:20:58
Quote Anchor link
Om een sessie aan te passen moet hij code kunnen injecteren in je site om dit aan te passen. Sessies worden over het algemeen 'gehijacked' niet gehacked. Dat betekend dat hackers dan gewoon meeliften op jou sessie, maar verder niets kunnen aanpassen.

Sessies staan opgeslagen op de server, niet lokaal op het werkstation. Op de pc wordt alleen een cookie gezet, met daar een geencrypt sessie id.
 
Matthijs Vos

Matthijs Vos

03/08/2012 12:22:40
Quote Anchor link
@chris oke, hijacken kan je toch tegen gaan door te contoleren of de screen name bij het ip hoort wat je wegschrijft in een database?
 
Chris PHP

Chris PHP

03/08/2012 12:26:05
Quote Anchor link
Matthijs,

Ja maar dat kan dan alleen per sessie, het is niet slim om een gebruiker/bezoeker te koppelen aan een ipadres. Want dan zouden ze dus niet via telefoon of op het werk kunnen inloggen, vanwege een ander ipadres.

Wat je kunt doen is, wanneer er 2 verschillende ipadressen met de zelfde sessie werken, gewoon de sessie beeindigen endus de gebruiker(s) uitloggen.

Let wel dat je deze controle dan op elke pagina moet uitvoeren! Want als je bijvoorbeeld alleen op index.php controleerd, kan hij op home.php wel gewoon meeliften.
 
Stefan WM

Stefan WM

03/08/2012 12:42:04
Quote Anchor link
Het beste is een sessie en een ip koppelen op het moment dat er ingelogd wordt en dit controleren. Klopt dit heeft hij toegang. Zodra er elders met ingelogd word via de login pagina kun je deze opnieuw setten maar is hij wel uitgelogd op het andere ip adres.
 



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.