rarcrack

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Installation von Programmen

  2. Verwenden eines PPAs

  3. Starten von Programmen

  4. Ein Terminal öffnen

Inhaltsverzeichnis
  1. Installation
  2. Bedienung
    1. Steuerungsdatei
  3. Problembehebung
  4. Links

Wiki/Icons/terminal.png rarcrack 🇬🇧 ist ein Programm für die Kommandozeile, mit dem sich verlorengegangene Passwörter von komprimierten Dateiarchiven (momentan zip, rar, 7z) wiederfinden lassen. rarcrack nutzt dafür die Brute-Force-Methode, also stumpfes Ausprobieren, bei der alle möglichen Zeichenkombinationen systematisch durchprobiert werden.

Abhängig von der Länge des Passworts und der verwendeten Hardware kann das Finden von Passwörtern daher sehr lang dauern. Deswegen kann man das Programm auch als Lasttest zweckentfremden (siehe auch Benchmarks (Abschnitt „Sonstiges“)).

Installation

Rarcrack kann direkt aus den offiziellen Paketquellen installiert werden [1]:

Paketliste zum Kopieren:

sudo apt-get install rarcrack 

Oder mit apturl installieren, Link: apt://rarcrack

Bedienung

Rarcrack besitzt keine grafische Oberfläche. Die Steuerung funktioniert nur via Kommandozeilen-Optionen und eine für jeden Brute-Force-Vorgang angelegte Steuerungsdatei, in der die aktuelle Position und zum Durchprobieren vorgesehene Zeichen vermerkt sind.

Zum Starten des Programms [3] reicht im Normalfall folgender Befehl im Terminal [4]:

rarcrack DATEINAME 

Beispielausgabe:

RarCrack! 0.2 by David Zoltan Kedves (kedazo@gmail.com)

INFO: the specified archive type: rar
INFO: cracking test.rar, status file: test.rar.xml
Probing: '3' [0 pwds/sec]
...

Archivformat

Rarcrack versucht, das Dateiformat des Archivs selbst heraus zu finden. Wahlweise lässt sich dies auch mittels

rarcrack DATEINAME --type XXX 

festlegen. Dabei muss XXX entsprechend durch rar, zip oder 7z ersetzt werden.

Rechenleistung

Sollte der verwendete Rechner über mehr als einen (physischen oder virtuellen) Prozessor-Kern verfügen, ist es sinnvoll, die Anzahl der verwendeten Threads analog zur Anzahl der für die CPU parallel handhabbaren Threads zu erhöhen. Dazu ist es zunächst nötig, die Anzahl der möglichen ausführbaren Threads zu ermitteln. Hierzu kann zum Beispiel der Befehl nproc verwendet werden, der als Rückgabewert die Anzahl der verfügbaren Kerne ausgibt.

nproc 

Die ermittelte Anzahl kann dann direkt als Grundlage für die Anzahl Y der Threads dienen, die rarcrack zur Verfügung gestellt werden sollen:

rarcrack DATEINAME --threads Y 

Je mehr Threads rarcrack zur Verfügung gestellt werden, desto größer ist die Anzahl der durchprobierten Passwörter pro Sekunde. Die derzeitige Obergrenze liegt bei 12 Threads (Version 0.2).

Steuerungsdatei

In dem Ordner, in dem das Archiv liegt, für das rarcrack das verlorene Passwort finden soll, legt das Programm eine Datei mit dem Namen DATEINAME.TYP.xml an, die folgende Struktur aufweist:

1
2
3
4
5
6
<?xml version="1.0" encoding="UTF-8"?>
  <rarcrack>
    <abc>0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ</abc>
    <current>uU</current>
    <good_password></good_password>
  </rarcrack>

Es empfiehlt sich, die Suche von rarcrack nach dem ersten Aufruf mit Strg + C abzubrechen, dann den Inhalt dieser Datei den eigenen Bedürfnissen entsprechend anzupassen und den Prozess abschließend erneut zu starten. Jede Information zu im Passwort verwendeten Zeichen und der Länge des gesuchten Passwortes kann eine teils enorme Zeitersparnis bedeuten.

Zeichenauswahl

Zwischen <abc> und </abc> sind alle Zeichen aufgelistet, die rarcrack beim Durchprobieren verwendet. Dieser Inhalt kann den eigenen Bedürfnissen angepasst werden. Wer sich zum Beispiel noch erinnert, dass das Passwort nur aus kleinen Buchstaben bestand, kann durch das Entfernen der Großbuchstaben die Suchzeit enorm verkürzt werden. Gleiches gilt für Passwörter ohne Ziffern.

Sollte hingegen noch bekannt sein, dass Sonderzeichen im Passwort enthalten sind, müssen diese hier hinzugefügt werden.

Länge & Position

Zwischen <current> und </current> wird die aktuelle Position gespeichert, so das rarcrack die Suche an der Stelle fortgesetzt werden kann, an der es vorzeitig beendet wurde. Im obigen Beispiel wurde das Programm an der Stelle uU gestoppt. Dieser Eintrag kann nach dem Stoppen manipuliert werden, um Passwörter unter einer gewissen Zeichenanzahl auszuschließen und somit Rechenzeit zu sparen.

Wenn bei dem obigen Beispiel bekannt ist, dass das Passwort mindestens 6 Stellen hat, kann eine Menge Zeit gespart werden, in dem uU durch 000000 ersetzt wird. Wird das Programm erneut auf das zur XML-Datei zugehörige Archiv angewendet, beginnt es mit dem Probieren bei 000000. Dadurch werden in diesem Fall rund eine Milliarde unnötige Kombinationen übersprungen. Selbst bei modernerer Heim-PC-Hardware, die 2000 Passwörter pro Sekunde schafft, können so über 127 Stunden Rechenzeit, also mehr als fünf Tage, eingespart werden.

Problembehebung

Auf manchen Systemen bricht rarcrack direkt nach dem Start ab und gibt folgende Meldung aus:

rarcrack --type zip test.zip 
RarCrack! 0.2 by David Zoltan Kedves (kedazo@gmail.com)

INFO: the specified archive type: zip
INFO: cracking test.zip, status file: test.zip.xml
GOOD: password cracked: '0'
GOOD: password cracked: '1'

Lösen lässt sich dieses Fehlverhalten durch die Deinstallation des Programmes unrar, mit dem rarcrack in Konflikt gerät. Dies lässt sich zum Beispiel über das Terminal bewerkstelligen.

sudo apt-get remove --purge unrar 

Danach sollte rarcrack problemlos laufen.