Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Loginscript mit Sessions und Cookies

Ich habe bisher noch keine Loginscripts schreiben müssen.
Mein vorgehen ist wie folgt:

user kommt auf Seite. Es wird überprüft ob die Session-Variable "loggedIn" true ist.
Falls ja = user eingeloggt unter namen der Sessionvariablen "username".
Falls nein = überprüfung ob Cookie vorhanden ist.
Falls ja = überprüfen des nuternamen und der passworts(md5) die im cookie gespeichert sind, falls i.o. wird sessionvariable "loggedIn" true gesetzt.
Falls nein = session-variable "loggedIn" = false.

Wenn sich der User einloggt wird ein Cookie gespeichert, und die sessionvariablen "username" und "loggedIn"=true werden gesetzt.
Ausloggmöglichkeit bei der Cookie und Session gelöscht werden ist auch vorhanden.

Nun gibt es aus meiner Sicht 2 möglichkeiten das ganze zu knacken: entweder man klaut sich von einem anderen user das Cookie, und ist somit automatisch eingeloggt. oder, falls möglich, könnte man ne sessionvariable fälschen, was auch meine Hauptfrage ist.
Ist dieses Loginsystem sicher/praxisorientiert, oder macht ihr dass völlig anders?
Ich möchte eben die möglichkeit offen halten,dass jemand keine Cookies akzeptiert, und trotzdem während einer session eingeloggt bleibt...

Müsste ich noch die Session_id weitergeben(womit fälschen der session sehr schwer würde), oder sind sessions nicht fälschbar(was ich nicht denke)....

Thx für Antworten, bieler

Hier gehts zum Orginal Eintrag "Loginscript mit Sessions und Cookies" im Forum

Antworten

Sessionvariablen können nicht gefälscht werden. Es kann höchstens die Session-ID erraten werden, was aber "sehr unwahrscheinlich" ist.


2.

wow...1 minute...effektiv...hier kriegt man die schnellsten antworten überhaupt...danke oimel!


3.

Die Sessionid muß übertragen werden, da die Session sonst nicht eindeutig identifizierbar ist.
Standardmäßig werden Sessionsids über Cookies realisiert, doppelt gemoppelt bringt also normalerweise nix.
Har der User keine Cookies aktiviert muss die Sessionid per GET übergeben werden.
siehe ini_set('session.use_trans_sid',1)


4.

Frage, wie ermittle ich ob cookies akzeptiert wurden.
Laut php.net reicht ja:
Code:                   In Zwischenablage kopieren (nur IE)
1">

nicht aus. Wäre wirklich schade wenn ich Leute die keine Cookies akzeptieren aussen vor lassen müsste..oder wie macht ihr dass so?(den Satz: "Ihr müsst Cookies aktiviert haben" dünkt mich doch sehr schlecht.....)


5.

Zitat:
Die Sessionid muß übertragen werden, da die Session sonst nicht eindeutig identifizierbar ist.
das heisst, wenn ich einen nutzernamen in eine session speichere, wird der nur übertragen, wenn cookies aktiviert sind, oder ich die sessionid über GET mitgebe?

Zitat:
Standardmäßig werden Sessionsids über Cookies realisiert, doppelt gemoppelt bringt also normalerweise nix.
Ja, aber wenn ich möchte dass der user(wie hier im forum) eingeloggt bleibt, muss ich ja ein Cookie setzen....
Gibts statistiken oder weiss jemand, wie viele nutzer Cookies nicht akzeptieren?oder welche Nutzergruppe dies deaktiviert hat? Oder is es so schlecht wenn eine seite ohne cookies nicht benutzt werden kann?
Wie ich prüfe ob ein cookie gesetzt ist, weis ich jetzt(expire, print_r($_COOKIE))....
und noch ne ganz blöde frage: die übergabe der Sessionid über geht: blablabla.php?SID=123646498178(SID), erkennt es automatisch wenn die SID so über GET übergeben wird, oder muss ich sie im script dann noch zuordnen?


6.

Zu 1
JA!

Zu 2 (hier im Forum)
Ja!

Zu 3
ein erfolgreicher test, ob ein cookie gesetzt ist, ist erst nach dem zweiten Scipt Aufruf möglich.....(zähler einbauen)
sebst dann ist fälschung denkbar

zitat: wenn die SID so über GET übergeben wird....im script dann noch zuordnen?
Ja!

----------
Mir ist keine Möglichkeit bekannt absolute Sicherheit zu garantieren. Die meisten User sind zum Glück nicht in der Lage Cookies per EMail zu versenden oder gar zu fälschen, bei URLs ist die Gefahr größer. Banken arbeiten mit SSL und Session Verfallszeiten um die 10 Minuten, nicht ohne Grund!
Dieses ist ein Glatteis-Thema. Viel Erfolg wünsche ich Dir.


Hier gehts zum Orginal Eintrag "Loginscript mit Sessions und Cookies" im Forum
 
phpforum.de | Impressum | Handy Bundles