top of page

Security Pilot Weekend Briefing Nr. 11 - Das Passwort


Das Passwort - unser Vielfach verhasster Begleiter in der digitalen Welt


Passwörter


Jeder kennt es - der übliche Weg für eine Anmeldung ist die Verwendung einer Kombination aus Nutzername und Passwort.


Passwörter, so kriegt man es immer wieder zu hören, sollen möglichst lang und komplex sein und keine persönlichen Informationen enthalten (Geburtsdatum, Name des Haustieres etc.) - und nicht mehrfach verwendet werden.


Warum sind die Anforderungen so hoch?

Die Komplexität von Passwörtern soll es Angreifern erschweren, die Passwörter zu erraten oder mittels verschiedener Angriffstechniken (Brute Force, Rainbowtables etc.) zu knacken.


Das Passwort selbst ist dabei nur eine Seite der Medaille.

Wichtig ist auch der Hash des Passworts, denn dieser wird üblicherweise gespeichert, so wird aus einem komplexen Passwort ein standardisierter (basierend auf dem verwendeten Algorithmus) Hash. Ein Hash ist ein kryptografischer Wert, der (im Normalfall) nichtzurückgerechnet werden kann.

Weshalb ist das dann trotzdem eine Gefahr?

Wegen sogenannter Rainbowtables.

Rainbowtables beinhalten viele Millionen Hashes von Passwörtern zusammen mit den dazugehörigen Passwörtern. Finde ich den Hash im Rainbowtable, habe ich mit sehr hoher Wahrscheinlichkeit das dazugehörige Passwort.


Warum werden überhaupt Hashes statt des Passworts gespeichert?

Hashes lassen sich mit kryptografischen Methoden aus jedem Eingabetext erzeugen, egal welche Sprache eingestellt ist und welche Sonderzeichen existieren.

Soll ein System die Passwörter tatsächlich "verstehen", müsste es alle möglichen Zeichensätze und Sonderzeichen verstehen, um das Passwort verarbeiten zu können, was viel mehr Rechenleistung erfordert als der simple Abgleich von zwei Hashes (dem gespeicherten und dem welcher aus der Passworteingabe berechnet wurde). Mit dem Hash zu arbeiten ist also wesentlich schneller.


Ein Beispiel


Der Hash des Passworts "Passwort123" lautet nach sha256 (Hash Algorithmus):

1a5c947cdadea168aa6a4af103f6d906e71c4dc43040a0719faeb9f66093971b


Im Rainbowtable würde ich mit der Rückwärtssuche dann das Passwort finden.

Daher sollte in Passwort möglichst komplex und einzigartig sein, damit die Wahrscheinlichkeit geringer ist, dass es bereits in solchen Tabellen auftauchen.


Eine andere Methode Passwörter zu knacken ist das Brute Forcing.

Hierbei wird mit möglichst viel Rechenleistung versucht, ein Passwort quasi zurückzurechnen. Es werden so viele Variationen von Buchstaben, Zahlen, Sonderzeichen etc. in zunehmender Länge "ausprobiert", um den passenden Hash zu erzeugen. Stimmen die Daten überein, habe ich das Passwort berechnet.

Da Rechenleistung begrenzt ist und die erforderliche Leistung exponentiell mit der Länge des Passworts zunimmt, sind längere Passwörter ein guter Schutz gegen diese Angriffsform.


Wie oft sollte ein Passwort geändert werden?


An dieser Frage scheiden sich die Geister.

Nachdem bis vor einigen Jahren galt, Passwörter häufig zu ändern (z.B. alle 90 Tage), vertritt auch das Bundesamt für Sicherheit in der Informationstechnik (BSI) mittlerweile die Ansicht, dass ein zu häufiges Ändern des Passworts nicht zielführend ist, weil die Änderungen nur marginal sind.

Zum Beispiel wird aus Passwort123 dann Passwort124, dann Passwort125 usw.

Dies ist menschlich, da es Menschen oft schwerfällt, sich Passwörter zu merken. Für die Angreifer allerdings ist dies einfach, da die Komplexität immer gleich bleibt und solche minimalen Variationen leichter zu berechnen sind und in den Rainbowtables mit hoher Wahrscheinlichkeit schon enthalten sind.


Ich empfehle, Passwörter entsprechend ihrer Kritikalität zu ändern, soll heißen je nachdem, was sie schützen und was mit einem Nutzeraccount möglicherweise für Schabernack angestellt werden könnte.

Generell empfehle ich Passwörter jährlich zu ändern, insbesondere dort, wo keine Multi-Faktor-Authentifizierung vorhanden ist, welche einen wesentlichen zusätzlichen Schutz darstellt.

Auch wenn Webseiten oder Dienste Passwörter meist verschlüsselt speichern oder weitere Funktionen (z.B. salting) verwenden, um die Hashes der Passwörter zu schützen, so kann man als Nutzer nie sicher sein, dass der Webdienst-Betreiber nicht gehackt wird und seine ach so sicheren Methoden die Passwörter zu schützen gar nicht so sicher waren. Und schwupps haben die Bösewichte mein Passwort - welches ich, weil ich so stolz darauf war - auf fast jeder Seite mit dem gleichen Nutzernamen verwendet habe. Ganz blöd gelaufen.


Nicht selten kam es in der Vergangenheit vor, dass z.B. mangelhafte Hashalgorithmen verwendet worden sind, so dass unterschiedliche Passwörter den gleichen Hashwert ergeben haben - oder nur ein Teil des Passworts verwendet wurde. Einige System haben vom Nutzerpasswort nur eine bestimmte Anzahl an Zeichen verwendet und den Rest einfach ignoriert, weil das verwendete Hashverfahren in der Zeichenlänge begrenzt war.

Man sollte sich da also nie zu sicher sein - deshalb gilt - für jede Seite / jeden Anbieter ein eigenes Passwort.


Wie lang sollte ein Passwort sein?


Ich empfehle Passwörter mit einer Mindestlänge von zehn Zeichen, sofern hier die Komplexitätsvoraussetzungen eingehalten werden, d.h. das Passwort sollte wenigstens

  • 1 Großbuchstaben

  • 1 Kleinbuchstaben

  • 1 Zahl

  • 1 Sonderzeichen

enthalten.


Wie komme ich darauf?

Im Internet kann man danach suchen, wie lange es aktuell dauert, ein Passwort mit Gewalt (Brute Force) zu knacken. Die Zeiten werden mit steigender Rechenleistung immer kürzer.

Nehmen wir als Beispiel folgende Tabelle, laut derer ein Passwort, welches den obigen Kriterien entspricht bei einer Länge von 10 Zeichen ungefähr 5 Jahre benötigt, bis es geknackt ist. Je mehr Rechenleistung dem Angreifer zur Verfügung steht, desto schneller geht es.

Solange wir also jährlich unsere Passwörter ändern, sind wir auf der sicheren Seite, aber noch besser wäre es, die Passwortlänge zu vergrößern, z.B. auf 12 Zeichen und mehr.

Das sollte noch für eine ganze Weile ausreichend sein.

 

Fazit


Passwörter sind immer noch Stand der Technik, auch wenn neue Verfahren wie Passkeys im Kommen sind, um das herkömmliche Passwort zu ersetzen. Auch sogenannt Password-Less (also ohne Passwort) Verfahren sind im Kommen. Hier wird zum Beispiel auf Hardware-Token gesetzt oder einen im sicheren Speicher des Smartphones gespeicherter Schlüssel.


Aber solange Passwörter noch verwendet werden müssen, sollte deren Komplexität hoch, deren Länge groß und die Wiederverwendung ausgeschlossen sein.


Wie man sich nun die vielen Passwörter, die alle komplex und einzigartig sein sollen merken kann, das verrate ich im nächsten Briefing.

Da gibt es zurzeit ein paar echt coole Möglichkeiten, die gar nicht so viel Hirnschmalz erfordern, wie man denken könnte.


Hast Du Fragen zum Thema Passwörter?

Dann komm gern auf mich zu!

4 Ansichten0 Kommentare

Aktuelle Beiträge

Alle ansehen

Comments

Rated 0 out of 5 stars.
No ratings yet

Add a rating
bottom of page