session hijacking,, wat houdt dit in?
Pagina: « vorige 1 2 3 4 volgende »
Ozzie PHP op 08/10/2012 10:12:40:
Dat zou mooi zijn inderdaad. Ik heb alleen geen flauw idee of zoiets technisch mogelijk is.
Dat kan zeker, want jou porvider/host beheerd namelijk zijn eigen DHCP servers. En die kunnen jou gewoon een fixed IP geven. Meeste zakelijke abbonementen van KPN, UPC, Ziggo en xs4all zijn al fixed.
Ah oké. En kan dat op een mobieltje dan ook?
Ozzie PHP op 08/10/2012 10:28:05:
Ah oké. En kan dat op een mobieltje dan ook?
Ja, jou provider beheerd ook de IPadressen van je telefoon. Nu staan ze dynamisch, dus telkens als je op een andere mast, accespoint, etc komt krijg je dus een nieuw ip en een nieuwe DHCP lease.
oké
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.
Klinkt goed!
Gewijzigd op 08/10/2012 11:32:02 door Ozzie PHP
Ja, er wordt een functioneel cookie geplaatst bij de bezoeker.
Maar stel dat de bezoeker geen cookies accepteert, dan werkt het dus niet? Betekent dit dat iemand zonder cookies niet kan inloggen?
Wat er bij mij gebeurt als je inlogt:
Dit sla je op in SESSIONS:
user_id
hashkey
de hashkey word zo gesalt:
substr(0, -3, md5(sha1(ip . uniqid())));
Het uniqid() word ook in de database gegooid in de tabel leden zodat je die altijd weer kan vergelijken.
En dit betekend dat als het ip adres anders is je er ook niet in komt.
Als je onthouden wilt worden word hetzelfde gedaan in de cookie.
Is dit veilig? Of raad iemand mij een andere manier aan?
Groetjes,
Mik
Dan kom ik even terug op het voorbeeld van een mobieltje in de trein. In jouw geval wordt (volgens mij) iemand dan continue uitgelogd.
Ja als mensen helemaal geen cookies willen accepteren wordt het natuurlijk lastiger. Dan kun je het besluit maken om een melding te geven dat de gebruiker geen cookies toestaat. In ivm de veiligheid hij dan niet toegestaan wordt om in te loggen.
@Mike,
Het is 'veilig' alleen net wat al is aangegeven, zal dit veel problemen geven met mobiele apparaten aangezien het IP adres daar veel van wisselt.
Ozzie PHP op 08/10/2012 11:37:29:
oké...
Maar stel dat de bezoeker geen cookies accepteert, dan werkt het dus niet? Betekent dit dat iemand zonder cookies niet kan inloggen?
Maar stel dat de bezoeker geen cookies accepteert, dan werkt het dus niet? Betekent dit dat iemand zonder cookies niet kan inloggen?
Klopt. dan kan ie niet inloggen.
Okeej, gewoon cookies verplichten dus :)
Chris NVT op 08/10/2012 11:47:42:
Ozzie,
Ja als mensen helemaal geen cookies willen accepteren wordt het natuurlijk lastiger. Dan kun je het besluit maken om een melding te geven dat de gebruiker geen cookies toestaat. In ivm de veiligheid hij dan niet toegestaan wordt om in te loggen.
@Mike,
Het is 'veilig' alleen net wat al is aangegeven, zal dit veel problemen geven met mobiele apparaten aangezien het IP adres daar veel van wisselt.
Ja als mensen helemaal geen cookies willen accepteren wordt het natuurlijk lastiger. Dan kun je het besluit maken om een melding te geven dat de gebruiker geen cookies toestaat. In ivm de veiligheid hij dan niet toegestaan wordt om in te loggen.
@Mike,
Het is 'veilig' alleen net wat al is aangegeven, zal dit veel problemen geven met mobiele apparaten aangezien het IP adres daar veel van wisselt.
Ja ik heb het inderdaad getest op een mobiel en het werkte niet. Gelukkig is de website waarvoor het gebruikt word niet voor de mobiel.
Maar ik ben blij om te horen dat het een veilig manier van storen is.
Ozzie PHP op 08/10/2012 11:52:11:
Okeej, gewoon cookies verplichten dus :)
Dit lijkt me wel, je doet het immers voor je bezoekers en niet voor je eigen!
Toevoeging op 08/10/2012 11:55:39:
Mik tH op 08/10/2012 11:53:15:
Ja ik heb het inderdaad getest op een mobiel en het werkte niet. Gelukkig is de website waarvoor het gebruikt word niet voor de mobiel.
Maar ik ben blij om te horen dat het een veilig manier van storen is.
Chris NVT op 08/10/2012 11:47:42:
Ozzie,
Ja als mensen helemaal geen cookies willen accepteren wordt het natuurlijk lastiger. Dan kun je het besluit maken om een melding te geven dat de gebruiker geen cookies toestaat. In ivm de veiligheid hij dan niet toegestaan wordt om in te loggen.
@Mike,
Het is 'veilig' alleen net wat al is aangegeven, zal dit veel problemen geven met mobiele apparaten aangezien het IP adres daar veel van wisselt.
Ja als mensen helemaal geen cookies willen accepteren wordt het natuurlijk lastiger. Dan kun je het besluit maken om een melding te geven dat de gebruiker geen cookies toestaat. In ivm de veiligheid hij dan niet toegestaan wordt om in te loggen.
@Mike,
Het is 'veilig' alleen net wat al is aangegeven, zal dit veel problemen geven met mobiele apparaten aangezien het IP adres daar veel van wisselt.
Ja ik heb het inderdaad getest op een mobiel en het werkte niet. Gelukkig is de website waarvoor het gebruikt word niet voor de mobiel.
Maar ik ben blij om te horen dat het een veilig manier van storen is.
Ja alleen nu verplicht je de bezoekers om altijd een pc voor de site te gebruiken, en dus nooit via hun mobiel kunnen werken. Kijk eens naar de cookie oplossing, je hoeft hier geen toestemming voor te vragen want het is een functionele cookie.
Je kunt ook een variant van secret/private key encryption gebruiken, in een vereenvoudigd voorbeeld:
Code (php)
Alleen PHP-applicaties die de geheime sleutel in de constante SECRET_KEY kennen, kunnen daarmee op basis van het IP-adres een geldige sleutel reproduceren.
Ward van der Put op 08/10/2012 12:00:56:
Achteraf een zwak hashalgoritme zoals md5() toepassen op een langere sha1()-hash heeft niet veel zin, omdat je het aantal mogelijke combinaties drastisch vermindert. Met andere woorden: je benut de sterkte van sha1() niet.
Je kunt ook een variant van secret/private key encryption gebruiken, in een vereenvoudigd voorbeeld:
Alleen PHP-applicaties die de geheime sleutel in de constante SECRET_KEY kennen, kunnen daarmee op basis van het IP-adres een geldige sleutel reproduceren.
Je kunt ook een variant van secret/private key encryption gebruiken, in een vereenvoudigd voorbeeld:
Code (php)
Alleen PHP-applicaties die de geheime sleutel in de constante SECRET_KEY kennen, kunnen daarmee op basis van het IP-adres een geldige sleutel reproduceren.
Ook dit zal problemen opleveren met mobiele apparaten.
Zend de browser niet een unieke waarde mee naar de client? Bijvoorbeeld een id van de browser of iets in die richting. Iets dat niet telkens kan veranderen.