Cookie beveiligen.

  • Hey cp,


    Bij mijn inlog script krijgt de cookie een hash toegevoegt. Echter had ooit is een keer een speler toch op een 1 of andere manier de cookie aangepast naar mijn admin account, waardoor hij misbruik maakte van bepaalde opties.


    Ja het is een tijd geleden, ik heb veel beveiligingen gedaan, maar ik ben toch nog bang voor een vervolg.


    Hoe kan ik goed mijn cookie beveiligen?


    Groetjes,
    Sukel

  • Hoe wordt je hash opgebouwd?
    Misschien heeft hij zijn eigen hash kunnen ontcijferen en heeft hij zo de jouwe kunnen namaken.


    Als je hash bv een encryptie is van je username, dan is dat eenvoudig te vinden.


    Best maak je een hash met een salt erin.
    En salt is een vast woord of zin die je toevoegt voor of na het wachtwoord.


    Bv: mijn wachtwoord is huis
    In mijn code zet ik een vaste salt, voor iedere gebruiker hetzelfde, namelijk hallo


    Dan ga ik volgende encrypteren:

    PHP
    $wachtwoord='huis';
    $salt='hallo';
    echo md5($wachtwoord.$salt);


    Eventueel kun je unieke gegevens bij in de hash steken, zoals de id van de user in je database, die weten ze meestal bv niet zelf.


    Mvg,
    K

  • [offtopic]Ik wil niet offtopic gaan hoor sukel.
    Maar als ik goed gelezen heb mogen cookies niet meer vanaf binnenkort.
    Hiervoor moet je dan een scriptje maken om voor elke keer toestemming te vragen.
    Beste is met sessies te werken eigenlijk als je het meteen goed wilt doen.[/offtopic]


    Beste redenen is via koen denk ik zo heb je beste beveiliging.

  • [offtopic]Europa is aan het vechten met de wereld om alle cookies eerst opt-in te maken. Dat je bezoeker moet akkoord gaan dat we cookies op je pc zetten.
    Voorlopig nog niets van aantrekken.
    Als Europa dit erdoor duwt, gaan vele sites problemen hebben en komt op elke site gewoon eerst de vraag om de cookies te aanvaarden.


    Gewoon cookies gebruiken en waar kan kritiek uiten op deze maatregel van 1 onwetende mens binnen Europa, de rest ervan is wel goed :cheer:[/offtopic]


    Indien iemand meer hierover wil weten, start een nieuw topic aub.
    Dit hoort hier niet.


    Ok, succes.
    Maar moet zeker lukken. :)

  • Ten eerste, gebruik sessions en geen cookies,
    Cookies zijn eenvoudig aan te passen, en dus niet veilig.


    Verder zou je een session kunnen koppelen aan IP, en desnoods browseragent er ook nog bij.


    En ook kijken of ze niet via XSS je cookie hebben bemachtigd, inplaats dat die een cookie heeft aangepast.


    wat html_entities doet wonderen op berichten, profiel, forum enzovoort.


    Verder zou je session_regenerate_id kunnen gebruiken, bijvoorbeeld een bepaalde tijd instellen (10 minuten?) in de session, en als die tijd over is de tijd weer aanpassen en session_regenerate_id gebruiken om een nieuwe session aan te maken (Vergeet niet de oude te verwijderen)


    Zo zouden ze met XSS alsnog binnen 10 minuten de cookie gebruiken, en desnoods in combinatie met IP check en browseragent check.


    Offtopic: Vind het geen probleem dat je cookies moet toestaan, eigenlijks wel fijn zelfs.
    Maar hoop wel dat de browsers het onthouden of je de cookies wilt onthouden of niet voor een bepaalde website.


    Edit:
    Even een voorbeeld van php.net die werd geplaatst door een gebruiker, is dus niet door mij gemaakt!


Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!