Egal, um welchen Dienst es sich dreht, den Benutzern geht es immer zu langsam. Der Schwerpunkt des ADMIN-Magazins 05/2011 verrät, mit welchen Tools man ... (mehr)

Ilsebill salzt nach

Die gewählte Hashfunktion ruft Phpass mehrfach auf, hängt also mehrere Fleischwölfe hintereinander. Es dauert dann wesentlich länger, bis ein Angreifer einfach alle möglichen Passwörter hintereinander durchprobiert hat – bei acht Fleischwölfen bis zum Faktor 8. Ganz nebenbei verlängert sich auch der Hashwert, die Fachleute nennen das auch Key Stretching.

Um die Sicherheit noch weiter zu erhöhen, bezieht Phpass eine zufällig gewählte Zeichenkette, das sogenannte Salt, mit in die Berechnung ein. Für jedes eingetippte Passwort kommt dabei ein anderes Salt zum Einsatz. Damit muss ein Angreifer wesentlich mehr Passwörter in seiner Rainbow Table ablegen, was Rechenaufwand und Platzbedarf beträchtlich erhöht. Als Quelle für das Salt benutzt Phpass auf Unix-Systemen »/dev/urandom« . Sollte sie nicht zur Verfügung stehen, greift es auf einen eigenen Pseudo-Zufallsgenerator zurück. Obwohl dieser eigentlich nur für die Erzeugung von Salt ausgelegt ist, nutzt ihn das Content-Management-System Drupal 7 in einer abgewandelten Variante auch noch an anderen Stellen.

Das Salt hängt Phpass offen an den generierten Hash an. Dies ist notwendig, da das Salt bei der nächsten Anmeldung des Besuchers erneut in die Hash-Funktion einfließen muss – andernfalls käme ein falscher Hash-Wert heraus. Das ist jedoch keine Sicherheitslücke, da das Salt lediglich die Zahl der möglichen Hash-Werte erhöhen soll.

Sicherheitsklasse

Phpass funktioniert bereits ab PHP 3.0.18. Möchte man sichergehen, dass Phpass garantiert Bcrypt als Hashfunktion verwendet, sollte man mindestens PHP 5.3.0 verwenden. Erst diese Version integriert Blowfish, Extended-DES und MD5 fest in den Interpreter. Um das in den Vorversionen zu erreichen, kann man den Suhosin Patch einspielen [4] – was in einigen Linux-Distributionen sowie verschiedenen BSD-Systemen bereits geschehen ist. Für Python existiert übrigens eine vollständige Portierung, eine abgespeckte Variante auch noch für Perl [1] .

Mittlerweile setzen Phpass unter anderem Wordpress ab Version 2.5, bbPress und Vanilla ein. Modifizierte beziehungsweise auf die MD5-Notfallvariante beschnittene Versionen stecken zudem in phpBB3 und Drupal 7. Für Drupal 5 und 6 sowie Typo3 existieren Erweiterungen, die Phpass in den Content-Management-Systemen nachrüsten.

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023