Was ist ein Wörterbuchangriff?

Um sich bei einer Website zu authentifizieren, müssen Sie einen Benutzernamen und ein Passwort angeben. Die Site überprüft dann die von Ihnen angegebenen Authentifizierungsdaten, indem sie sie mit den in ihrer Datenbank gespeicherten Daten vergleicht. Stimmen die Angaben überein, wird der Zugriff gewährt. Stimmen die Angaben nicht überein, wird der Zugriff verweigert.

Leider kommt es relativ häufig zu Datenschutzverletzungen. Datenschutzverletzungen können ein großes Problem darstellen, da Benutzerdaten, insbesondere die Liste der Benutzernamen und Passwörter, zu den Daten gehören, die am häufigsten angegriffen werden. Wenn die Passwörter unverändert im Klartext gespeichert werden, kann jeder mit Zugriff auf die Datenbank auf das Konto eines anderen Benutzers zugreifen. Es ist, als ob man ihnen einen Schlüsselanhänger mit dem Schlüssel zu jeder Tür eines Mehrfamilienhauses in die Hand drückte.

Auch wenn große Anstrengungen unternommen werden, um Datenschutzverletzungen von vornherein zu verhindern, empfiehlt sich eine Strategie zur tiefgreifenden Verteidigung. Sicherheitshinweise besagen insbesondere, dass Passwörter gehasht werden sollten, wobei nur der Hash des Passworts jemals gespeichert werden sollte. Eine Hash-Funktion ist eine Einwegfunktion, die immer die gleiche Eingabe in die gleiche Ausgabe umwandelt. Selbst eine geringfügige Änderung der Eingabe führt jedoch zu einem völlig anderen Ergebnis. Entscheidend ist, dass es keine Möglichkeit gibt, die Funktion umzukehren und den ausgegebenen Hash wieder in die ursprüngliche Eingabe umzuwandeln. Sie können jedoch eine neue Eingabe hashen und prüfen, ob die Ausgabe mit dem in der Datenbank gespeicherten Hash übereinstimmt. Wenn dies der Fall ist, wissen Sie, dass das Passwort übereinstimmt, ohne jemals das tatsächliche Passwort zu kennen.

Hilfreicherweise bedeutet dies auch, dass ein Angreifer, wenn er in die Datenbank eindringt, keine Liste sofort nützlicher Passwörter erhält, sondern stattdessen Hashes. Um diese Hashes nutzen zu können, müssen sie geknackt werden.

Passwort-Hashes mit Smarts knacken

Beim Knacken eines Passwort-Hashs wird herausgefunden, welches Original-Passwort der Hash darstellt. Denn es gibt keine Möglichkeit, die Hash-Funktion umzukehren und den Hash in ein Passwort umzuwandeln. Die einzige Möglichkeit, einen Hash zu knacken, besteht darin, das Passwort zu erraten. Eine Methode ist die Verwendung eines Brute-Force-Angriffs. Dabei geht es buchstäblich darum, jedes mögliche Passwort auszuprobieren. Das bedeutet, mit „a“ zu beginnen und in beiden Fällen jeden Buchstaben sowie jede Zahl und jedes Symbol auszuprobieren. Dann muss der Angreifer alle Zwei-Zeichen-Kombinationen, Drei-Zeichen-Kombinationen usw. ausprobieren. Jedes Mal, wenn Sie ein Zeichen hinzufügen, erhöht sich die Anzahl möglicher Zeichenkombinationen exponentiell. Dies macht es schwierig, lange Passwörter effizient zu erraten, selbst wenn schnelle Hashing-Algorithmen mit leistungsstarken GPU-Cracking-Rigs verwendet werden.

Etwas Aufwand kann gespart werden, indem man sich die Passwortanforderungen der Website ansieht und keine Passwörter ausprobiert, die zu kurz wären, um zugelassen zu werden, oder die beispielsweise keine Zahl enthalten. Dies würde etwas Zeit sparen und passt dennoch in die Klasse eines Brute-Force-Angriffs, bei dem alle erlaubten Passwörter ausprobiert werden. Brute-Force-Angriffe sind zwar langsam, knacken aber – wenn sie lange genug mit viel Rechenleistung betrieben werden – letztendlich jedes Passwort, da alle möglichen Kombinationen ausprobiert werden.

Das Problem bei Brute-Force-Angriffen ist, dass sie nicht sehr intelligent sind. Ein Wörterbuchangriff ist eine viel gezieltere Variante. Anstatt einfach jedes mögliche Passwort auszuprobieren, wird eine Liste vorgegebener Passwörter ausprobiert. Der Erfolg dieser Art von Angriff hängt von der Liste der Passwörter und dem betreffenden Wörterbuch ab.

Fundierte Vermutungen anstellen

Passwortwörterbücher werden typischerweise aus zuvor geknackten Passwörtern aus anderen Datenschutzverletzungen erstellt. Diese Wörterbücher können Tausende oder Millionen von Einträgen enthalten. Dies basiert auf dem Konzept, dass Menschen schlecht darin sind, eindeutige Passwörter zu erstellen. Beweise aus Datenschutzverletzungen zeigen leider auch, dass dies der Fall ist. Es werden immer noch Variationen des Wortes „Passwort“ verwendet. Weitere häufige Themen sind Sportmannschaften, Namen von Haustieren, Ortsnamen, Firmennamen, Hass auf Ihren Job und Passwörter, die auf dem Datum basieren. Letzteres passiert insbesondere dann, wenn Menschen gezwungen sind, ihre Passwörter regelmäßig zu ändern.

Die Verwendung eines Passwortwörterbuchs reduziert die Anzahl der Vermutungen im Vergleich zu einem Brute-Force-Angriff erheblich. Passwortwörterbücher enthalten in der Regel sowohl kurze als auch längere Passwörter, was bedeutet, dass einige Passwörter ausprobiert werden könnten, die selbst nach Jahren oder durch Brute-Force-Erraten nicht erreicht würden. Der Ansatz erweist sich ebenfalls als erfolgreich. Die Statistiken variieren je nach Datenschutzverletzung sowie der Größe und Qualität des verwendeten Wörterbuchs, die Erfolgsquote kann jedoch über 70 % liegen.

Mit Wortverstümmelungsalgorithmen können die Erfolgsquoten noch weiter gesteigert werden. Diese Algorithmen nehmen jedes Wort im Passwortwörterbuch und modifizieren es dann ein wenig. Bei diesen Änderungen handelt es sich in der Regel um das Ersetzen von Standardzeichen und das Hinzufügen von nachgestellten Zahlen oder Symbolen. Beispielsweise ist es üblich, den Buchstaben „e“ durch eine „3“ und das „s“ durch ein „$“ zu ersetzen oder am Ende ein Ausrufezeichen hinzuzufügen. Wortverzerrungsalgorithmen erstellen Duplikate jedes Eintrags im Passwortwörterbuch. Jedes Duplikat weist eine andere Variante dieser Zeichenersetzungen auf. Dadurch erhöht sich die Anzahl der zu erratenden Passwörter deutlich und die Erfolgsquote steigt teilweise auf über 90 %.

Abschluss

Ein Wörterbuchangriff ist eine gezielte Variante eines Brute-Force-Angriffs. Anstatt alle möglichen Zeichenkombinationen auszuprobieren, wird eine Teilmenge der Zeichenkombinationen getestet. Bei dieser Teilmenge handelt es sich um eine Liste von Passwörtern, die bereits bei früheren Datenschutzverletzungen gefunden und ggf. geknackt wurden. Dadurch wird die Zahl der Vermutungen beim Verdecken von Passwörtern, die schon einmal verwendet wurden und in manchen Fällen oft gesehen wurden, erheblich reduziert. Die Erfolgsquote eines Wörterbuchangriffs ist nicht so hoch wie bei einem Brute-Force-Angriff. Dies setzt jedoch voraus, dass Sie über unbegrenzte Zeit und Rechenleistung verfügen. Ein Wörterbuchangriff erzielt tendenziell viel schneller eine recht hohe Erfolgsquote als ein Brute-Force-Angriff. Dies liegt daran, dass keine Zeit mit äußerst unwahrscheinlichen Zeichenkombinationen verschwendet wird.

Eines der wichtigsten Dinge, die Sie bei der Erstellung eines Passworts tun sollten, ist sicherzustellen, dass es nicht in einer Wortliste erscheint. Eine Möglichkeit besteht darin, ein komplexes Passwort zu erstellen, eine andere darin, ein langes Passwort zu erstellen. Im Allgemeinen ist es am besten, ein langes Passwort zu erstellen, das aus wenigen Wörtern besteht. Es ist nur wichtig, dass diese Wörter keine eigentliche Phrase ergeben, wie man das vermuten könnte. Sie sollten völlig unabhängig sein. Es wird empfohlen, ein Passwort mit mehr als 10 Zeichen zu wählen, wobei 8 das absolute Minimum sind.