Ga naar inhoud

[PHP] Veilige login


anoniem

Aanbevolen berichten

Hi, Ik heb een CMSje gebouwd waar mensen op kunnen inloggen. Nu moet de login natuurlijk veilig zijn, ik wil niet dat een of andere dokus zomaar in dat CMS kan gaan zitten vissen. Op iedere pagina worden de login naam en de md5 hash van het password gecontroleerd. Is dit nodig of kun je gewoon een keer inloggen en dan klaar. Veel sites maken ook gebruik van login sessies die om de zoveel tijd vernieuwd moeten worden, en foefjes met IP adressen. Hoe gaat dit in zijn werk en voegt dit uberhaupt veiligheid toe?
Link naar reactie
1. login met user/pass 2. login correct -> cookie plaatsen login fout -> terug naar 1. (eventueel tellen en na x fouten ip blokkeren) 3. cookie (evt. ip) checken bij elke volgende pagina cookie fout -> 1. 4. logout -> cookie wissen (leeg cookie, cookie met verlopen tijd) 5. cookie laten verlopen met sessie en/of bepaalde tijd Niets is 100% veilig, maar dit werkt in mijn ervaring goed.
Link naar reactie
[quote:74622b6695]Veel sites maken ook gebruik van login sessies die om de zoveel tijd vernieuwd moeten worden, en foefjes met IP adressen. Hoe gaat dit in zijn werk en voegt dit uberhaupt veiligheid toe?[/quote:74622b6695] sessions in een database gecombineerd met cookies zijn veiliger dan ALLEEN cookies vanwege een aantal redenen: - niet nodig gebruikersnaam/wachtwoord op te slaan in cookie - de cookie met session gegevens kun je alleen geldig laten zijn voor een IP/user agent/tijd combinatie oftwel voor maar 1 persoon. je kunt ook overgaan op session ID's in de URL als de gebruiker geen cookies accepteerd. php heeft ook een [url=http://nl3.php.net/session]eigen session systeem[/url].
Link naar reactie
OK, Als ik dit dus goed begrijp doe ik hetvolgende: 1. Inloggen 2. Username en wachtwoord bevestigen via MySQL 3. Indien correct, unieke session_key genereren 4. IP adres opsporen 5. IP adres en session hash in DB opslaan. 6. Cookie setten dat gebruiker is ingelogt 7. Op ieder pagina geldigheid van de session verifieren Maar wat is dan het voordeel tegenover op ieder pagina gewoon username + login verifieren. Er is nog steeds DB contact met de session hashes!
Link naar reactie
ja, en nog steeds "onveilig" te noemen. maar t is niet anders, tenzij je SSL neemt op andere, belangrijkere punten veiliger aangezien je geen waardevolle gegevens op iemands computer in cookies achter laat. het gevaar van menselijke fouten (slordig omgaan met gegevens etc) is vele malen groter dan dat iemand je internet verkeer gaat aftappen... lees ook ns: http://nl.php.net/session#session.security
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...