John the Ripper (JtR) gehört zu den Hacking-Tools, die das Varonis IR-Team bei der ersten Live-Cyberangriffsdemonstration eingesetzt hat. Generell ist es eines der beliebtesten Programme zum Cracken von Passwörtern, die gegenwärtig in Umlauf sind. In diesem Blog-Post schauen wir uns John the Ripper etwas genauer an, zeigen seine Funktionsweise und erklären, warum das wichtig ist.
Anmerkungen zum Hacking: Hacking ist eine Aktivität, um Kenntnisse über Systeme, Designs und Menschen zu gewinnen. In diesem Fall reden wir über Software und Betriebssysteme. Hacking muss nicht unbedingt rechtswidrig sein, es kann aber für unlautere Zwecke eingesetzt werden. Wir sind Vertreter des ethischen Hacking. Bleiben Sie auf der hellen Seite der Macht.
Diese Wörterlisten versorgen JtR mit Tausenden möglicher Passwörter, mit denen das Programm die entsprechenden Hash-Werte generieren kann, um eine fundierte Vermutung bezüglich des Ziel-Passworts zu erstellen. Weil die meisten Menschen leicht zu merkende Passwörter verwenden, ist JtR häufig selbst mit seiner vorgefertigten Passwortliste sehr effektiv. JtR gehört zum Umfang der Pentesting-Versionen von Kali Linux.
JtR ist in erste Linie ein Passwort-Cracker, der bei Pentesting-Projekten verwendet wird, um das IT-Personal beim Identifizieren schwacher Passwörter und unzureichender Passwort-Richtlinien zu unterstützen. Hier ist eine Liste der Verschlüsselungstechnologien, die in JtR enthalten sind:
Das ist die „offizielle“ Liste. JtR ist Open Source. Wenn also Ihre bevorzugte Verschlüsselung nicht dabei ist, suchen Sie einfach ein wenig. Möglicherweise hat schon jemand eine entsprechende Erweiterung geschrieben.
JtR ist ein Open-Source-Projekt. Sie können also entweder selbst den Quellcode herunterladen und kompilieren, die ausführbaren Binärdateien herunterladen oder es sich als Teil eines Penetrationstestpakets beschaffen. Die offizielle Website für John the Ripper befindet sich auf Openwall. Dort finden Sie den Quellcode und die Binärdateien, und Sie können sich bei GitHub registrieren, um am Projekt mitzuarbeiten. JtR ist unter Kali Linux als Teil ihrer Passwort-Crack-Metapakete verfügbar.
Wir werden einige der grundlegenden Befehle durchgehen, die Sie kennen müssen, um mit dem Einsatz von John the Ripper zu beginnen. Zu Beginn brauchen Sie lediglich eine Datei, die einen Hash-Wert zum Entschlüsseln enthält. Immer, wenn Sie sich eine Liste der Befehle in JtR anzeigen lassen möchten, führen Sie diesen Befehl aus:
.\john.exe
Die Grundmodi von John the Ripper zum Cracken von Passwörtern sind der Einzel-Crack-Modus, der Wörterlisten-Modus und der inkrementelle Modus. Der Einzel-Crack-Modus ist der schnellste und beste Modus, wenn Sie eine vollständige Passwort-Datei zum Cracken haben. Der Wörterlisten-Modus vergleicht den Hash mit einer bekannten Liste potenzieller Passwort-Übereinstimmungen. Der inkrementelle Modus ist am leistungsstärksten und wird möglicherweise nicht abgeschlossen. Dabei handelt es sich um einen klassischen Brute-Force-Modus, der jede mögliche Zeichenkombination ausprobiert, bis er Ihnen ein mögliches Ergebnis liefern kann. Die einfachste Methode, ein Passwort zu cracken, besteht darin, JtR eine Reihe üblicher Cracking-Modi durchprobieren zu lassen. Der folgende Befehl weist JtR an, den „Einzel“-Modus zu versuchen, dann die Standard-Wörterliste mit wahrscheinlichen Passwörtern und danach den „Inkrementell“-Modus.
.\john.exe passwordfile
Sie können auch unterschiedliche Wörterlisten aus dem Internet herunterladen oder mit dem Parameter „-wordlist“ eigene neue Wörterlisten für die Verwendung mit JtR erstellen.
.\john.exe passwordfile –wordlist=”wordlist.txt”
Wenn Sie einen bestimmten Cracking-Modus anwenden möchten, nutzen Sie den genauen Parameter für den Modus.
.\john.exe --single passwordfile .\john.exe --incremental passwordfile
Mangling ist ein Präprozessor in JtR, der die Wörterliste optimiert, um den Cracking-Prozess zu beschleunigen. Verwenden Sie den Parameter „–rules“, um die Mangling-Regeln festzulegen.
.\john.exe --wordlist=”wordlist.txt” --rules --passwordfile
Benutzen Sie den Parameter -show, um sich eine Liste der Passwörter anzeigen zu lassen, die Sie gecrackt haben.
.\john.exe –show passwordfile
Bei einer langen Liste mit gecrackten Passwörtern können Sie die Liste mit zusätzlichen Parametern filtern. Sie können die Ausgabe auch mithilfe der grundlegenden Umleitung in Ihrer Shell umleiten. Wenn Sie zum Beispiel nachsehen möchten, ob Sie einen Root-Benutzer (UID=0) gecrackt haben, verwenden Sie den Parameter -users.
.\john.exe --show --users=0 passwordfile
Oder wenn Sie sich Benutzer aus bevorrechtigten Gruppen anzeigen lassen möchten, nutzen Sie -groups.
.\john.exe –-show –-groups=0,1 passwordfile
Unten finden Sie den JtR-Befehl aus unserem Cyberangriff-Live-Webinar. In diesem Szenario hat unser Hacker mit kerberoast ein Kerberos Ticket Granting Ticket (TGT) mit dem zu crackenden Hash gestohlen, der in der Datei ticket.txt gespeichert wurde. In unseren Fall wurde die klassische rockyou-Passwortdatei aus Kali Linux als Wörterliste verwendet, und im Befehl wurde als Intervall für die Fortschrittsmeldung 3 Sekunden festgesetzt.
.\john.exe "--format=krb5tgs" "ticket.txt" "--wordlist=”rockyou.txt" "--progress-every=3"
Wenn Sie sich einige coole Pentesting- und Abwehrtaktiken mit Varonis anschauen möchten, sollten Sie die Cyberangriff-Live-Webinare besuchen! Wählen sie einen Termin aus, der am besten für sie passt!