* Detect handshakes instead of relying on cracked.txt
* cracked.txt doesn't store non-cracked handshakes!
* Sort handshakes by capture date
* Use cap2hccapx.bin found in /usr/lib/hashcat-utils
* Link to tool if it's not found.
* Include BSSID in --crack commands if relevant
Apparently Airodump is capturing the SIGINT on some Ctrl+C presses.
Wifite will print out that airodump crashed w/ the return code & command executed.
Wifite will not change the list of targets if airodump crashes (to avoid wps:n/a).
Explanation of bug (Why error wasn't being caught):
```
try:
...
except IndexError, ValueError:
# Only catches IndexError.
# ValueError is a *variable* holding the IndexError !
```
It is good practice to use the "with" keyword when dealing with file objects. This has the advantage that the file is properly closed after its suite finishes, even if an exception is raised on the way. It is also much shorter than writing equivalent try-finally blocks
Detailed WPS output.
TODO:
* Actually test that cracked PINs are detected & saved, pending #28
* Command-line options to specify max lockout/timeout/noassoc/failure
For #27
* Shows status of chopchop and arpreplay attacks.
* Fakeauth runs continously in the background, reassociating every 30 sec
* Detects fakeauth success/failure, shows in attack status line.
1. Timer module for timing things. Should've done this a while ago.
2. WPA handshake attack outputs # of clients, lists all clients, has countdown
3. WPA Handshake Attack deauths all clients at the same time.
4. Fixed bug where WPA handshake attack never timed out. Fixes#23
5. WPA Cracking via aircrack-ng shows percentage & ETA.
6. Mild refactoring / cleanup of AttackWPA module.
Aireplay can optionally NOT store the process output (via `devnull=False`).
By-default, Aireplay attacks will not capture aireplay-ng output, to
avoid deadlock when overloading the OS buffer (see #21).