Yes, I like piping. I also like to play with old hardware. The process was as it follows. Generate wordlists with your favourite tool. I like to go with with crunch or maskprocessor in this case. Pipe the words to the pyrit client which is connected to the pyrit servers and also pipe the stuff through John the Ripper to make a session and to be able to restore it if the cracking takes a long time or crashes for some reason :).

What was done:
  1. Make a cluster of computers. Google for it, no time to explain (basic LAN is just fine). Install Kali Linux or almost any linux distro (Xubuntu is good enough if just running a pyrit serve -mode) to the machines.

  2. Install the display adapter drivers according to the model of the GPU. For NVIDIA install CUDA and/or OpenCL. For ATI cards I think they have their own way :) Got to look in to that if there is a need.

  3. Install pyrit, crunch and John the Ripper. Should be installed by default on Kali.

  4. Setup and run your pyrit server(s):
    • Edit /.pyrit/config to contain the IP of the server (the config file's CPU) and change rpc_server = false to rpc_server = true
    • run ./pyrit serve on all the server computers to run.

  5. Setup your pyrit client(s)
    • Edit /.pyrit/config to contain all the IP addresses of the used servers (remote computers runnin pyrit as server).

  6. Now let's run our client with Piping! Let's pipe all the command to save space:
    • ./crunch 8 8 aeiouy0123456789 | john --stdin -session=<SESSION NAME> --stdout | pyrit -r <CAPTURE FILE NAME>.cap -b <BSSID OF THE TARGET> -i - attack_passthrough
    • Now just wait...
    • You could replace crunch with maskprocessor (or your favourite word generator, plenty of them) if you like to speed up to process by using masks:
      • ./mp64 -1 aeiouy0123456789 ?1?1?1?1?1?1?1?1 --increment=8:8 or ./mp64 -1 aeiouy?d ?1?1?1?1?1?1?1?1 --increment=8:8 for the same wordspace as crunch in our example; vowels from a to y (aieouy) and integers from 0 to 9 (01234556789).
      • More about masks:

  7. Profit? Yes, as the clustering makes the process much faster. Just remember that you get a new bottleneck (in addition to GPU and CPU) now; the data transfer speed through the wires or wireless + your routers and such.