Phpass nimmt Entwicklern von Web-Anwendungen einige Arbeit ab, ist aber kein Allheilmittel. Ein vom Benutzer aus Faulheit gewähltes Geburtsdatum als Passwort kann man schlichtweg erraten, da nützt dann auch kein noch so gutes Hashing. Man sollte daher in der eigenen Webanwendung alle eingegebenen Passwörter auf ihre Länge und Qualität abklopfen.
Zudem sollte man die Übertragung der Passwörter via SSL absichern. Schließlich nützt es wenig, wenn die Webanwendung die Passwörter knacksicher verwahrt, ein Lauscher aber die Kommunikation zwischen Client und Server mitschneidet und so das eingetippte Passwort im Klartext abfängt.
Ein Angreifer könnte zu einem Benutzernamen einfach alle möglichen Passwörter durchprobieren. Um ihm dies zu erschweren, kann man die Zeitspanne zwischen zwei Anmeldeversuchen mit jeder Fehleingabe künstlich erhöhen. Ein normaler Benutzer, der sich nur dreimal vertippt, bekommt davon nicht viel mit, ein Programm, das systematisch mehrere Hundert Passwörter nacheinander durchprobiert, wird dadurch aber massiv ausgebremst.
Letztlich ist Passwortsicherheit nur ein kleiner Baustein einer sicheren Webanwendung. Unter anderem gilt es, jede Benutzereingabe auf Schadcode hin abzuklopfen (Stichwort SQL-Injections [5] ).
Phpass verhilft einfach und schnell zu einem sicher gehashten Passwort. Es ist in der Praxis erprobt, von vielen Augen analysiert und dank Public-Domain-Lizenz kostenlos nutzbar. Hinter Phpass steckt übrigens Solar Designer (alias Alexander Peslyak), der auch für den bekannten Passwort-Knacker John the Ripper verantwortlich ist. Unter [6] gibt er noch viele weitere Tipps für sichere Webanwendungen, die über die Verwendung von Phpass hinausgehen. (ofr)
Infos