Vinzenz Mai: Login Script

Beitrag lesen

Hallo,

Vielen Dank, du hast mir ziemlich die Augen geöffnet.
» nur als Anmerkung: Ein Beispiel wäre folgender Benutzername:
»
»     irgendwer' OR 1 OR '1
»
» mit beliebigem Passwort. Erfolgreich getestet :-)

Hast du einen Tipp für mich wie ich das verbessern könnte?

im ersten Schritt solltest Du die SQL-Injection verhindern. Behandle daher Deine Variablen mit mysql_real_escape_string(). Beachte die Magic Quotes, die ich Dir bereits verlinkt habe. Solltest Du diese nicht serverseitig deaktivieren können, mache ihre Auswirkungen rückgängig, wie es in Beispiel 2 steht. Die LIMIT-Klausel kannst Du dennoch entsorgen. Sie bringt keinerlei Nutzen, kann jedoch (wie demonstriert) Schaden anrichten.

Der Artikel Sessionbassiertes Loginsystem in SELFHTML aktuell, zeigt Dir, mit welch' geringem Aufwand Du jede geschützte Seite so aufbereiten kann, dass ein unbefugter Zugriff nicht möglich ist (Überprüfung der Anmeldung auf *jeder* Seite).

Wenn von Deiner Login-Seite nach erfolgreichem Einloggen eine Weiterleitung erfolgt, welchen Nutzen versprichst Du Dir vom Ajax-Einsatz. Es wird eh' eine neue Seite geladen, somit tut es ein ganz normales Formular. Ajax-Einsatz nur um Ajax willen halte ich nicht für sinnvoll.

Freundliche Grüße

Vinzenz