Einführung
In diesem Labor lernen Sie, wie Hydra unterbrochene Angriffe verarbeitet und wie Sie diese effektiv fortsetzen können. Wir simulieren einen unterbrochenen Hydra-Angriff auf den SSH-Dienst auf localhost, indem wir einfache Benutzernamen- und Passwortlisten erstellen, einen Angriff starten und ihn dann manuell mit Ctrl+C unterbrechen.
Dieses Labor führt Sie dann durch das Neustarten des Angriffs mit der Option -R und die Beobachtung, wie Hydra Wiederherstellungsdateien verarbeitet. Anschließend lernen Sie die Verwendung der Option -I in Verbindung mit -R, um Wiederherstellungsdateien zu ignorieren und einen frischen Start zu gewährleisten. Sie werden den Unterschied zwischen abgeschlossenen und unterbrochenen Angriffen hinsichtlich der Erstellung von Wiederherstellungsdateien kennenlernen.
Testdateien erstellen und ersten Angriff starten
In diesem Schritt erstellen Sie die notwendigen Testdateien und führen einen ersten Hydra-Angriff durch, um das Basisverhalten zu verstehen. Dies hilft Ihnen zu verstehen, wie Hydra funktioniert, wenn Angriffe normal abgeschlossen werden oder unterbrochen werden.
Navigieren Sie zunächst in Ihr Projektverzeichnis:
cd ~/project
Erstellen wir nun eine einfache Passwortliste. Verwenden Sie nano, um eine Datei namens passwords.txt in Ihrem aktuellen Verzeichnis zu erstellen:
nano passwords.txt
Fügen Sie einige gängige Passwörter in die Datei ein, jeweils ein Passwort pro Zeile. Beispiel:
password
123456
qwerty
Speichern Sie die Datei, indem Sie Strg+X, dann Y zum Bestätigen des Speicherns und schließlich Eingabe zum Bestätigen des Dateinamens drücken.
Als Nächstes erstellen wir eine einfache Benutzerdatei. Verwenden Sie nano, um eine Datei namens users.txt im selben Verzeichnis zu erstellen:
nano users.txt
Fügen Sie einen einzelnen Benutzernamen in die Datei ein:
root
Speichern Sie die Datei und beenden Sie nano mit den gleichen Schritten wie zuvor.
Führen wir nun einen vollständigen Hydra-Angriff aus, um das normale Verhalten zu sehen:
hydra -V -L users.txt -P passwords.txt localhost ssh
Zerlegen wir diesen Befehl:
-V: Aktiviert den ausführlichen Modus, um detaillierte Angriffsversuche anzuzeigen-L users.txt: Teilt Hydra mit, dass die Dateiusers.txtfür Benutzernamen verwendet werden soll.-P passwords.txt: Teilt Hydra mit, dass die Dateipasswords.txtfür Passwörter verwendet werden soll.localhost: Gibt den Zielhost alslocalhostan.ssh: Gibt den anzugreifenden Dienst als SSH an.
Sie sollten eine Ausgabe ähnlich dieser sehen:
Hydra v9.2 (c) 2021 by van Hauser/THC & David Maciejak - Bitte verwenden Sie dieses Tool nicht in militärischen oder Geheimdienstorganisationen oder für illegale Zwecke (dies ist nicht bindend, diese *** ignorieren Gesetze und Ethik sowieso).
Hydra (https://github.com/vanhauser-thc/thc-hydra) gestartet am 2025-05-30 09:56:06
[WARNUNG] Viele SSH-Konfigurationen begrenzen die Anzahl paralleler Aufgaben. Es wird empfohlen, die Aufgaben zu reduzieren: verwenden Sie -t 4
[DATEN] maximal 3 Aufgaben pro 1 Server, insgesamt 3 Aufgaben, 3 Anmeldeversuche (b:1/p:3), ~1 Versuch pro Aufgabe
[DATEN] Angriff auf ssh://localhost:22/
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "password" - 1 von 3 [Kind 0] (0/0)
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "123456" - 2 von 3 [Kind 0] (0/0)
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "qwerty" - 3 von 3 [Kind 0] (0/0)
1 von 1 Ziel abgeschlossen, 0 gültige Passwörter gefunden
Hydra (https://github.com/vanhauser-thc/thc-hydra) beendet am 2025-05-30 09:56:09
Beachten Sie, dass Hydra keine Wiederherstellungsdatei erstellt, wenn der Angriff normal abgeschlossen wird. Wiederherstellungsdateien werden nur erstellt, wenn Angriffe unterbrochen werden.
Einen unterbrochenen Angriff simulieren
In diesem Schritt simulieren Sie einen unterbrochenen Hydra-Angriff, um eine Wiederherstellungsdatei zu erstellen. Dies ist notwendig, da Hydra nur Wiederherstellungsdateien erstellt, wenn Angriffe unterbrochen werden, nicht aber, wenn sie normal abgeschlossen werden.
Um einen länger laufenden Angriff zu erstellen, den Sie unterbrechen können, erweitern wir Ihre Passwortliste. Öffnen Sie die Datei passwords.txt erneut:
nano passwords.txt
Fügen Sie weitere Passwörter hinzu, um den Angriff länger dauern zu lassen:
password
123456
qwerty
admin
root
test
guest
user
login
pass
secret
Speichern Sie die Datei und beenden Sie nano.
Starten Sie nun den Hydra-Angriff mit einer langsameren Ausführungsgeschwindigkeit, um die Unterbrechung zu erleichtern:
hydra -V -L users.txt -P passwords.txt -t 1 -W 2 localhost ssh
Die zusätzlichen Optionen sind:
-V: Aktiviert den ausführlichen Modus, um detaillierte Angriffsversuche anzuzeigen-t 1: Verwenden Sie nur 1 Aufgabe (langsamere Ausführung)-W 2: Warten Sie 2 Sekunden zwischen den Verbindungsversuchen
WICHTIG: Während der Angriff läuft (Sie sollten sehen, wie Hydra verschiedene Benutzernamen/Passwortkombinationen ausprobiert), drücken Sie
Strg+C, um ihn nach einigen Versuchen zu unterbrechen.
Sie sollten eine Ausgabe ähnlich dieser sehen:
Hydra v9.2 (c) 2021 by van Hauser/THC & David Maciejak - Bitte verwenden Sie dieses Tool nicht in militärischen oder Geheimdienstorganisationen oder für illegale Zwecke (dies ist nicht bindend, diese *** ignorieren Gesetze und Ethik sowieso).
Hydra (https://github.com/vanhauser-thc/thc-hydra) gestartet am 2025-05-30 10:00:00
[WARNUNG] Viele SSH-Konfigurationen begrenzen die Anzahl paralleler Aufgaben. Es wird empfohlen, die Aufgaben zu reduzieren: verwenden Sie -t 4
[DATEN] maximal 1 Aufgabe pro 1 Server, insgesamt 1 Aufgabe, 11 Anmeldeversuche (b:1/p:11), ~11 Versuche pro Aufgabe
[DATEN] Angriff auf ssh://localhost:22/
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "password" - 1 von 11 [Kind 0] (0/0)
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "123456" - 2 von 11 [Kind 0] (0/0)
^C
[FEHLER] Empfangen des Signals 2, Herunterfahren ...
Die Sitzungdatei ./hydra.restore wurde geschrieben. Sie können mit: hydra -R fortfahren.
Das ^C zeigt an, dass Sie den Prozess unterbrochen haben. Wichtig ist, dass Sie eine Nachricht über die geschriebene Wiederherstellungsdatei sehen sollten.
Neustart mit -R und Verhalten beobachten
In diesem Schritt starten Sie den unterbrochenen Hydra-Angriff aus dem vorherigen Schritt mithilfe der Option -R erneut. Diese Option teilt Hydra mit, dass der Angriff von dem Punkt fortgesetzt werden soll, an dem er unterbrochen wurde, indem die Wiederherstellungsdatei verwendet wird.
Um den Angriff neu zu starten, führen Sie den folgenden Befehl in Ihrem Terminal aus:
hydra -R
Dieser Befehl verwendet nur die Option -R:
-R: Teilt Hydra mit, dass eine zuvor abgebrochene oder abgestürzte Sitzung mithilfe der Wiederherstellungsdatei fortgesetzt werden soll.
Beobachten Sie die Ausgabe. Sie sollten sehen, dass Hydra die Wiederherstellungsdatei liest und den Angriff von dem Punkt fortsetzt, an dem er unterbrochen wurde:
Hydra v9.2 (c) 2021 by van Hauser/THC & David Maciejak - Bitte verwenden Sie dieses Tool nicht in militärischen oder Geheimdienstorganisationen oder für illegale Zwecke (dies ist nicht bindend, diese *** ignorieren Gesetze und Ethik sowieso).
[INFORMATION] Lese Wiederherstellungsdatei ./hydra.restore
Hydra (https://github.com/vanhauser-thc/thc-hydra) gestartet am 2025-05-30 10:05:00
[DATEN] maximal 1 Aufgabe pro 1 Server, insgesamt 1 Aufgabe, 9 Anmeldeversuche (b:1/p:9), ~9 Versuche pro Aufgabe
[DATEN] Angriff auf ssh://localhost:22/
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "qwerty" - 3 von 11 [Kind 0] (0/0)
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "admin" - 4 von 11 [Kind 0] (0/0)
...
Beachten Sie, dass Hydra von dem Punkt fortfährt, an dem er unterbrochen wurde (in diesem Beispiel beginnend mit "qwerty" als 3. Versuch), anstatt vom Anfang zu beginnen.
Verwendung von -I zum Ignorieren von Wiederherstellungsdateien
In diesem Schritt verwenden Sie die Option -I, um vorhandene Wiederherstellungsdateien zu ignorieren und einen neuen Angriff zu starten. Dies ist nützlich, wenn Sie einen Angriff von vorne beginnen möchten, unabhängig von vorherigen Sitzungendaten.
Zuerst versuchen wir, -R zu verwenden, wenn keine Wiederherstellungsdatei vorhanden ist, um den Fehler zu sehen:
rm -f hydra.restore
hydra -V -R -L users.txt -P passwords.txt localhost ssh
Sie sollten eine Fehlermeldung erhalten:
Hydra v9.2 (c) 2021 by van Hauser/THC & David Maciejak - Bitte verwenden Sie dieses Tool nicht in militärischen oder Geheimdienstorganisationen oder für illegale Zwecke (dies ist nicht bindend, diese *** ignorieren Gesetze und Ethik sowieso).
[INFORMATION] Lese Wiederherstellungsdatei ./hydra.restore
[FEHLER] Wiederherstellungsdatei (./hydra.restore) nicht gefunden - Datei oder Verzeichnis nicht gefunden
Erstellen wir nun erneut eine Wiederherstellungsdatei, indem wir einen Angriff unterbrechen:
hydra -V -L users.txt -P passwords.txt -t 1 -W 2 localhost ssh
Unterbrechen Sie ihn mit Strg+C nach einigen Versuchen, um die Wiederherstellungsdatei zu erstellen.
Führen Sie nun den folgenden Befehl aus, um die Wiederherstellungsdatei zu ignorieren:
hydra -V -I -L users.txt -P passwords.txt localhost ssh
Dieser Befehl enthält die Option -I:
-I: Teilt Hydra mit, dass eine vorhandene Wiederherstellungsdatei ignoriert und keine neue erstellt werden soll.
Beobachten Sie die Ausgabe. Sie sollten sehen, dass Hydra von vorne beginnt und jede vorhandene Wiederherstellungsdatei ignoriert:
Hydra v9.2 (c) 2021 by van Hauser/THC & David Maciejak - Bitte verwenden Sie dieses Tool nicht in militärischen oder Geheimdienstorganisationen oder für illegale Zwecke (dies ist nicht bindend, diese *** ignorieren Gesetze und Ethik sowieso).
Hydra (https://github.com/vanhauser-thc/thc-hydra) gestartet am 2025-05-30 10:10:00
[WARNUNG] Viele SSH-Konfigurationen begrenzen die Anzahl paralleler Aufgaben. Es wird empfohlen, die Aufgaben zu reduzieren: verwenden Sie -t 4
[DATEN] maximal 3 Aufgaben pro 1 Server, insgesamt 3 Aufgaben, 11 Anmeldeversuche (b:1/p:11), ~4 Versuche pro Aufgabe
[DATEN] Angriff auf ssh://localhost:22/
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "password" - 1 von 11 [Kind 0] (0/0)
[VERSUCH] Ziel 127.0.0.1 - Anmeldung "root" - Passwort "123456" - 2 von 11 [Kind 0] (0/0)
...
Beachten Sie, dass der Angriff vom ersten Passwort ("password") unabhängig von der vorhandenen Wiederherstellungsdatei beginnt.
Kombination der Optionen -I und -R
In diesem Schritt erfahren Sie, was passiert, wenn Sie die Optionen -I und -R kombinieren. Diese Kombination zeigt, wie Hydra mit widersprüchlichen Anweisungen umgeht.
Führen Sie den folgenden Befehl aus:
hydra -V -I -R -L users.txt -P passwords.txt localhost ssh
Dieser Befehl enthält beide Optionen:
-V: Aktiviert den ausführlichen Modus, um detaillierte Angriffsversuche anzuzeigen-I: Ignoriere vorhandene Wiederherstellungsdateien-R: Fortsetzen von der Wiederherstellungsdatei
Sie sollten eine Fehlermeldung ähnlich dieser erhalten:
Hydra v9.2 (c) 2021 by van Hauser/THC & David Maciejak - Bitte verwenden Sie dieses Tool nicht in militärischen oder Geheimdienstorganisationen oder für illegale Zwecke (dies ist nicht bindend, diese *** ignorieren Gesetze und Ethik sowieso).
[INFORMATION] Lese Wiederherstellungsdatei ./hydra.restore
[FEHLER] Wiederherstellungsdatei (./hydra.restore) nicht gefunden - Datei oder Verzeichnis nicht gefunden
Dies geschieht, weil:
- Die Option
-Rweist Hydra an, nach einer Wiederherstellungsdatei zu suchen. - Die Option
-Iweist Hydra an, Wiederherstellungsdateien zu ignorieren. - Wenn beide Optionen zusammen verwendet werden, versucht Hydra trotzdem, die Wiederherstellungsdatei aufgrund von
-Rzu lesen. Wenn die Datei jedoch nicht existiert oder aufgrund von-Iignoriert wird, führt dies zu einem Fehler.
Dies zeigt, dass -I und -R widersprüchliche Optionen sind und nicht gleichzeitig verwendet werden sollten. Stattdessen:
- Verwenden Sie
-Rallein, um von einer Wiederherstellungsdatei fortzufahren. - Verwenden Sie
-Iallein, um Wiederherstellungsdateien zu ignorieren und einen neuen Angriff zu starten. - Verwenden Sie keine der beiden Optionen, um einen normalen Angriff durchzuführen.
Zusammenfassung
In diesem Labor haben Sie gelernt, wie Hydra unterbrochene Angriffe und Wiederherstellungsdateien handhabt. Die wichtigsten Erkenntnisse sind:
- Wiederherstellungsdateien werden nur bei unterbrochenen Angriffen erstellt – Normalerweise abgeschlossene Angriffe generieren keine Wiederherstellungsdateien.
- Die Option
-Rsetzt unterbrochene Angriffe fort – Sie liest die Dateihydra.restore, um den Angriff von der Unterbrechungsstelle fortzusetzen. - Die Option
-Iignoriert Wiederherstellungsdateien – Sie zwingt Hydra, einen neuen Angriff zu starten und ignoriert alle bestehenden Sitzungendaten. - Die Kombination von
-Iund-Rführt zu Konflikten – Diese Optionen haben gegensätzliche Zwecke und sollten nicht gleichzeitig verwendet werden. - Eine korrekte Unterbrechung ist entscheidend – Um die Wiederherstellungsfunktion zu testen, müssen Sie einen Angriff tatsächlich mit
Strg+Cunterbrechen, nicht einfach seinen normalen Abschluss abwarten.
Dieses Verständnis ist entscheidend für die Verwaltung länger laufender Hydra-Angriffe in realen Szenarien, in denen Sie Angriffe möglicherweise unterbrechen und fortsetzen oder einen Neubeginn erzwingen müssen.


