Ich versuche, die MPI-Funktionen von John 1.7.9 zu nutzen und teste mit einem einfachen 4-stelligen Passwort auf einem einzelnen 8-Core-Server. Mir ist aufgefallen, dassnach Erfolg, der Prozess, der das Passwort geknackt hat, wird beendet, während der Rest weiterläuft. Ist das ein bekanntes Problem oder ein neuer Fehler? Gibt es außerdem eine Problemumgehung (abgesehen davon, die Zeit jedes Prozesses zu überwachen und nach Unterschieden zu suchen, was nicht wirklich schlüssig ist).
Einzelheiten:
mpiexec --version
mpiexec (OpenRTE) 1.4.3
...
mpiexec -n 8 -host localhost ./run/john temp --format=raw-md5
...
mpiexec -n 8 -host localhost killall -s HUP john && mpiexec -n 8 -host localhost ./john --status
0: guesses: 0 time: 0:00:00:07 0.00% (3) c/s: 4424K
3: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 7985K
7: guesses: 0 time: 0:00:01:34 0.00% (3) c/s: 7190K
4: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 6643K
6: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 7319K
1: guesses: 0 time: 0:00:01:34 0.00% (3) c/s: 9367K
2: guesses: 0 time: 0:00:01:34 0.00% (3) c/s: 6774K
5: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 6740K
SUM: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 59635K avg 7454K
Beachten Sie die Laufzeit von Prozess 0 und wie er immer noch 0 Vermutungen meldet. Beim Ausführen von john --status wird Folgendes angezeigt:
./run/john --show temp --format=raw-md5
?:asdq
1 password hash cracked, 0 left
Antwort1
Wenn Sie OpenMPI statt mpich2 verwenden, wird das SIGHUP-Signal nicht an John weitergeleitet. Stattdessen muss ein SIGUSR1 gesendet werden.