Wie lange dauert die Berechnung von Passwörtern? Diese Frage stellte sich mir bei einer Veranstaltung, bei der ich zeigte, wie man mit dem Bash Bunny von Hak5 und der Payload QuickCreds NTLM-Hashes aus einem gesperrten Windows-System auslesen kann. Die Frage war, wie lange es dauert, den Hash mit Brute-Force zu knacken.
Als Basis habe ich die Rechenleistung einer NVIDIA GeForce RTX 4090 genommen. Sie kann 288,5 Milliarden NTLM-Hashes pro Sekunde berechnen (Benchmark). Für die Anzahl der möglichen Zeichen habe ich 102 gewählt:
- 26 Kleinbuchstaben
- 26 Großbuchstaben
- 7 Umlaute und Eszett (nur die kleine Schreibweise 😉)
- 10 Zahlen
- 33 Sonderzeichen
Daraus ergibt sich folgende Berechnungszeit:
Passwortlänge | Mögliche Passwörter | Zeit für Berechnung |
1 | 102 | ~ 0,35 Nanosekunden |
2 | 10.404 | ~ 36,06 Nanosekunden |
3 | 1.061.208 | ~ 3,68 Mikrosekunden |
4 | 108.243.216 | ~ 375,19 Mikrosekunden |
5 | 11.040.808.032 | ~ 38,27 Millisekunden |
6 | 1.126.162.419.264 | ~ 3,90 Sekunden |
7 | 114.868.566.764.928 | ~ 6,64 Minuten |
8 | 11.716.593.810.022.700 | ~ 11,28 Stunden |
9 | 1.195.092.568.622.310.000 | ~ 47,94 Tage |
10 | 121.899.441.999.476.000.000 | ~ 13,40 Jahre |
11 | 12.433.743.083.946.500.000.000 | ~ 13,67 Jahrhunderte |
12 | 1.268.241.794.562.550.000.000.000 | ~ 139,40 Jahrtausende |
Die Tabelle zeigt, dass man mit der heutigen Rechenleistung erst bei 10 Zeichen in einen Bereich kommt, in dem die Berechnung mehrere Jahre dauert. Die Berechnung kann jedoch auf mehrere Grafikkarten oder Systeme verteilt werden, wodurch sich die Zeit durch die Anzahl der Grafikkarten dividiert.