Gehaxelts Blog

IT-Security & Hacking

[TuT] Sichere Passwörter

Es folgt ein kleines Tutorial, welches beschreibt, wie man ein sicheres Passwort erstellt, und sich dieses merken kann.

Aufbau:

  1. Was ist ein Passwort?

  2. Was ist Brute-Force?

  3. Was ist ein sicheres Passwort?

  4. Wie kann ich es mir merken?

1. Was ist ein Passwort?

Ein Passwort ist heutzutage kein Wort mehr, sondern eine Zeichenkette, welche es einem Benutzer ermöglicht sich gegenüber einem System zu authentifizieren und in Bereiche einzusehen, die von Außen ohne die entsprechenden Logindaten nicht möglich wäre.

Ein Passwort ist sozusagen ein Schlüssel, um ein Schloss zu öffnen und den verschlossenen Inhalt zu nutzen.

Man kann sich das aus dem Englischen herleiten:

“password” -> “to pass” - “vorbeigehen/durchlassen” -> “word” - “Wort”

2. Was ist Brute-Force?

Brute-Force bedeutet so viel wie “Rohe Gewalt” und stellt eine Methode zum “Erraten” des Passwortes dar.

Dabei versucht der Angreifer das Passwort zu erraten, in dem er einen Login mit einer generierten Zeichenkette versucht.  Dabei wird die Zeichenkette “iteriert”, d.h. die Kette fängt mit “a” an und wird danach auf “b” geändert. Das wiederholt sich fortlaufend auf mit der Länge:

  • a

  • b

  • aa

  • ab

  • ac

  • bbb

  • bbc

Dann gibt es noch die Möglichkeit einen Brute-Force über sogenannte Wortlisten durchzuführen. Dabei nutzt der Angreifer statt den generierten Passwörtern, Passwörter aus den Wortlisten, in denen häufige Passwörte, z.B. “test123”, “passwort”, abgespeichert sind, und so den Zeitaufwand für das Brute-Forcen zu verringern.

Wenn das System, z.B. ein Forum, sich nicht gegen solche Angriffe schützt, in dem z.B. die Anzahl der maximalen Loginversuche begrenzt wird, und bei Überschreitung dieser Anzahl der Zugriff auf die Seite gesperrt wird, kann der Angreifer sich “alle Zeit der Welt” nehmen und solange Passwörter ausprobieren, bis er das richtige gefunden hat.

3. Was ist ein sicheres Passwort?

Ein sicheres Passwort sollte möglichst zufällig gestaltet sein. Es sollten Buchstaben (Klein- und Großschreibung!), Zahlen & Sonderzeichen darin vorhanden sein, und das Passwort sollte eine Länge von 8+ Stellen besitzen. Das erhöht die Zeit, welche der Angreifer für einen Brute-Force benötigt, ungemein.

Nehmen wir mal an, man hält sich an die o.g. Regeln, und nutzt alle Zeichenkategorien aus dem ASCII-Zeichensatz. Demnach gäbe es 93 verschiedene Zeichen die man verwendet haben könnte (33:! bis 126: ~). Der Angreifer weiß nicht genau welche, und muss deswegen von allen ausgehen. Die Anzahl der möglichen Kombinationen ergibt sich aus:

Anzahl = Zeichenanzahl ^ Passwortlänge.

Bei unserem Beispiel mit einer Passwortlänge von 8 Zeichen entspricht das:

Anzahl = 93 ^ 8

Anzahl = 5.595.818.096.650.401 Möglichkeiten

Wenn der Angreifer es schafft, 1.000.000 Passwörter pro Sekunde zu testen, was bei einem Login auf ein Forum utopisch sein dürfte, dann würde die Person immer noch 5595818096 Sekunden brauchen, was ~ 177 Jahren entspricht.

Hier nochmal die wichtigsten Punkte aufgelistet:

  • Großbuchstaben

  • Kleinbuchstaben

  • Zahlen

  • Sonderzeichen

  • Mindestens 8 Stellen

  • Passwortwechsel alle x Wochen

Den letzten Punkt habe ich noch nicht angesprochen, aber man sollte seine Passwörter alle x Wochen ändern, auch wenn man das ungern macht.

Ein Passwort ist nur dann sicher, wenn es nur im Gehirn geschrieben steht und nirgend woanders zu finden ist.

Auch sollte die Weitergabe des Passwortes an “angeblich” beste Freunde unterbleiben.

4. Wie kann ich es mir merken?

Wenn man nun für jeden Login ein anderes, komplexes Passwort nutzt, dann wird man irgendwann Probleme haben, sich alle Passwörter zu merken, und deswegen muss man zu kleinen Eselsbrücken greifen. Die Satz-Strategie hat sich am meisten bewährt.

Dabei denkt man sich einen Satz aus, und nimmt zum Beispiel alle Anfangs- oder Endbuchstaben der Wörter, und reiht diese aneinander.

Beispiel:

Satz:

=>I’am writing this tutorial for you, because you do not know, how to create secure passwords!

Zusammengefasst:

=> I’awtt4u,budnk,h2csp!

Man kann die Sätze immer auf die entsprechende Situation anpassen, zum Beispiel bei Shopping-Seiten:

I like to buy my clothes @ amazon;)

Dabei ist der Kreativität freien Lauf gelassen.

Das war es nun schon wieder.

Gruß

gehaxelt