Wie kann man Passwörter mit dem Hashcat-Tool knacken?

Beim ethischen Hacken und bei Penetrationstests ist das Knacken von Passwörtern entscheidend, um Zugriff auf ein System oder einen Server zu erhalten.

In Systemen und Datenbanken werden Passwörter selten im Klartext gespeichert.

Passwörter werden immer gehasht, bevor sie in der Datenbank gespeichert werden, und der Hash wird während des Überprüfungsprozesses verglichen.

Abhängig von der verwendeten Verschlüsselung speichern verschiedene Systeme Passwort-Hashes auf unterschiedliche Weise. Und wenn Sie Hashes haben, können Sie jedes Passwort leicht knacken.

Und in diesem Artikel werden wir untersuchen, wie man Passwort-Hashes mit einem praktischen und hervorragenden Hashcat-Befehlszeilentool knackt.

Also lasst uns anfangen.

Aber vorher…

Was ist eine Hash-Funktion?

Beim Hashing wird ein normaler Eingabetext mithilfe einer mathematischen Funktion, die als Hash-Funktion bekannt ist, in eine Textzeichenfolge mit fester Größe umgewandelt. Jeder Text, unabhängig von seiner Länge, kann mithilfe eines Algorithmus in eine zufällige Kombination aus ganzen Zahlen und Buchstaben umgewandelt werden.

  • Input bezieht sich auf die Nachricht, die gehasht wird.
  • Die Hash-Funktion ist der Verschlüsselungsalgorithmus wie MD5 und SHA-256, der eine Zeichenfolge in einen Hash-Wert umwandelt.
  • Und schließlich ist der Hashwert das Ergebnis.

Was ist Hashcat?

Hashcat ist das schnellste Passwort-Wiederherstellungstool. Es wurde entwickelt, um die hochkomplexen Passwörter in kurzer Zeit zu knacken. Und dieses Tool ist auch in der Lage, sowohl Wortlisten- als auch Brute-Force-Angriffe durchzuführen.

Hashcat hat zwei Varianten. CPU- und GPU-basiert (Graphical Processing Unit). Das GPU-basierte Tool kann die Hashes in kürzerer Zeit knacken als die CPU. Sie können die GPU-Treiberanforderungen auf ihrer offiziellen Website überprüfen.

  Capsa ist ein umfassendes Netzwerkanalysetool für LAN & WLAN

Merkmale

  • Kostenlos und Open-Source
  • Mehr als 200 Hash-Typ-Variationen können implementiert werden.
  • Unterstützt mehrere Betriebssysteme wie Linux, Windows und macOS.
  • Multi-Plattformen wie CPU- und GPU-Unterstützung sind verfügbar.
  • Es können mehrere Hashes gleichzeitig geknackt werden.
  • Hex-Salt- und Hex-Charset-Dateien werden unterstützt, zusammen mit der automatischen Leistungsoptimierung.
  • Ein eingebautes Benchmarking-System ist verfügbar.
  • Verteilte Cracking-Netzwerke können unter Verwendung von Overlays unterstützt werden.

Und Sie können auch andere Funktionen auf ihrer Website sehen.

Installation von Hashcat

Stellen Sie zunächst sicher, dass Ihr Linux-System mit den neuesten Programmen und Tools auf dem neuesten Stand ist.

Öffnen Sie dazu ein Terminal und geben Sie Folgendes ein:

$ sudo apt update && sudo apt upgrade

Hashcat ist normalerweise in Kali Linux vorinstalliert. Sie finden das Tool im Abschnitt zum Knacken von Passwörtern. Wenn Sie es jedoch manuell in einer Linux-Distribution installieren müssen, geben Sie den folgenden Befehl im Terminal ein.

$ sudo apt-get install hashcat

Werkzeugnutzung

Um mit Hashcat zu beginnen, benötigen wir einige Passwort-Hashes. Wenn Sie keinen Hash zum Knacken haben, erstellen wir zuerst einige Hashes.

Um Hashes über die Befehlszeile zu erstellen, folgen Sie einfach dem folgenden Format.

echo -n "input" | algorithm | tr -d "-">>outputfiename

Sie können zum Beispiel sehen, dass ich einige Wörter mit dem md5-Algorithmus unten in Hashes umgewandelt habe.

┌──(root💀kali)-[/home/writer/Desktop]
└─# echo -n "wdzwdz" | md5sum | tr -d "-">>crackhash.txt
echo -n "password123" | md5sum | tr -d "-">>crackhash.txt
echo -n "Webtechnology" | md5sum | tr -d "-">>crackhash.txt
echo -n "microsoftteams" | md5sum | tr -d "-">>crackhash.txt
echo -n "recyclebin" | md5sum | tr -d "-">>crackhash.txt

Und die Ausgabe wird in der Datei crackhash.txt gespeichert.

  So blockieren Sie jemanden im Messenger

Jetzt werden wir die Hashes überprüfen, die in der angegebenen Datei gespeichert wurden.

┌──(root💀kali)-[/home/writer/Desktop]
└─# cat crackhash.txt

066d45208667198296e0688629e28b14
482c811da5d5b4bcd497ffeaa98491e3
72a2bc267579aae943326d17e14a8048
2192d208d304b75bcd00b29bc8de5024
caae8dd682acb088ed63e2d492fe1e13

Sie sehen, jetzt müssen wir einige Hashes knacken. Dies ist das Verfahren zum Erstellen eines Hashs mit dem Algorithmus Ihrer Wahl.

Der nächste Schritt besteht darin, ein Hashcat-Tool auf Ihrem Linux-Computer zu starten. Verwenden Sie einfach den folgenden Befehl, um Hashcat zu verwenden.

$ hashcat --help

Es werden alle Optionen angezeigt, die Sie zum Ausführen des Tools benötigen. Auf dem Terminal finden Sie alle Angriffs- und Hash-Modi.

Die allgemeine Form des Befehls ist

$ hashcat -a num -m num hashfile wordlistfile

Hier steht „num“ für einen bestimmten Angriffs- und Hash-Modus, der verwendet werden soll. Wenn Sie durch das Terminal scrollen, finden Sie die genauen Zahlen für jeden Angriffs- und Hash-Modus, wie für md4 – die Zahl ist 0 und für den sha256-Algorithmus – die Zahl ist 1740.

Die Wortliste, die ich verwenden werde, ist rockyou wordlist. Sie können diese Wortliste leicht im Pfad /usr/share/wordlists finden.

Sie können sogar den Befehl locate verwenden, um diesen Wortlistenpfad zu finden.

┌──(root💀kali)-[/home/writer]
└─# locate rockyou.txt

Und schließlich, um die Hashes mit der Wortlistendatei zu knacken, verwenden Sie den folgenden Befehl.

$ hashcat -a 0 -m 0 ./crackhash.txt rockyou.txt

Nachdem Sie diesen Befehl ausgeführt haben, erhalten Sie möglicherweise einen Laufzeitfehler (Token-Längen-Ausnahmefehler), der leicht behoben werden kann.

Um dies zu beheben, speichern Sie jeden Hash separat in einer anderen Datei. Dieser Fehler tritt auf, wenn Sie eine niedrige CPU- oder GPU-Geschwindigkeit haben. Wenn Ihr Computer über einen Hochgeschwindigkeitsprozessor verfügt, können Sie alle Hashes gleichzeitig als einzelne Datei selbst knacken.

  So laden Sie GIFs mit Ton auf Imgur hoch

Nachdem Sie den Fehler und alles behoben haben, wird das Ergebnis so aussehen.

┌──(root💀kali)-[/home/writer/Desktop]
└─# hashcat -a 0 -m 0 hashcrack.txt rockyou.txt
hashcat (v6.1.1) starting...

OpenCL API (OpenCL 1.2 pocl 1.6, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG) - Platform #1 [The pocl project]
=============================================================================================================================
* Device #1: pthread-Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz, 2403/2467 MB (1024 MB allocatable), 4MCU

Minimum password length supported by kernel: 0
Maximum password length supported by kernel: 256

Hashes: 1 digests; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1

Dictionary cache built:
* Filename..: rockyou.txt
* Passwords.: 14344405
* Bytes.....: 139921671
* Keyspace..: 14344398
* Runtime...: 1 sec

8276b0e763d7c9044d255e025fe0c212: [email protected]
                                                 
Session..........: hashcat
Status...........: Cracked
Hash.Name........: MD5
Hash.Target......: 8276b0e763d7c9044d255e025fe0c212
Time.Started.....: Sun Dec 12 08:06:15 2021 (0 secs)
Time.Estimated...: Sun Dec 12 08:06:15 2021 (0 secs)
Guess.Base.......: File (rockyou.txt)
Guess.Queue......: 1/1 (100.00%)
Speed.#1.........:  1059.6 kH/s (0.52ms) @ Accel:1024 Loops:1 Thr:1 Vec:8
Recovered........: 1/1 (100.00%) Digests
Progress.........: 4096/14344398 (0.03%)
Rejected.........: 0/4096 (0.00%)
Restore.Point....: 0/14344398 (0.00%)
Restore.Sub.#1...: Salt:0 Amplifier:0-1 Iteration:0-1
Candidates.#1....: 123456 -> pampam

Started: Sun Dec 12 08:06:13 2021
Stopped: Sun Dec 12 08:06:16 2021

Im obigen Ergebnis können Sie nach den Wörterbuch-Cache-Details feststellen, dass der Hash geknackt und das Passwort preisgegeben wurde.

Fazit

Ich hoffe, Sie haben ein besseres Verständnis für die Verwendung von Hashcat zum Knacken von Passwörtern gewonnen.

Vielleicht interessieren Sie sich auch für die verschiedenen Brute-Force-Tools für Penetrationstests und einige der besten Pentesting-Tools.