Passwort-Cracking
Das Passwort-Cracking (englisch cracking; deutsch Knacken oder Brechen) oder ein Passwortangriff bezeichnet das Brechen eines Passworts in der IT-Sicherheit. Dies geschieht durch Erraten des richtigen Passworts, indem der Angreifer eine große Anzahl möglicher Passwörter durchprobiert.
Klassifikation
[Bearbeiten | Quelltext bearbeiten]Zu unterscheiden sind Angriffstechniken, die online oder offline stattfinden.[1]
Online-Angriff
[Bearbeiten | Quelltext bearbeiten]Bei einem Online-Angriff interagiert der Angreifer mit dem angegriffenen IT-System, beispielsweise über ein Computernetz. Dadurch ist die Anzahl der Versuche limitiert. Dies ergibt sich zum einen aus technischen Rahmenbedingungen, weil das angegriffene System über eine begrenzte Verarbeitungsgeschwindigkeit verfügt. Zum anderen kann die Rate, mit der Passwörter ausprobiert werden können, künstlich gedrosselt werden. Auch ist ein Online-Angriff auffällig, sodass ein Angreifer nach zu vielen Fehlversuchen eine Zeit lang aus dem System ausgesperrt werden kann. Um unentdeckt zu bleiben, kann ein Angreifer seine Login-Versuche drosseln und über die Zeit verteilen, um sich unterhalb von Schwellwerten zu bewegen.
Offline-Angriff
[Bearbeiten | Quelltext bearbeiten]Bei einem Offline-Angriff besitzt der Angreifer den kryptographischen Hashwert eines Passworts und kann diesen ohne Interaktion mit dem angegriffenen System versuchen zu brechen. Dadurch ist die Anzahl Versuche nur durch die Rechenkapazität des Angreifers limitiert und um Größenordnungen schneller als ein Online-Angriff. Auch bleibt der Angreifer bei einem Offline-Angriff unentdeckt.
Beim Offline-Angriff muss der Angreifer alle möglichen Passwortkandidaten zu einem Hashwert umrechnen und mit dem zu brechenden Hashwert vergleichen. Die für eine Berechnung erforderliche Rechenleistung hängt von der verwendeten Hashfunktion ab. Um Angriffe zu erschweren, kommen spezialisierte Funktionen zur Schlüsselableitung oder Schlüsselstreckung zum Einsatz. PBKDF2 beispielsweise erhöht den erforderlichen Rechenaufwand bei der Umrechnung von Passwort zu Hashwert durch eine parametrisierte Iteration. Offline-Angriffe lassen sich sehr effizient durch den Einsatz spezialisierter Hardware beschleunigen, beispielsweise Grafikprozessoren, FPGAs oder ASICs. Eine Möglichkeit, um Hardware-Beschleunigung zu erschweren, ist der Einsatz von arbeitsspeicher-intensiven Funktionen, wie beispielsweise Argon2.
Ein Offline-Angriff kann gegen eine große Anzahl von entwendeten Passwort-Hashwerten gleichzeitig ausgeführt werden. Die Hashberechnung muss nur einmal erfolgen, um das Ergebnis gegen eine große Anzahl zu brechender Hashwerte zu vergleichen. Um das zu verhindern, kann die Hashfunktion mit einem Salt oder Pepper parametrisiert werden.
Angriffstechniken
[Bearbeiten | Quelltext bearbeiten]Es gibt verschiedene Techniken, mit denen ein Angreifer mögliche Passwörter durchprobieren kann. Diese unterscheiden sich darin, welche und wie viele Passwörter durchprobiert werden.
Brute-Force-Methode
[Bearbeiten | Quelltext bearbeiten]Bei der Brute-Force-Methode probiert der Angreifer alle möglichen Kombinationen von Passwörtern durch. Theoretisch wird bei dieser Methode das richtige Passwort immer irgendwann gefunden. Bei einem langen und sicheren Passwort kann die Suche jedoch so lange dauern, dass der Angriff praktisch unmöglich wird. Die Brute-Force-Methode ist sehr effektiv gegen kurze Passwörter.
Passwort-Spraying
[Bearbeiten | Quelltext bearbeiten]Passwort-Spraying (englisch spraying; deutsch Versprühen) ist eine Angriffstechnik für Online-Angriffe. Hierbei wird eine kleine Anzahl leicht zu erratender Passwörter, beispielsweise herstellerseitig vorgebebene Standardpasswörter, gegen eine große Anzahl von Nutzerkonten ausprobiert.[2] Der Angreifer zielt darauf ab, irgendein schlecht gesichertes Konto zu kompromittieren. Das ist effektiver als ein Brute-Force-Angriff, garantiert jedoch keinen Erfolg.
Credential Stuffing
[Bearbeiten | Quelltext bearbeiten]Beim Credential Stuffing (englisch; deutsch etwa Zugangsdaten-Stopfen) verfügt der Angreifer über echte Benutzerkennungen mit jeweils zugehörigem Passwort, die aus einem Datenleck stammen. Diese werden bei verschiedenen Onlinediensten automatisch durchprobiert (bildlich werden Anmeldemasken mit Zugangsdaten vollgestopft). Der Angriff ist effektiv, wenn Nutzer dasselbe Passwort für verschiedene Dienste wiederverwenden, was häufig der Fall ist.[3]
Rainbow-Table-Angriff
[Bearbeiten | Quelltext bearbeiten]Eine Möglichkeit zur Einsparung von Rechenzeit bei einem Offline-Angriff ist es, vorberechnete Listen von Hashwerten zu erzeugen. Vollständige Listen benötigen jedoch zu viel Speicherplatz, um praktikabel zu sein. Rainbow Tables stellen einen Kompromiss zwischen Rechenzeit und Speicherplatz dar: hierbei werden vorberechnete Teile in Tabellen gespeichert. Der Suchalgorithmus einer Rainbow Table ist schneller als bei der Brute-Force-Methode, die Suche ist jedoch nicht erschöpfend und somit der Erfolg nicht garantiert.
Die Verwendung von Salt oder Pepper schützen vor einem Rainbow-Tables-Angriff, da durch diesen Parameter die Hashfunktion einmalig wird und eine Vorberechnung daher in den meisten Fällen nicht sinnvoll ist.
Wörterbuchangriff
[Bearbeiten | Quelltext bearbeiten]Bei einem Wörterbuchangriff probiert der Angreifer eine vorgegebene Passwortliste durch. Hierbei kann es sich um eine Zusammenstellung von häufig genutzten Passwörtern oder um ein allgemeines Wörterbuch handeln. Dabei werden auch Eigennamen und Wortschöpfungen aus der Literatur und Unterhaltungsmedien berücksichtigt, da diese oft als Passwörter genutzt werden.
Die Effektivität eines Wörterbuchangriffs hängt von der Güte des Wörterbuchs ab. Bei einem Offline-Angriff sind Wörterbücher schnell abgearbeitet. Um weitere Kombinationen durchzuprobieren, können die Wörter permutiert oder mit zusätzlichen Zeichen aufgefüllt werden.
Probabilistische Angriffe
[Bearbeiten | Quelltext bearbeiten]Eine weitere Technik besteht darin, wahrscheinliche Passwörter mit probabilistischen Methoden zu generieren und nur diese auszuprobieren. Dies ist beispielsweise mit Markow-Ketten möglich, die basierend auf einem Textkorpus erzeugt werden und die Wahrscheinlichkeit für eine bestimmte Zeichenkombination angeben.[4] Eine weitere Methode sind probabilistische kontextfreie Grammatiken.[5] Als Textkorpus kann ein Wörterbuch verwendet werden, das auch beim Wörterbuchangriff Verwendung findet.
Ein probabilistischer Angriff benötigt weniger Versuche als ein Brute-Force-Angriff. Im Vergleich mit einem Wörterbuchangriff erzeugen probabilistische Methoden aber auch neue Kombinationen, die nicht im Wörterbuch enthalten sind. Die Effektivität des Angriffs hängt neben dem Algorithmus auch vom Textkorpus ab, da sich daras ergibt, ob das gesuchte Passwort vom Algorithmus als eine wahrscheinliche Kombination ausgegeben wird.
Software
[Bearbeiten | Quelltext bearbeiten]Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Joseph Bonneau, Cormac Herley, Paul C. van Oorschot, Frank Stajano: Passwords and the evolution of imperfect authentication. In: Communications of the ACM. Band 58, Nr. 7, 25. Juni 2025, S. 78–87, doi:10.1145/2699390 (acm.org [PDF]).
- ↑ Was versteht man unter Passwort-Spraying? So verhindern Sie Passwort-Spraying-Angriffe. Abgerufen am 15. Mai 2026.
- ↑ Braden Russell: Was ist Credential Stuffing? 3. November 2022, abgerufen am 15. Mai 2026.
- ↑ Jerry Ma, Weining Yang, Min Luo, Ninghui Li: A Study of Probabilistic Password Models. In: IEEE (Hrsg.): IEEE Symposium on Security and Privacy. 2014, ISBN 978-1-4799-4686-0, doi:10.1109/SP.2014.50 (ieee-security.org [PDF]).
- ↑ Matt Weir, Sudhir Aggarwal, Breno de Medeiros, Bill Glodek: Password Cracking Using Probabilistic Context-Free Grammars. In: IEEE (Hrsg.): 30th IEEE Symposium on Security and Privacy. 2009, ISBN 978-0-7695-3633-0, doi:10.1109/SP.2009.8 (researchgate.net [PDF]).