Ist die Komplexität der Passwörter hoch genug? Inzwischen weiß jeder, dass man ein starkes Passwort braucht, um erfolgreiche Angriffe zum Erraten und Knacken von Passwort-Hashes zu verhindern.

Ein starkes Kennwort ist jedoch ein relativer Begriff, bedeutet aber im Allgemeinen, dass ein Kennwort ausreichend lang und komplex genug ist, um die meisten bzw. alle wahrscheinlichen Kennwort-Rate-Versuche, in denen das Kennwort verwendet wird, während der gesamten Lebensdauer des Kennworts oder Systems zu verhindern.

Da sich die Passwortangriffe weiterentwickeln und verbessern, sind stärkere Passwörter erforderlich, um erfolgreiche Versuche abzuschwächen. Ein Passwort, das im letzten Jahr als sicher galt, ist in diesem Jahr möglicherweise nicht mehr sicher.

Den meisten Cyberkriminellen ist es egal, wie stark ein Kennwort ist, sie nutzen Hacking Methoden wie Social Engineering von Kennwörtern, Kennwortdiebstahl, Zurücksetzen von Kennwörtern, Angriffe auf die zugrunde liegende Kennwortdatenbank usw.

Das Erraten von Kennwörtern und das Knacken von Kennwort-Hash-Werten sind zwei verschiedene Arten von Kennwortangriffen und erfordern unterschiedliche Anforderungen an die Kennwortrichtlinien, um sie abzuschwächen. Das Knacken von Kennwort-Hashes erfordert stärkere Kennwörter, um erfolgreiche Bedrohungen abzuschwächen.

Passwort-Erraten

Beim Passwortraten versucht ein Angreifer, das Passwort eines Opfers über einen Online- oder Lokalen-Anmeldebildschirm zu erfahren, bei dem sich das Opfer ansonsten mit seiner Kombination aus Benutzername und Passwort einloggen könnte, um sich bei einem Programm oder System zu authentifizieren.

Der Angreifer kann so oft erraten, wie er will, manuell oder mit einem automatisierten Tool, ist aber durch die Abschwächung der ungültigen Anmeldung auf dem Online- oder Lokalen-Anmeldebildschirm, die Geschwindigkeit der Authentifizierungsverarbeitung und die Bandbreite beschränkt. Zu den gängigen Verteidigungsmaßnahmen gehören Richtlinien für die Erstellung von Passwörtern, Richtlinien für die Kontosperrung, die Drosselung von Anmeldeversuchen, die zeitliche Begrenzung von Passwörtern, die Überprüfung auf schwache Passwörter, die Überwachung von Ereignissen bei ungültigen Anmeldungen und die Forderung nach einer Multi-Faktor-Authentifizierung.

Wenn ein Authentifizierungssystem über ausreichende Schutzmaßnahmen für Passwortangriffe verfügt (wie oben erwähnt), ist kein besonders starkes Passwort erforderlich, um ein erfolgreiches Passwort-Raten zu verhindern. In der Praxis ist ein normal komplexes Kennwort (d. h. unterschiedliche Großschreibung erforderlich, Zahlen oder Symbole erforderlich usw.) mit 10 Zeichen für einen Angreifer in der Regel schwer zu erraten.

Häufig werden Kennwörter mit mindestens 12 Zeichen empfohlen, um zusätzliches Vertrauen zu schaffen, insbesondere weil die Benutzer nicht sicher sein können, dass alle Systeme, bei denen sie sich authentifizieren, über ausreichende Kennwortschutzmaßnahmen verfügen. Es kommt sehr häufig vor, dass Angreifer Systeme finden, die keine ausreichenden Schutzmaßnahmen für Kennwörter haben, und dann können selbst Kennwörter mit 10 oder mehr Zeichen kompromittiert werden.

Das längste Online-Passwort, das ein Angreifer in der realen Welt erraten hat (ohne Insider-Wissen über die mögliche Konstruktion des Passworts), ist wohl das 10-Zeichen-Passwort „Welkom2020“. Es ist möglich, dass es längere Kompromittierungen beim Erraten von Passwörtern gegeben hat, die mir nicht bekannt sind, und längere Erfolge wurden wahrscheinlich schon oft von Penetrationstestern erzielt.

Selbst für dieses Erraten von 10-Zeichen-Passwörtern hatten die Verteidiger im Wesentlichen keine Schutzmaßnahmen ergriffen. Die Angreifer waren in der Lage, das Passwort über ein Online-Portal zu erraten, das über ein Jahr lang mehr als 100.000-Mal pro Tag über das Internet zugänglich war. Jedes Anmeldeportal mit fast allen standardmäßigen Schutzmaßnahmen gegen das Erraten von Passwörtern (z. B. Kontosperrung, Überwachung usw.) hätte diesen Angriff verhindert.

Es kommt jedoch häufig vor, dass sich Angreifer Anmeldeportale aussuchen, die keine ausreichenden Schutzmaßnahmen für Passwörter bieten, um so schnell wie möglich zu raten, was die betreffenden Technologien erlauben. So meldete Akamai im Jahr 2020, dass 75 Prozent der Angriffe zum Erraten von Kennwörtern gegen Anwendungsprogrammierschnittstellen (APIs) gerichtet waren. APIs erlauben oder erfordern häufig Anmeldungen und verfügen oft nicht über ausreichende Schutzmechanismen für das Erraten von Passwörtern.

Zusammenfassend lässt sich sagen, dass ein 10-stelliges oder längeres Passwort mit Standardkomplexität in der Regel als ausreichend schützend angesehen wird, wenn es nur auf Authentifizierungsportalen mit standardmäßigen Schutzmaßnahmen gegen Passwort-Ratespiele verwendet wird. Wenn ein Benutzer nicht sicherstellen kann, dass alle beteiligten Anmeldeportale ausreichende Schutzmaßnahmen gegen das Erraten von Passwörtern verwendet, benötiget er stärkere also längere und komplexere Passwörter.

Wie stark muss ein Passwort sein, um Angriffe auf Anmeldeportale zu verhindern, die keine ausreichenden Schutzmaßnahmen gegen das Erraten von Passwörtern verwenden? Wenn das Passwort nicht vollkommen zufällig ist (wie die meisten von Menschen geschaffenen Passwörter), dann braucht man ein stärkeres Passwort.

Generell lässt sich feststellen, dass in einem realen Angriff ein 10-Zeichen-Passwort mit Standardkomplexität (z. B. Welkom2020) erfolgreich erraten wurde, sodass Benutzer höchstwahrscheinlich mehr als nur ein paar Zeichen mehr als 10 Zeichen benötigen. Ein perfektes zufälliges Passwort 12-Zeichen gilt als unempfindlich gegenüber allen bekannten Angriffen zum Erraten von Passwörtern oder zum Knacken von Passwort-Hashes.

Ein ausreichend starkes 8-Zeichen-Passwort ist wahrscheinlich in der Lage, Angriffe zum Erraten von Passwörtern auf allen Anmeldeportalen mit starken Kontrollen zum Erraten von Passwörtern zu verhindern, einschließlich der Erkennung und Verhinderung von „Passwort-Spray/Stuffing“-Angriffen, bei denen ein Angreifer Passwörter nicht schneller errät, als es die zugrundeliegende Kontosperrungsrichtlinie erlauben würde, ohne das Konto zu sperren.

Knacken von Passwort-Hashes

Das Knacken von Kennwort-Hashes bedeutet, dass ein Angreifer auf irgendeine Weise in den Besitz des Kennwort-Hashes eines Opfers gelangt ist (die meisten Kennwörter werden in den heutigen Betriebssystemen und vielen/den meisten Anwendungen in ihrer kryptografischen Hash-Form gespeichert). In diesem Fall kann der Angreifer den Hash des Kennworts mithilfe eines so genannten Offline-Kennwort-Hash-Cracking-Angriffs, der auch als Rainbow-Table-Angriff bekannt ist, obwohl es einige Unterschiede gibt, so schnell erraten, wie es seine Hardware/Software-Kombination erlaubt.

Es ist nicht ungewöhnlich, dass ein Penetrationstester oder ein Angreifer in der Lage ist, Passwort-Hashing-Angriffe mit bis zu einer Billion verschiedener Vermutungen pro Sekunde durchzuführen. Wie lange würde ein Passwort standhalten, wenn der Angreifer bis zu einer Billion Versuche pro Sekunde durchführen könnte? Einige Angreifer können Passwort-Hashes bis zu zehn Billionen Mal pro Sekunde erraten, und es ist anzunehmen, dass die am besten ausgerüsteten Nationalstaaten Passwort-Hashes mit einer Rate von annähernd hundert Billionen Erraten pro Sekunde erraten können.

Die Erlangung der Passwort-Hashes eines Opfers bedeutet oft, dass der Angreifer bereits Zugriff auf das Gerät oder das Netzwerk des Opfers erhalten hat und das Spiel für das Opfer im Grunde genommen schon vorbei ist. Wenn ein Täter Zugriff auf höchster Ebene hat, kann er tausende bösartige Dinge tun, und das Knacken von Kennwort-Hashes ist nur ein Angriffsproblem, um das man sich kümmern muss.

Es gibt jedoch einige Angriffstechniken, bei denen ein Eindringling ohne vorherigen Zugang (z. B. Man-the-Middle-Angriffe) oder nur mit Standardbenutzerzugang (z. B. Kerberoasting-Angriffe) manchmal den Zugang eines Opfers ohne vorherigen oder erhöhten Zugang erlangen kann. Da diese weniger schwerwiegenden oder unprivilegierten Angriffe die Passwort-Hashes der Opfer erlangen können, ist es keine sinnvolle Verteidigung, sich keine Gedanken über Passwort-Hash-Angriffe zu machen.

Angenommen, ein Angreifer hat sich den Passwort-Hash eines Opfers verschafft, wie lange sind die meisten Passwörter der Opfer haltbar? Ich denke, wenn man sich die gesamte Welt der Passwörter ansehen, würden die meisten, d. h. 80 Prozent und mehr ziemlich schnell von einem anständigen Passwort-Hash-Angriff geknackt werden, nehmen wir über eine Billion Versuche pro Sekunde an.

Jedes von Menschen geschaffene Passwort mit 10 Zeichen ist mit Sicherheit sehr schnell zu knacken. Professionelle Passwort-Penetrationstester berichten routinemäßig, dass sie in der Lage sind, 80 Prozent oder mehr der typischen Benutzerpasswörter innerhalb weniger Tage bis Wochen zu knacken auch ohne Billionen-Sekunden-Raten.
Eine kürzlich durchgeführte Übung zum Knacken von Passwort-Hashes, an der mehrere US-Regierungsbehörden beteiligt waren, ergab, dass 16 Prozent der Benutzerpasswörter in den ersten 90 Minuten nach dem Knacken fielen. Leider geht aus dem Bericht nicht hervor, welche Möglichkeiten zum Knacken von Passwort-Hashes bestehen.

Eine interessante Randbemerkung zu diesem Bericht der US-Regierung über das Knacken von Kennwörtern (Hash) ist, dass, wenn ein Kennwort-Hash geknackt wurde (21 Prozent der Gesamtzahl), mehr als drei Viertel (76 Prozent) in den ersten 90 Minuten des Versuchs geknackt wurden. Wenn ein Kennwort also nicht sofort geknackt wurde, standen die Chancen gut, dass es während des Tests nicht geknackt wurde.

Interessant ist, dass die Standard-Komplexität von Passwörtern z. B. Groß- und Kleinbuchstaben und Zahlen oder Symbole erforderlich für die meisten Angriffe zum Knacken von Hash-Werten anfällig ist. Das Problem besteht vor allem darin, dass die Standard-Kennwortkomplexität für Angreifer nicht so schwer herauszufinden ist. In den meisten Umgebungen, in denen die Standardkomplexität von Kennwörtern aktiviert ist, wählen die meisten Benutzer eine Kennwortlänge, die der geforderten Mindestgröße des Kennworts entspricht oder diese nur knapp überschreitet.

Sie beginnen das Kennwort mit einem Großbuchstaben, in der Regel einem Konsonanten, gefolgt von einem Kleinbuchstaben, in der Regel einem Vokal und wenn es Zahlen oder Symbole gibt, stehen sie am Ende des Kennworts. Normalerweise sind sogar die verwendeten Buchstaben, Zahlen und Symbole ziemlich vorhersehbar. Obwohl die meisten Benutzer aus den 94 verschiedenen Symbolen auf ihrer Tastatur wählen könnten, wählen die meisten Benutzer die gleichen 17 Zeichen. Die meisten Leute verwenden weder das Leerzeichen noch q, z oder Zahlen über 2.

In dem angesprochenen Praxisbericht wurden beispielsweise die folgenden „langen und komplexen“ Kennwörter erfolgreich erraten:

  • Changeme$12345
  • Polar_bear65
  • Nationalparks2014

Die meisten anderen Organisationen, die Angriffe zum Knacken von Passwort-Hashes durchführen, werden zu ähnlichen Ergebnissen kommen. Dies ist ein wichtiger Punkt, denn die Standard-Komplexität von Passwörtern wird die meisten gegnerischen Hash-Cracking-Angriffe nicht im Ansatz verhindern. Ihre bestehenden Anforderungen an die Passwortkomplexität sind möglicherweise nicht gut genug.

Sie kann zwar Angriffe zum Erraten von Passwörtern verhindern, nicht aber Angriffe zum Knacken von Passwort-Hash-Werten. Dies ist von enormer Bedeutung. Wenn Benutzer auch Hash-Angriffe abwehren wollen, müssen sie stärkere Passwörter verwenden: längere und weniger vorhersehbare Komplexität. Entweder werden die Nutzer ermutigt sich für eine weniger vorhersehbare Komplexität zu entscheiden, oder sie erzwingen dies irgendwie. Benutzer sollten:

  • Den Großbuchstaben irgendwo anders als am Anfang setzen.
  • An der zweiten Stelle etwas anderes als einen klein geschriebenen Vokal verwenden.
  • Benutzer sollten die Zahlen oder Symbole an eine frühere Stelle des Passworts gesetzt werden.
  • Keine Jahreszahlen verwenden, vor allem nicht am Ende von Passwörtern.
  • Keine leicht zu erratenden Passwort-„Wurzeln“ wie password, changeme, 123, 12345, qwerty, usw. verwenden.

Was ist die beste Passwortpolitik? Benutzer sollten kein Passwort verwenden, wenn sie es nicht müssen. Stattdessen sollten sie auf eine Phishing-resistente Multi-Faktor-Authentifizierung setzen. Wenn Passwörter verwendet werden müssen, was bei den meisten von uns der Fall ist, sollte ein Passwort-Manager eingesetzt werden, um vollkommen zufällige Passwörter zu erstellen und zu verwenden.

Untersuchungen haben gezeigt, dass ein aus 12 Zeichen bestehendes, komplett zufälliges Kennwort alle bekannten Angriffe zum Erraten und Knacken von Kennwörtern abwehrt, selbst wenn der Angreifer mehrere zehn Billionen Versuche pro Sekunde hat, was für Angreifer bei Online-Rateangriffen ohnehin fast unmöglich ist.

In dieser Beispielübung, die unten grafisch dargestellt ist, wird ein Passwort-Hash (NT ist der Standard-Passwort-Hash von Microsoft Windows, SHA-2 ist der Standard-Passwort-Hash für die meisten Apple-, Linux- und BSD-Systeme) selbst für einen 45 Billionen pro Sekunde erratenden Passwortknacker bei etwa 11 Zeichen sehr schwierig, wenn ein perfektes zufälliges Passwort verwendet wird. Wie bereits erwähnt sollten Passwörter mit mindestens 12 Zeichen verwendet werden.

Niemand erstellt oder verwendet gerne perfekte zufällige Passwörter, also sollten Benutzer stattdessen einen Passwortmanager einsetzen. Mit Passwort-Managern können sie problemlos 12-stellige und längere Zufallspasswörter erstellen und verwenden, die sie sowohl vor bekannten Passwort-Raten als auch vor Passwort-Hacking-Angriffen schützen.

Wenn Benutzer eigene Passwörter aus dem Kopf erstellen wollen und diese die traditionelle „Standard“-Komplexität enthalten, müssen sie wahrscheinlich 20 Zeichen oder länger sein. Es gibt Passwort-Penetrationsteams, die routinemäßig z. B. jeden Tag 18-stellige, von Menschen erstellte Passwörter knacken, wenn sie deren Hashes erhalten können.

Benutzer sollten, wenn möglich, Phishing-resistente MFA verwenden, um wertvolle Daten und Systeme zu schützen. Darüber hinaus sollten sie einen Passwort-Manager einsetzen, um vollkommen zufällige Passwörter zu erstellen und zu verwenden. Wenn Passwörter von Menschen erstellt werden, müssen sie mindestens 20 Zeichen lang sein, um alle bekannten Angriffe zum Erraten und Knacken von Passwörtern abzuwehren.

Außerdem sollten keine häufig verwendeten Stammwörter für Passwörter z. B. password, changeme, 12345, qwerty usw. verwendet werden. Dazu ist es angeraten, den einzigen großgeschriebenen Buchstaben als erstes Zeichen des Passworts zu setzen und keine klein geschriebene Vokale als zweiten Buchstaben einzusetzen. Außerdem ist es wichtig, dass am Ende eben keine Zahlen, Symbole oder Jahreszahlen gesetzt werden. Alle Passwärter müssen mindestens einmal im Jahr geändert werden.

Roger Grimes ist „Data-Driven Defense Evangelist“ bei KnowBe4.

KnowBe4