Hashcat oder John the Ripper: welcher Cracker passt?
Ein praktischer Vergleich von hashcat und John the Ripper — GPU- und CPU-Stärken, Autoerkennung, -m-Modi, Jumbo-Formate, Wortlisten und Regeln — mit Beispielbefehlen.
Sobald ein Hash identifiziert ist, lautet die nächste Entscheidung: Welches Werkzeug richtest du gegen ihn? Die beiden dominierenden Passwort-Cracker sind hashcat und John the Ripper. Sie überschneiden sich stark, doch jeder hat seine Stärke, und zu wissen, wann man welchen greift, spart echte Zeit.
Worin sich die beiden Werkzeuge unterscheiden
Hashcat setzt auf die GPU. Es ist darauf ausgelegt, eine oder viele Grafikkarten auszulasten, und bei schnellen, ungesalzenen Hashes ist dieser Durchsatz enorm. Der Haken: hashcat ist explizit, du musst ihm den Algorithmus über einen numerischen -m-Modus mitteilen. Es gibt keine Autoerkennung — du lieferst den Modus, den du beim Identifizieren des Hashes ermittelt hast.
John the Ripper setzt auf die CPU und auf Komfort. Der Community-„Jumbo"-Build unterstützt einen riesigen Katalog an Formaten, viele davon deckt hashcat nicht ab, und er erkennt das Format in den meisten Fällen automatisch. John bringt zudem die *2john-Helfer mit (zip2john, pdf2john und so weiter), die einen knackbaren Hash aus einer Container-Datei extrahieren.
Eine sinnvolle Faustregel: Greife zu hashcat, wenn du eine GPU und einen gängigen, schnellen Hash wie MD5 oder SHA-256 hast; greife zu John, wenn du auf der CPU arbeitest, ein ungewöhnliches Format vor dir hast oder die Autoerkennung für dich mitdenken soll.
Beispielbefehle
Ein einfacher Wörterbuchangriff in hashcat gegen einen MD5-Prüfwert (Modus 0):
hashcat -m 0 -a 0 hash.txt rockyou.txt
Für NTLM änderst du nur den Modus auf 1000; für bcrypt ist es 3200. Die passende Nummer steht auf jeder Hash-Typ-Seite.
Das Äquivalent in John the Ripper, mit Autoerkennung, lautet schlicht:
john --wordlist=rockyou.txt hash.txt
Wenn du das Format explizit festlegen willst — nützlich, wenn die Autoerkennung etwa zwischen rohem MD5 und NTLM schwankt — benenne es:
john --format=nt --wordlist=rockyou.txt hash.txt
Wortlisten und Regeln
Beide Werkzeuge sind nur so gut wie die Kandidaten, die du ihnen lieferst. Eine Wortliste stellt die Basis-Vermutungen bereit; Regeln mutieren jede einzelne — sie hängen Ziffern an, ersetzen Buchstaben durch Symbole oder ändern die Groß- und Kleinschreibung — sodass ein einzelner Eintrag wie password sich in Password1, p@ssw0rd und Tausende Varianten entfaltet. Füge Regeln mit -r best64.rule in hashcat oder --rules in John hinzu.
Langsame, gesalzene Algorithmen wie sha512crypt widerstehen Brute Force von Natur aus; gegen sie schlägt eine kluge, regelgesteuerte Wortliste jedes Mal die rohe Geschwindigkeit. Falls dir der Unterschied zwischen schnellen und langsamen Hashes neu ist, erklärt der nächste Beitrag — warum schnelle Hashes gefährlich sind — genau, warum die Wahl des Algorithmus die gesamte Rechnung dominiert.