Simple Expect-Programm zum Senden eines Schlüssels, wenn das Programm Text liefert

413
Sopalajo de Arrierez

Ich muss dieses Programm ausführen:

Luis@Windu /cygdrive/c/Temporal/Expect$ oclhashcat64 ../Test.hccap -m 2500 -a 3 ?d?d?d?d?d?d?d?d oclHashcat v1.31 starting...  Device #1: Bonaire, 1024MB, 1050Mhz, 12MCU Device #2: Tahiti, 3072MB, 900Mhz, 28MCU  Hashes: 1 hashes; 1 unique digests, 1 unique salts Bitmaps: 8 bits, 256 entries, 0x000000ff mask, 1024 bytes Applicable Optimizers: * Zero-Byte * Single-Hash * Single-Salt * Brute-Force Watchdog: Temperature abort trigger set to 90c Watchdog: Temperature retain trigger set to 80c Device #1: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/m02500.Bonaire_1573.4_1573.4 (VM).kernel (259320 bytes) Device #1: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/markov_le_v1.Bonaire_1573.4_1573.4 (VM).kernel (92404 bytes) Device #1: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/bzero.Bonaire_1573.4_1573.4 (VM).kernel (30496 bytes) Device #2: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/m02500.Tahiti_1573.4_1573.4 (VM).kernel (259428 bytes) Device #2: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/markov_le_v1.Tahiti_1573.4_1573.4 (VM).kernel (92388 bytes) Device #2: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/bzero.Tahiti_1573.4_1573.4 (VM).kernel (30492 bytes)  [s]tatus [p]ause [r]esume [b]ypass [q]uit => 

Wenn diese letzte Zeile angezeigt wird, benötige ich eine automatisierte Methode zum Senden des qSchlüssels. Daher erhalte ich folgende Ergebnisse :

Session.Name...: oclHashcat Status.........: Aborted Input.Mode.....: Mask (?d?d?d?d?d?d?d?d) [8] Hash.Target....: 101 (00:1f:5b:c2:fb:0c <-> 30:87:30:e0:0b:cd) Hash.Type......: WPA/WPA2 Time.Started...: Sun Nov 16 06:41:17 2014 (11 secs) Time.Estimated.: Sun Nov 16 06:54:56 2014 (13 mins, 28 secs) Speed.GPU.#1...: 26537 H/s Speed.GPU.#2...: 99510 H/s Speed.GPU.#*...: 126.0 kH/s Recovered......: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts Progress.......: 1413120/100000000 (1.41%) Skipped........: 0/1413120 (0.00%) Rejected.......: 0/1413120 (0.00%) HWMon.GPU.#1...: 0% Util, 38c Temp, N/A Fan HWMon.GPU.#2...: 98% Util, 44c Temp, 49% Fan  WARNING: Failed to restore default fan speed for gpu number: 1: Started: Sun Nov 16 06:41:17 2014 Stopped: Sun Nov 16 06:41:28 2014 

Ich versuche das zu erwarten . Dies ist der Code:

spawn oclHashcat64.exe ../Test.hccap -m 2500 -a 3 ?d?d?d?d?d?d?d?d expect "*tatus" send "q\r" close exit 

Aber es scheint nicht zu funktionieren. Das ist das Ergebnis:

Luis@Windu /cygdrive/c/Temporal/Expect $ expect.exe Prueba02.expect spawn oclHashcat64.exe ../Test.hccap -m 2500 -a 3 ?d?d?d?d?d?d?d?d oclHashcat v1.31 starting...  Device #1: Bonaire, 1024MB, 1050Mhz, 12MCU Device #2: Tahiti, 3072MB, 900Mhz, 28MCU  Hashes: 1 hashes; 1 unique digests, 1 unique salts Bitmaps: 8 bits, 256 entries, 0x000000ff mask, 1024 bytes Applicable Optimizers: * Zero-Byte * Single-Hash * Single-Salt * Brute-Force Watchdog: Temperature abort trigger set to 90c Watchdog: Temperature retain trigger set to 80c Device #1: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/m02500.Bonaire_1573.4_1573.4 (VM).kernel (259320 bytes) Device #1: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/markov_le_v1.Bonaire_1573.4_1573.4 (VM).kernel (92404 bytes) Device #1: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/bzero.Bonaire_1573.4_1573.4 (VM).kernel (30496 bytes) Device #2: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/m02500.Tahiti_1573.4_1573.4 (VM).kernel (259428 bytes) Device #2: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/markov_le_v1.Tahiti_1573.4_1573.4 (VM).kernel (92388 bytes) Device #2: Kernel D:\Programas\HashCat\OCLHashCat/kernels/4098/bzero.Tahiti_1573.4_1573.4 (VM).kernel (30492 bytes)  [s]tatus [p]ause [r]esume [b]ypass [q]uit => Luis@Windu /cygdrive/c/Temporal/Expect$ 

Wie Sie sehen, wird die erwartete Zeile angezeigt, der zweite Teil jedoch nicht, und der q wird nicht gesendet, da der Hauptprozess erhalten bleibt:

Luis@Windu /cygdrive/c/Temporal/Expect$ ps -e | grep "hashcat" -i 1180 1 1180 6976 pty0 1000 07:51:13 /cygdrive/d/Programas/HashCat/OCLHashCat/oclHashcat64 

Könnte mir jemand sagen, was ich falsch mache?

0
echo "q" | expect.exe Prueba02.expect` funktioniert nicht? Rinzwind vor 9 Jahren 0
Es funktioniert nicht, @Rinzwind. Das Programm läuft weiter im Hintergrund. Sopalajo de Arrierez vor 9 Jahren 0
brauchen Sie es q oder q ? Jacob vor 9 Jahren 0
Sollte einfach qfunktionieren. Zumindest muss ich nicht Returndirekt vorgehen, wenn ich das Programm direkt ausführen möchte . Sopalajo de Arrierez vor 9 Jahren 0
Ich kann mir eine (wirklich schmutzige) Problemumgehung vorstellen, aber: [1] Läuft das Terminal-Fenster dies als einzige? [2] Ist das Terminalfenster immer vorne? (Ich vermute nicht) Jacob vor 9 Jahren 0
Ich fürchte, die Antwort lautet nein zu beiden Fragen, @JacobVlijm. Es ist sogar möglich, dass dieses Programm in einer entfernten SSH-Konsole gestartet wird. Sopalajo de Arrierez vor 9 Jahren 0
Fügen Sie dem Expect-Skript "exp_internal 1" hinzu. Dadurch wird der ausführliche Modus aktiviert. Warnung: es ist _very_ verbose. In der ausführlichen Ausgabe finden Sie möglicherweise etwas, das erklärt, was passiert. ... ... ... Aber haben Sie auch versucht zu ändern, erwarten Sie "* tatus" `, um" tatus "zu erwarten? Es sollte keinen Unterschied machen, aber ich glaube, dass Sie das "*" nicht brauchen. G-Man vor 9 Jahren 0
@ G-Man, danke dir: http://pastebin.com/CS80x617. In der Tat gibt es viele Informationen. Ich bin nicht sehr erfahren darin, aber es scheint mir, als würde die letzte Zeile die 'q'-Taste senden. Vielleicht ist es eine Art Fehler mit "OCLHashCat". Sopalajo de Arrierez vor 9 Jahren 0
Und ja, gleiche Ergebnisse mit "tatus" anstelle von "* tatus". Sopalajo de Arrierez vor 9 Jahren 0
(1) Ich stimme zu; Es sieht so aus, als würde es das "q \ r" senden. (2) Es macht keinen Sinn, dass die ausführliche Ausgabe nach dem Empfang von "[s] tatus" zum Erliegen kommt. Ich frage mich, ob es einen Unterschied machen würde, wenn Sie sagen würden: "* tatus *>" `, um zu versuchen, es zu zwingen, bis zur Eingabeaufforderung"> "zu lesen. (3) Es kann auch hilfreich sein zu sagen: "Erwarte" * tatus *> "send" q \ r "` (alle in derselben Zeile). (4) Es sieht so aus, als würden Sie Cygwin unter Windows verwenden. Warum postest du auf Ask Ubuntu? G-Man vor 9 Jahren 0
Gleiche Ergebnisse mit `Erwarte" tatus *> `, @ G-Man. Sopalajo de Arrierez vor 9 Jahren 0
Die zweite erwartete Zeile, die Sie vorschlagen, schlägt mit der Meldung "usage: send [args] string" @ G-Man fehl Sopalajo de Arrierez vor 9 Jahren 0
Nun, OCLHashCat hat eine Version für Windows und Linux. Ich hatte vor, Linux zu installieren, aber GPU-Treiber sind etwas kompliziert, damit sie mit HashCat funktioniert (dies erfordert OpenCL, CUDA usw.). Ich habe also nur ein Windows 7 SP1. Ich hoffe jedoch, dass CygWin eine Linux-Umgebung simulieren kann. UnixStackExchange wäre meine andere Website zum Veröffentlichen gewesen, aber für einige Fragen bevorzuge ich AskUbuntu. Ich würde sagen, dass die andere Seite eher für technische Fragen geeignet ist. Sopalajo de Arrierez vor 9 Jahren 0
Hoppla; Anstelle von "erwarten" * tatus *> "send" q \ r "" meinte ich "erwartet" * tatus *> "`. G-Man vor 9 Jahren 0
Nein, @ G-Man. Ich denke, das sollte ein Problem mit OCLHashCat sein. Es ist bereit, mit Pipes `|` zu arbeiten, aber aus diesem Grund funktionieren die externen Eingänge möglicherweise nicht wie sie müssen. Ich meine: Das Programm erwartet, dass die Daten zur Verarbeitung eingehender Daten durch die Pipe fließen, nicht die Steuertasten. Sopalajo de Arrierez vor 9 Jahren 0
Neue Informationen entdeckt: https://hashcat.net/trac/ticket/535. Resume: OCLHashCat scheint mit CygWin für die Tastensteuerung nicht zu funktionieren :-(. Dies trifft jedoch nicht genau zu: Meine Tastensteuerung funktioniert in CygWin einwandfrei. Das Problem muss also eine Kombination aus CygWin und Expect sein. Sopalajo de Arrierez vor 9 Jahren 0
Nun, @ G-Man, wenn das Hauptproblem von CygWin kommt, sollten wir diesen Thread in ein anderes Forum verschieben, solange es kein Ubuntu-Problem sein könnte. Ich muss zugeben, dass ich das alles nicht in Ubuntu getestet habe, nur in CygWin. Was denkst du? Sopalajo de Arrierez vor 9 Jahren 0
In Anbetracht der Tatsache, dass Sie "exp.exe" verwenden, um "oclHashcat64.exe" zu erzeugen, scheint AU eine schlechte Passung zu sein. Sie haben es über zwei Tage gegeben; Es könnte Zeit sein, Super User auszuprobieren (oder Unix & Linux, wenn Sie es für angemessen halten). G-Man vor 9 Jahren 0

0 Antworten auf die Frage