Rechten in een sessie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Write Down

Write Down

12/03/2011 14:03:22
Quote Anchor link
Hallo,

Ik heb een loginsysteem gemaakt, waarbij ik bepaalde gegevens in een sessie stopt. (mijn sessie-handler slaagt de sessie overigens op in de database)

Een van die zaken die ik in de sessie stop is de rechten van een gebruiker. Verder controleer ik op elke (beveiligde) pagina door middel van een hash of de sessie niet vervalst is. Dus stel dat de hacker in staat is een gegeven te manipuleren in de sessie, zou dit moeten tegengehouden worden.

Wat ik me echter afvraag of het wel veilig is de rechten van een gebruiker in de sessie te stoppen. Stel dat de hacker de sessie toch zou kunnen vervalsen, is dit namelijk een enorm veiligheidslek. Langs de andere kant, als ik de rechten telkens uit de database haal, kost dit een extra query + de database kan ook altijd gehacked worden. (en dus de rechten aangepast worden)

Wat is jullie meningen hierover?
 
PHP hulp

PHP hulp

19/08/2022 01:23:31
 
Kumkwat Trender

Kumkwat Trender

12/03/2011 14:08:10
Quote Anchor link
Dan zou de hacker toch ook in staat zijn de sessie id te vervalsen? ;p
 
Obelix Idefix

Obelix Idefix

12/03/2011 14:08:19
Quote Anchor link
Geen bevoegdheid in een sessie.
Die ene (extra) query merk je niet (bij een goed datamodel).
 
Jordi Kroon

Jordi Kroon

12/03/2011 14:09:23
Quote Anchor link
Ik zou dit gewoon in de database zetten. En dan gewoon die rechten ophalen :

1= gast
2=member
3=admin

En dan als de rank = 1 dan dit laten zien rank 2 = dit enz
( was maar een voorbeeld )

Toevoeging op 12/03/2011 14:11:31:

@kumkwat sessies worden opgeslagen op de server niet op de client zelf
 
Write Down

Write Down

12/03/2011 14:18:00
Quote Anchor link
@Kumkwat

In principe wel. Maar, je kan het de hacker maar best zo moeilijk mogelijk maken lijkt mij.

@Obelix
Ja, maar heb je daarvoor ook opbouwende mening waarom je toch voor een query zou kiezen?

@Jordi
Sowieso komen de rechten uit de database, bij het inloggen haal ik deze eruit. De vraag is alleen of het verstandig is ze op te slaan in de sessie. En dus het misschien een beter idee is het steeds uit de database te halen (op andere pagina's)

Tevens heb je gelijk als je zegt dat sessies server-side zijn. Toch is een goede hacker in staat die te vervalsen.
 



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.