Wie sicher sind cookies

dave_

Erfahrenes Mitglied
Hi,
bei einem Projekt werde ich mit cookies und sessions arbeiten.

Mich würde interessieren, ob es möglich ist cookies zu fälschen, bzw wie schwer es ist.
Meint ihr es würde reichen, wenn ich nach dem korrekten einloggen ein cookie mit dem name user und inhalt halt der benutzer setzte ?

sind angaben wie domain usw sinnvoll?
ich habe auch schon überlegt ob es sinnvoll wäre eine seriennummer mit einzubaun.. naja wie sicher ist denn nun das ganze ? :)
 
naja ich hatte das doch genau beschrieben...

wie hier auf tutorials.de zB. wenn jemand mein cookie hätte könnte er problemlos posten, nun ist meine frage wie schwer es ist so ein cookie zu fälschen, bzw wenn zB nen freund hier wäre, wie schwer ist es das passwort aus dem cookie zu lesen

oder bei boards im allgemeinen, steht da immer nur user und passwortin den cookies ?
 
also ich würd nix im cookie speichern ausser username + password. der rest kommt in die session.

zum passwprd: du schreibst die passwörter einfach encrypted in die db und speicherst sie dann auch entsprechend im cookie. bei der passworteingab lässt du dann einfach die eingabevariable md5-crypten und überprüfst das mit deiner login funktion.

so kann man zwar das passwort im cookie immer noch einsehen, aber es ist eben mit md5 encrypted, und dadurch nochmal n relativ hoher aufwand das rauszukrigen (es ist nicht unmöglich, aber ich glaub auch erfahrene hacker haben ihre probleme damit, hab ich gelsenen :))

wirklich sicher ist es nur wenn der user das password jedesmal von neuem eingibt und alles in der session gespeichert wird. (naja nix is 100% sicher aber ich denk ma das is das sicherste was mit php geht)
 
Dazu mal eine kleine Anmerkung:
Die md5 ist nicht zu empfehlen, wenn du irgendwann mal wieder auf die Original-Daten zugreifen willst. md5 ist nämlich eine Einbahnstraße: Man kann damit einen Schlüssel für eine Zeichenkette oder eine ganze Datei erstellen, aber aus dem Schüssel kann man die ursprüngliche Zeichenkette nicht generieren. Nur für den Fall, dass du das noch nicht wusstest ;) Natürlich kann man den md5-Schlüssel des eingebenen Passwortes mit dem des in der DB gespeicherten vergleichen, aber 100%-ig sicher ist das nicht. Es ist zwar unwahrscheinlich dass zwei Strings den selben 128-bit Schlüssel erzeugen (es gibt immerhin über 3,4*10E38 Möglichkeiten), aber nicht auszuschließen.
Und wenn jemand das Cookie von deinem PC "erbeutet", sollte es kein allzu großes Problem darstellen, dies auf einen anderen PC zu kopieren und damit Zugang zu deinem Account zu erhalten. Egal ob mit oder ohne md5-Schlüssel ;)
 
ja is mir schon klar das die ganze sache ne einbahnstraße is... aber was solls? das password brauch man normal nich zu encoden, weils ja eh nur der user weiß.

zu der sicherheit: also von den gegebenen möglichkeiten her is es schon relativ sicher, aber is klar, 100 prozent sicher is nix. s kann ja auch sein das einer deinen rechner auf ner lan klaut... oder einfach im rechenzentrum einbricht und den ganzen server mitgehen lässt :-)

//edit: mein gott bin ich rechthaberisch :p
 
Das es ohne cookies am sichersten ist, das ist mir schon klar, nur stell dir mal eine seite auf der du öfters was postest ohne cookies vor. ich glaube nicht das du da noch often posten würdest. Mir wäre es zumindest zu blöd jedes mal das pass einzugeben ;)

hm ich habe da ein wenig rumprobiert, es gibt ja die funktion md5($sring); nur leider funzt das nicht so ganz, was muss ich denn da genau schreiben ? :)

edit: funzt :)

habe die "" vergessen.
wens interessiert: einfach md5("daspasswort22"); und es wird verschlüsselt. :-)

thx, so werde ich das machen.
 
Also ich würde keine Cookies nehmen ... halt wenns nur für drei, vier personen ist dann schon ... aber wenn du zB. eine community schreibst wär es ziemlich dumm, weil viele nicht cookies aktiviert haben ... speicher das lieber alles in session ...
 
was meinst du mit alles in session speichern ?
sobald der browser neugestartet wurde, wird die session ja auch neu registriert.
Um cookies komme ich schlecht herum, wenn ich nicht will das man bei jedem login sein passwort eingeben muss.
 
was du natürlich auch machen kannst, ist die ip loggen. und wenn der jenige das nächste mal mit der selben ip ankommt, ist er sofort drin. ist natürlich noch die gefahr, das jemand versucht die ip zu faken, abgesehen davon, das die selbe ip wiederzubekommen nicht immer sehr hoch ist....
 

Neue Beiträge

Zurück