
Marfil ist eine Erweiterung der Aircrack-ng-Suite, die zur Bewertung der Sicherheit von WiFi-Netzwerken verwendet wird. Sie ermöglicht es, die Arbeit lang andauernder Wörterbuchangriffe auf viele Computer zu verteilen.
Marfil ist eine Erweiterung der Aircrack-ng-Suite, die zur Bewertung der Sicherheit von WiFi-Netzwerken verwendet wird. Sie ermöglicht es, die Arbeit von langanhaltenden Wörterbuchangriffen auf viele Computer zu verteilen.
Die Aircrack-ng-Suite bietet das Tool aircrack-ng, ein Programm zum Knacken von 802.11-WEP- und WPA/WPA2-PSK-Schlüsseln. Beim Knacken von WPA/WPA2-PSK muss ein Wörterbuch oder eine Wortliste verwendet werden. Je länger diese Wörterbücher sind, desto länger dauert der Vorgang. Abhängig von der Hardware kann dies sogar Tage oder Wochen dauern.
Falls Ihnen zusätzliche Hardware zur Verfügung steht, erlaubt Aircrack-ng nicht, die Last zwischen ihnen zu verteilen: Sie müssen die schnellste auswählen und bei ihr bleiben. Genau hier kommt Marfil ins Spiel.
Marfil ist ein PHP-basiertes Tool, das die Cracking-Last auf verschiedene Knoten verteilt. Der verfolgte Ansatz ist recht einfach: Statt nur einen Knoten zum Knacken einer .cap-Datei mit einem großen Wörterbuch zu verwenden, wird das Wörterbuch aufgeteilt und auf die restlichen Knoten verteilt. Der Ablauf auf hoher Ebene sieht wie folgt aus:
.cap-Datei und die BSSID des Zielnetzwerks).cap-Datei und der BSSID sowie einem Wörterbuch-Teil.cap-Datei entweder gegen alle Teile eines Wörterbuchs ohne Erfolg verarbeitet, oder das Passwort wird gefundenDer Vorgang wiederholt sich. Beachten Sie, dass der erste Schritt nur beim ersten Mal oder immer dann erforderlich ist, wenn die Wörterbücher aktualisiert werden. Der Server-Knoten kann auch als Client-Knoten arbeiten.
Marfil wurde bisher nur unter Linux getestet. Allerdings sind der verfolgte Ansatz und die verwendeten Werkzeuge recht plattformunabhängig, sodass es auch unter Windows oder Mac funktionieren sollte.
Laden Sie die aktuellste Datei aus dem Release-Bereich herunter
Entpacken Sie sie auf allen Knoten (Server und Clients)
Installieren Sie PHP5 und die Aircrack-ng-Suite auf allen Clients
Unter Debian Linux können Sie dies mit folgendem Befehl tun:
sudo apt-get install php5 aircrack-ng
Installieren Sie das SQLite-Modul für PHP5 auf dem Server
Unter Debian Linux können Sie dies mit folgendem Befehl tun:
sudo apt-get install php5-sqlite
Starten Sie auf dem Server-Knoten einen Webserver, wobei Sie das public-Verzeichnis im Marfil-Verzeichnis als Wurzel setzen
Mit dem integrierten Webserver von PHP kann dies durch Ausführen des folgenden Befehls im Marfil-Verzeichnis erfolgen:
php -S 0.0.0.0:8080 -t public
Sie können testen, ob dies funktioniert hat, indem Sie in einem Browser auf Ihrem Server-Knoten http://localhost:8080 aufrufen und eine leere Liste von Crack-Anfragen sehen
Stellen Sie sicher, dass Sie von Ihren Clients aus auf den Webserver zugreifen können, indem Sie in einem Webbrowser von Ihren Clients aus http://YOUR_SERVER_IP_ADDRESS:8080 aufrufen
Platzieren Sie Wörterbücher im Verzeichnis storage/app/dictionaries. Suchen Sie im Internet nach Wortlisten, falls Sie keine haben
Führen Sie diesen Befehl im Marfil-Verzeichnis aus, um die Wörterbücher in Teile zu zerlegen und die Wörterbuchdatenbank vorzubereiten (je nach Größe der Wörterbücher kann dies eine Weile dauern):
Um Crack-Anfragen hinzuzufügen, wird eine .cap-Datei mit dem WPA-Handshake und der BSSID des Zielnetzwerks benötigt. Dies kann entweder über die Webserver-Oberfläche oder durch Ausführen des folgenden Befehls im Marfil-Verzeichnis eines beliebigen Knotens erfolgen:
php artisan marfil:crack YOUR_SERVER_IP_ADDRESS:8080 path/to/file.cap 01:23:45:67:89:AB
Jede erfolgreich erstellte Crack-Anfrage kann in der Webserver-Oberfläche angezeigt werden
Jeder der Knoten kann als Arbeits-Client verwendet werden. Führen Sie dazu einfach den folgenden Befehl im Marfil-Verzeichnis aus:
php artisan marfil:work YOUR_SERVER_IP_ADDRESS:8080
Dieser Befehl bewirkt, dass der Client alle 60 Sekunden nach Arbeit fragt. Wenn der Server mit Arbeit antwortet, lädt der Client die benötigten Dateien herunter und versucht, die .cap-Datei zu knacken.
Der Fortschritt kann über die Weboberfläche verfolgt werden
Wenn ein Problem gefunden wird, melden Sie es bitte und geben Sie alle erforderlichen Informationen zur Reproduktion an. Andernfalls wird das Ticket geschlossen.
Einige zusätzliche Hinweise:
Es ist möglich, Serverprotokolle durch Überwachen der Datei storage/logs/lumen.log einzusehen
Die Datenbank kann durch Ausführen dieses Befehls neu generiert werden:
php artisan migrate:refresh
php artisan marfil:refresh-dictionaries