RAR-Archive mit John the Ripper knacken

Kali LinuxBeginner
Jetzt üben

Einleitung

In diesem Lab werden Sie den Prozess des Knackens passwortgeschützter RAR-Archive mit einem leistungsstarken Tool namens John the Ripper erkunden. RAR (Roshal Archive) ist ein proprietäres Archivdateiformat, das Datenkomprimierung, Fehlerwiederherstellung und Dateispanning unterstützt. Während RAR-Dateien robuste Komprimierungs- und Sicherheitsfunktionen bieten, können schwache Passwörter sie anfällig für Brute-Force-Angriffe machen.

John the Ripper ist ein kostenloses und Open-Source-Tool zum Knacken von Passwörtern. Es wurde entwickelt, um schwache Unix-Passwörter zu erkennen, unterstützt aber auch verschiedene andere Hash-Typen, einschließlich derjenigen aus RAR-Archiven. Am Ende dieses Labs werden Sie verstehen, wie Sie eine passwortgeschützte RAR-Datei erstellen, ihren Hash mit rar2john extrahieren und dann John the Ripper verwenden, um zu versuchen, das Passwort wiederherzustellen. Sie werden auch Einblicke in die Unterschiede zwischen dem Knacken von RAR- und ZIP-Archiven gewinnen und etwas über Best Practices für die Sicherung Ihrer RAR-Dateien lernen.

Erstellen einer passwortgeschützten RAR-Datei

In diesem Schritt erstellen Sie eine einfache Textdatei und komprimieren sie dann in ein passwortgeschütztes RAR-Archiv. Diese RAR-Datei dient als unser Ziel für das Knacken des Passworts in den folgenden Schritten.

Erstellen Sie zuerst ein neues Verzeichnis namens rar_test und navigieren Sie hinein:

mkdir ~/project/rar_test
cd ~/project/rar_test

Erstellen Sie als Nächstes eine Textdatei namens secret.txt mit etwas Inhalt. Wir verwenden dafür nano.

nano secret.txt

Geben Sie den folgenden Inhalt in den nano-Editor ein:

This is a secret message.
The password is 'labex'.

Drücken Sie Ctrl+S, um die Datei zu speichern, und Ctrl+X, um nano zu beenden.

Erstellen Sie nun ein passwortgeschütztes RAR-Archiv namens secret.rar aus secret.txt. Wir verwenden das Passwort labex.

rar a -p labex secret.rar secret.txt

Die Option a steht für "Dateien zum Archiv hinzufügen" und -p wird verwendet, um das Passwort anzugeben. Sie sollten eine Ausgabe ähnlich dieser sehen:

RAR 5.00 freeware      Copyright (c) 1993-2013 Alexander Roshal      20 August 2013
Shareware version         Type 'rar -?' for help

Creating archive secret.rar

Adding    secret.txt                                               OK
Done

Um zu überprüfen, ob die Datei tatsächlich passwortgeschützt ist, versuchen Sie, sie ohne Angabe eines Passworts zu extrahieren:

unrar e secret.rar

Sie werden zur Eingabe eines Passworts aufgefordert:

UNRAR 5.00 freeware      Copyright (c) 1993-2013 Alexander Roshal      20 August 2013
secret.rar

Extracting from secret.rar

Enter password (will not be echoed) for secret.txt:

Drücken Sie Ctrl+C, um die Extraktion abzubrechen.

Extrahieren des Hashs aus der RAR-Datei mit rar2john

In diesem Schritt verwenden Sie das Dienstprogramm rar2john, das Teil der John the Ripper-Suite ist, um den Passwort-Hash aus der Datei secret.rar zu extrahieren. Dieser Hash ist eine Darstellung des Passworts, die John the Ripper zu knacken versuchen kann.

Stellen Sie sicher, dass Sie sich immer noch im Verzeichnis ~/project/rar_test befinden:

cd ~/project/rar_test

Führen Sie nun rar2john auf Ihrer Datei secret.rar aus und leiten Sie dessen Ausgabe in eine neue Datei namens rar_hash.txt um:

rar2john secret.rar > rar_hash.txt

Dieser Befehl verarbeitet die Datei secret.rar und gibt den extrahierten Hash auf der Standardausgabe aus, der dann in rar_hash.txt gespeichert wird.

Sie können den Inhalt der Datei rar_hash.txt mit cat anzeigen:

cat rar_hash.txt

Die Ausgabe wird ungefähr so aussehen (der tatsächliche Hash-Wert wird anders sein):

secret.rar:$rar5$16$...

Diese Zeile enthält die notwendigen Informationen für John the Ripper, um mit dem Knacken des Passworts zu beginnen. Das Format $rar5$... zeigt an, dass es sich um einen RAR5-Hash handelt.

Knacken des RAR-Hashs mit John the Ripper

In diesem Schritt verwenden Sie John the Ripper, um den im vorherigen Schritt extrahierten Passwort-Hash zu knacken. Wir verwenden einen einfachen Wörterbuchangriff (wordlist attack), der für schwache Passwörter effektiv ist.

Stellen Sie sicher, dass Sie sich immer noch im Verzeichnis ~/project/rar_test befinden:

cd ~/project/rar_test

John the Ripper wird mit einer Standard-Wortliste (wordlist) geliefert. Für dieses Lab erstellen wir eine kleine benutzerdefinierte Wortliste, die unser bekanntes Passwort (labex) enthält, um ein schnelles Knacken zu gewährleisten.

Erstellen Sie eine Datei namens wordlist.txt mit folgendem Inhalt:

nano wordlist.txt

Geben Sie die folgenden Passwörter in den nano-Editor ein, jedes in einer neuen Zeile:

password
123456
labex
john

Drücken Sie Ctrl+S, um die Datei zu speichern, und Ctrl+X, um nano zu beenden.

Führen Sie nun John the Ripper mit der Datei rar_hash.txt und Ihrer benutzerdefinierten wordlist.txt aus:

john --wordlist=wordlist.txt rar_hash.txt

John the Ripper beginnt mit der Verarbeitung des Hashs. Da labex in unserer Wortliste enthalten ist, sollte das Passwort schnell gefunden werden. Die Ausgabe zeigt das geknackte Passwort:

Using default input encoding: UTF-8
Loaded 1 password hash from rar_hash.txt (RAR5)
Cost 1 (iteration count) is 262144 for all loaded hashes
Will run 4 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
labex            (secret.rar)
1g 0:00:00:00 DONE (2023-10-27 10:30) 100.0% (ETA: 00:00:00) 1.000g/s 4.000p/s 4.000c/s 4.000C/s labex
Session completed.

Die Zeile labex (secret.rar) zeigt an, dass das Passwort labex für das Archiv secret.rar gefunden wurde.

Sie können auch die geknackten Passwörter überprüfen, die John the Ripper gefunden und gespeichert hat:

john --show rar_hash.txt

Dieser Befehl zeigt alle Passwörter an, die erfolgreich geknackt und in der internen Pot-Datei von John gespeichert wurden:

secret.rar:labex

1 password hash cracked, 0 left

Dies bestätigt, dass John the Ripper das RAR-Passwort erfolgreich geknackt hat.

Vergleich des Knackens von RAR und ZIP

In diesem Schritt vergleichen wir kurz den Prozess des Knackens von RAR-Archiven mit dem Knacken von ZIP-Archiven und heben einige wichtige Unterschiede hervor. Beide Formate sind für die Komprimierung üblich, aber ihre Verschlüsselungsmechanismen und die zu ihrem Knacken verwendeten Werkzeuge können sich unterscheiden.

Erstellen wir zunächst eine passwortgeschützte ZIP-Datei zum Vergleich. Stellen Sie sicher, dass Sie sich in ~/project/rar_test befinden:

cd ~/project/rar_test

Erstellen Sie eine neue Textdatei für das ZIP-Archiv:

nano zip_secret.txt

Fügen Sie etwas Inhalt hinzu:

This is a secret message for ZIP.
The password is 'zip_pass'.

Speichern und beenden Sie nano (Ctrl+S, Ctrl+X).

Erstellen Sie nun ein passwortgeschütztes ZIP-Archiv namens zip_secret.zip mit dem Passwort zip_pass:

zip -P zip_pass zip_secret.zip zip_secret.txt

Die Option -P wird verwendet, um das Passwort direkt anzugeben.

  adding: zip_secret.txt (deflated 29%)

Ähnlich wie bei rar2john gibt es ein Dienstprogramm zip2john zum Extrahieren von Hashes aus ZIP-Dateien.

zip2john zip_secret.zip > zip_hash.txt

Zeigen Sie den extrahierten ZIP-Hash an:

cat zip_hash.txt

Die Ausgabe wird sich vom RAR-Hash unterscheiden und typischerweise mit zip_secret.zip:$zip$... beginnen:

zip_secret.zip:$zip2$*0*1*0*...

Versuchen wir nun, ihn mit John the Ripper unter Verwendung einer Wortliste zu knacken, die zip_pass enthält:

nano zip_wordlist.txt

Fügen Sie folgenden Inhalt hinzu:

password
zip_pass
123456

Speichern und beenden Sie nano.

john --wordlist=zip_wordlist.txt zip_hash.txt

John the Ripper wird das ZIP-Passwort knacken:

Using default input encoding: UTF-8
Loaded 1 password hash from zip_hash.txt (PKZIP)
Cost 1 (iteration count) is 1024 for all loaded hashes
Will run 4 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
zip_pass         (zip_secret.zip)
1g 0:00:00:00 DONE (2023-10-27 10:35) 100.0% (ETA: 00:00:00) 1.000g/s 4.000p/s 4.000c/s 4.000C/s zip_pass
Session completed.

Wichtige Unterschiede:

  • Hash-Format: RAR- und ZIP-Dateien verwenden unterschiedliche interne Verschlüsselungs- und Hash-Formate, was spezifische *2john-Dienstprogramme (rar2john vs. zip2john) erfordert.
  • Verschlüsselungsstärke: Die moderne RAR (RAR5)-Verschlüsselung gilt im Allgemeinen als stärker als die Standard-ZIP-Verschlüsselung (ZipCrypto), insbesondere bei Verwendung von AES-256. Das bedeutet, dass das Knacken von RAR5 bei starken Passwörtern rechenintensiver und zeitaufwändiger sein kann.
  • Werkzeuge: Während John the Ripper beides verarbeiten kann, sind die zugrunde liegenden Module zur Hash-Extraktion und zum Knacken unterschiedlich. Andere Werkzeuge wie fcrackzip sind speziell für ZIP konzipiert, während rarcrack für RAR ist.

Dieser Vergleich zeigt, dass der allgemeine Ansatz (Hash extrahieren, mit Wortliste knacken) zwar ähnlich ist, die spezifischen Handhabungen unterschiedlicher Archivformate jedoch variieren.

Best Practices für RAR-Sicherheit

In diesem Schritt besprechen wir Best Practices, um Ihre RAR-Archive zu sichern und zu verhindern, dass sie leicht geknackt werden können. Das Verständnis dieser Praktiken ist entscheidend für den Schutz Ihrer sensiblen Daten.

Die Leichtigkeit, mit der wir die Datei secret.rar in diesem Lab geknackt haben, unterstreicht die Bedeutung starker Passwörter. Hier sind einige Best Practices für die RAR-Sicherheit:

  1. Verwenden Sie starke, eindeutige Passwörter:

    • Länge: Streben Sie Passwörter an, die mindestens 12-16 Zeichen lang sind. Längere Passwörter sind exponentiell schwerer zu knacken.
    • Komplexität: Verwenden Sie eine Mischung aus Großbuchstaben, Kleinbuchstaben, Zahlen und Sonderzeichen. Vermeiden Sie gängige Wörter, Namen oder leicht zu erratende Sequenzen (wie "123456" oder "password").
    • Eindeutigkeit: Verwenden Sie niemals Passwörter für verschiedene Konten oder Archive wieder. Wenn ein Passwort kompromittiert wird, bleiben andere sicher.
  2. Nutzen Sie Passwort-Manager:

    • Passwort-Manager können komplexe, eindeutige Passwörter für Sie generieren und speichern, wodurch es einfacher wird, die oben genannten Empfehlungen zu befolgen, ohne sie sich alle merken zu müssen.
  3. Aktivieren Sie starke Verschlüsselung (RAR5 mit AES-256):

    • Stellen Sie beim Erstellen von RAR-Archiven sicher, dass Sie das neueste RAR-Format (RAR5) verwenden, das standardmäßig AES-256-Verschlüsselung verwendet. Dies ist deutlich sicherer als ältere RAR-Formate oder schwächere Verschlüsselungsalgorithmen. Die meisten modernen rar-Tools verwenden standardmäßig RAR5.
  4. Vermeiden Sie die Speicherung von Passwörtern in der Nähe von Archiven:

    • Speichern Sie niemals das Passwort für ein Archiv in einer Textdatei oder auf einem Haftnotizblock neben dem Archiv selbst. Dies untergräbt den Zweck des Passwortschutzes.
  5. Beschränken Sie den Zugriff auf Archive:

    • Speichern Sie Ihre passwortgeschützten RAR-Dateien an sicheren Orten mit eingeschränktem Zugriff. Selbst mit einem starken Passwort, wenn ein Angreifer physischen Zugriff auf Ihr Gerät oder Netzwerk erhält, hat er möglicherweise mehr Möglichkeiten, das Knacken zu versuchen.
  6. Seien Sie vorsichtig bei Phishing und Social Engineering:

    • Angreifer könnten versuchen, Sie dazu zu bringen, Ihre Passwörter durch gefälschte E-Mails, Websites oder direkte Kommunikation preiszugeben. Seien Sie immer misstrauisch gegenüber unerbetenen Anfragen nach sensiblen Informationen.

Durch die Befolgung dieser Best Practices können Sie die Sicherheit Ihrer RAR-Archive erheblich verbessern und Ihre Daten vor unbefugtem Zugriff schützen. Denken Sie daran, dass das schwächste Glied in jeder Sicherheitskette oft das menschliche Element oder ein schwaches Passwort ist.

Zusammenfassung

In diesem Lab haben Sie praktische Erfahrungen mit dem Knacken von passwortgeschützten RAR-Archiven mit John the Ripper gesammelt. Sie begannen mit der Erstellung einer Beispiel-RAR-Datei mit einem bekannten Passwort. Anschließend lernten Sie, wie Sie den RAR-Hash mit dem Dienstprogramm rar2john extrahieren, das die Passwortinformationen des Archivs in ein Format umwandelt, das John the Ripper verstehen kann.

Anschließend haben Sie erfolgreich John the Ripper mit einer benutzerdefinierten Wortliste verwendet, um das Passwort des RAR-Archivs zu knacken, was die Anfälligkeit von Archiven zeigt, die durch schwache oder gängige Passwörter geschützt sind. Sie haben auch die Unterschiede zwischen dem Knacken von RAR- und ZIP-Archiven untersucht und die unterschiedlichen Hash-Formate und Verschlüsselungsstärken festgestellt.

Schließlich wurde das Lab mit einer Diskussion über Best Practices für die RAR-Sicherheit abgeschlossen, wobei die Bedeutung von starken, eindeutigen Passwörtern, der Nutzung moderner Verschlüsselung und der Anwendung guter Sicherheitspraktiken zur Sicherung Ihrer in Archiven gespeicherten sensiblen Daten hervorgehoben wurde. Dieses Lab vermittelt ein grundlegendes Verständnis von Passwort-Knacktechniken und der kritischen Notwendigkeit robuster Passwortrichtlinien.