Einleitung
In diesem Lab lernen Sie den Prozess des Knackens eines passwortgeschützten RAR-Archivs. Dies ist eine gängige Aufgabe im Penetration Testing und in der digitalen Forensik. Sie werden eine Kombination aus leistungsstarken, branchenüblichen Tools unter Linux verwenden: rar zum Erstellen des Archivs, die John the Ripper-Suite (speziell rar2john) zum Extrahieren eines Hashs aus dem Archiv und Hashcat zum Knacken des Hashs, um das ursprüngliche Passwort zu enthüllen.
Der Prozess umfasst das Erstellen einer geschützten Beispieldatei, das Extrahieren ihres Passwort-Hashs, die Identifizierung des richtigen Hash-Typs für das Cracking-Tool und schließlich den Start eines Wörterbuchangriffs, um das Passwort zu finden. Diese praktische Übung vermittelt Ihnen ein grundlegendes Verständnis der Passwort-Cracking-Mechanismen.
Erstellen eines passwortgeschützten RAR-Archivs
In diesem Schritt erstellen Sie ein passwortgeschütztes RAR-Archiv. Dies dient als Ziel für unsere Passwort-Cracking-Übung. Wir verwenden das Befehlszeilentool rar. Die Laborumgebung hat bereits eine Beispieldatei namens secret.txt in Ihrem aktuellen Verzeichnis /home/labex/project erstellt.
Zuerst verwenden wir den Befehl rar, um ein Archiv zu erstellen. Die Option a steht für "add to archive" (zum Archiv hinzufügen), und der Schalter -p wird verwendet, um direkt ein Passwort anzugeben. Wir verwenden labex als Passwort für diese Übung.
Führen Sie den folgenden Befehl in Ihrem Terminal aus, um ein passwortgeschütztes Archiv namens secret.rar zu erstellen, das die Datei secret.txt enthält.
rar a -plabex secret.rar secret.txt
Sie sehen eine Ausgabe, die anzeigt, dass die Datei hinzugefügt und das Archiv erstellt wird.
RAR 6.12 Copyright (c) 1993-2022 Alexander Roshal 17 May 2022
Trial version Type 'rar -?' for help
Evaluation copy. Please register.
Creating archive secret.rar
Adding secret.txt OK
Done
Überprüfen Sie nun mit dem Befehl ls -l, ob die Datei secret.rar in Ihrem Projektverzeichnis erstellt wurde.
ls -l
total 12
-rw-r--r-- 1 labex labex 338 Dec 05 10:30 secret.rar
-rw-r--r-- 1 labex labex 25 Dec 05 10:28 secret.txt
-rw-r--r-- 1 labex labex 29 Dec 05 10:28 wordlist.txt
Sie haben nun erfolgreich die Zieldatei für dieses Labor erstellt.
Verwendung von rar2john zum Extrahieren des Hashs aus der RAR-Datei
In diesem Schritt verwenden Sie rar2john, ein Dienstprogramm aus der John the Ripper-Suite, um den Passwort-Hash aus der Datei secret.rar zu extrahieren. Cracking-Tools wie Hashcat arbeiten nicht direkt mit RAR-Dateien; sie benötigen ein spezifisches Hash-Format, das die notwendigen Informationen zur Passwortüberprüfung enthält. rar2john ist genau für diesen Zweck konzipiert.
Führen Sie den folgenden Befehl aus, um die Datei secret.rar zu verarbeiten:
rar2john secret.rar
Der Befehl gibt eine lange Zeichenkette auf dem Terminal aus. Diese Zeichenkette ist der Hash.
secret.rar:$RAR3$*0*b51874e2d3731234*f82b2123456789012345678901234567:8:secret.txt:24:0
Dieser Hash enthält das Salt des Archivs, verschlüsselte Daten und andere Metadaten, die für den Cracking-Prozess benötigt werden. Um die Verwendung zu erleichtern, ist es bewährte Praxis, diesen Hash in eine Textdatei zu speichern.
Verwenden Sie die Ausgabeumleitung (>), um den Hash in eine Datei namens rar_hash.txt zu speichern.
rar2john secret.rar > rar_hash.txt
Dieser Befehl erzeugt keine sichtbare Ausgabe, da die Ausgabe in die Datei umgeleitet wird. Sie können mit dem Befehl cat überprüfen, ob die Datei erstellt wurde und den Hash enthält.
cat rar_hash.txt
secret.rar:$RAR3$*0*b51874e2d3731234*f82b2123456789012345678901234567:8:secret.txt:24:0
Sie haben nun den RAR-Hash in einem Format, das Passwort-Cracking-Tools verstehen können.
Identifizieren des korrekten Hash-Modus für RAR3-hp oder RAR5
In diesem Schritt identifizieren Sie den korrekten Modus, den Hashcat beim Knacken des Hashs verwenden soll. Hashcat unterstützt Hunderte verschiedener Hash-Typen, und Sie müssen den richtigen über eine Modusnummer angeben.
Der von Ihnen extrahierte Hash beginnt mit $RAR3$*.... Dieses Präfix gibt den Typ der verwendeten RAR-Verschlüsselung an. Um den entsprechenden Modus in Hashcat zu finden, können Sie das Hilfemenü durchsuchen.
Verwenden Sie den folgenden Befehl, um alle Hashcat-Modi aufzulisten und nach denen zu filtern, die sich auf "RAR" beziehen. Das Flag -i in grep macht die Suche unempfindlich gegenüber Groß- und Kleinschreibung.
hashcat --help | grep -i "RAR"
Die Ausgabe zeigt die verschiedenen von Hashcat unterstützten RAR-Modi.
...
12500 | RAR3-hp | Archives
13000 | RAR5 | Archives
...
Aus der Ausgabe können Sie zwei Hauptmodi erkennen:
12500fürRAR3-hp13000fürRAR5
Da unser Hash mit $RAR3$ beginnt, ist der korrekte Modus 12500. Die Identifizierung des richtigen Hash-Modus ist ein entscheidender Schritt für einen erfolgreichen Cracking-Versuch.
Vorbereitung des Hashs und der Wortliste für den Angriff
In diesem Schritt bereiten Sie die notwendigen Dateien für den Cracking-Versuch vor. Ein Wörterbuchangriff (Dictionary Attack), den wir durchführen werden, erfordert zwei Haupteingaben: die Datei, die den zu knackenden Hash enthält, und eine Wortliste (eine Datei mit potenziellen Passwörtern).
Den ersten Teil haben Sie bereits abgeschlossen, indem Sie den Hash in rar_hash.txt gespeichert haben. Lassen Sie uns dessen Inhalt kurz überprüfen.
cat rar_hash.txt
secret.rar:$RAR3$*0*b51874e2d3731234*f82b2123456789012345678901234567:8:secret.txt:24:0
Als Nächstes benötigen Sie die Wortliste. Für dieses Lab wurde während des Einrichtungsprozesses eine einfache Wortliste namens wordlist.txt für Sie erstellt. In einem realen Szenario würden Sie eine wesentlich größere Wortliste verwenden, wie z. B. die berühmte rockyou.txt. Lassen Sie uns den Inhalt unserer kleinen Wortliste untersuchen.
cat wordlist.txt
password
123456
labex
secret
Wie Sie sehen können, enthält unsere Wortliste einige gängige Passwörter, einschließlich des korrekten, labex. Da sowohl die Hash-Datei als auch die Wortliste bereit sind, sind Sie nun bereit, den Angriff zu starten.
Ausführen des Angriffs zur Ermittlung des RAR-Passworts
In diesem Schritt führen Sie den Wörterbuchangriff mit Hashcat aus. Mit der Hash-Datei, der Wortliste und der ermittelten korrekten Modusnummer haben Sie alles, was Sie benötigen.
Die grundlegende Syntax für einen Hashcat-Wörterbuchangriff lautet: hashcat -m <modus> <hash_datei> <wortlisten_datei>.
Führen Sie nun den Befehl mit dem Modus 12500, Ihrer Hash-Datei rar_hash.txt und Ihrer Wortliste wordlist.txt aus.
hashcat -m 12500 rar_hash.txt wordlist.txt
Hashcat wird initialisiert, die Cracking-Sitzung starten und schnell die Passwörter aus Ihrer Wortliste gegen den Hash testen. Sobald eine Übereinstimmung gefunden wird, endet der Prozess und der Status zeigt Cracked an.
...
Session..........: hashcat
Status...........: Cracked
Hash.Name........: RAR3-hp
Hash.Target......: secret.rar
Time.Started.....: ...
Time.Estimated...: 0 secs (0.00ms)
Guess.Base.......: File (wordlist.txt)
Guess.Queue......: 1/1 (100.00%)
Speed.#1.........: 24211 H/s (0.01ms) @ Accel:128 Loops:128 Thr:1 Vec:8
Recovered........: 1/1 (100.00%) Digests
Progress.........: 4/4 (100.00%)
Rejected.........: 0/4 (0.00%)
Restore.Point....: 4/4 (100.00%)
Restore.Sub.#1...: Salt:0 Amplifier:0-1
Candidate.Engine.: Optimized Kernel
Candidates.#1....: password -> secret
Hardware.Mon.#1..: Temp: 45c Fan: 30%
...
Hashcat speichert geknackte Passwörter automatisch in einer Datei namens "potfile", die sich unter ~/.hashcat/hashcat.potfile befindet. Um das geknackte Passwort anzuzeigen, können Sie die Option --show mit Ihrem ursprünglichen Befehl verwenden.
hashcat -m 12500 rar_hash.txt --show
Dies zeigt den Hash und sein entsprechendes geknacktes Passwort an.
secret.rar:$RAR3$*0*b51874e2d3731234*f82b2123456789012345678901234567:8:secret.txt:24:0:labex
Das Passwort, labex, wird am Ende der Zeile angezeigt, getrennt durch einen Doppelpunkt. Sie haben das Passwort für das RAR-Archiv erfolgreich geknackt.
Zusammenfassung
Herzlichen Glückwunsch zum Abschluss dieses Labs! Sie haben erfolgreich den gesamten Prozess des Knackens eines passwortgeschützten RAR-Archivs erlernt.
In diesem Lab haben Sie mehrere Schlüsselfertigkeiten geübt:
- Erstellen eines passwortgeschützten Archivs mit dem Befehl
rar. - Extrahieren eines knackbarren Hashs aus einer RAR-Datei mit
rar2john. - Identifizieren des korrekten Hash-Typs und seines entsprechenden Modus in
Hashcat. - Ausführen eines Wörterbuchangriffs mit
Hashcatunter Verwendung des extrahierten Hashs und einer Wortliste. - Anzeigen des wiederhergestellten Passworts.
Diese Techniken sind grundlegend im Bereich der Cybersicherheit für die Passwortwiederherstellung und Sicherheitsaudits. Es ist wichtig zu bedenken, dass diese Fähigkeiten nur ethisch und legal eingesetzt werden sollten, beispielsweise auf Systemen, für deren Test Sie ausdrückliche Erlaubnis haben.


