pvm brute force password cracker

this is a parallel brute force password cracker implemented in perl
the password cracker has not been optimized for speed rather than for testing purposes.


  • pvm
  • perl and Parallel::Pvm


--- pwcrack-0.3.tar.gz ---


the following steps are a quickstart on how to set up a pvm environment
  1. setting up the pvm environment...
    add the following lines to your bashrc with the appropriate paths
    export PVM_ROOT=/usr/local/pvm3
    export PVM_RSH=/usr/bin/ssh
    export PVM_ARCH=`/usr/bin/pvmgetarch`
    if you're using other non bash-compatible shells like tcsh these environment variables these variables must be set using different commands like set instead of export.
  2. set up the ssh-agent.
  3. installing...
    pvm programs consists of at least two parts, slave programs doing the real work and a master program as a starting point and process management, which spawns all the slave programs. now copy the master program to your local pvm directory - by default ~/pvm3/bin/${PVM_ARCH}/ - and the slave programs to all your machines into the same directory.
  4. starting the pvm console...
    just type pvm, or better pvm hosts, where hosts is a pvm hosts file consisting of names/ips of pvm machines in each line.
    after starting the pvm console check if all machines are connected: pvm> conf
    new hosts can be added with add some.host.name
    any password check at this point should be avoided by the ssh-agent.
  5. testing...
    to spawn a new master process, e.g. the pwcrack perl script, type spawn -> pwcrack.pl 5 HlY4sPZiOwqRw
    the -> redirects all output to the current standard output.
    in the very rare case of a "file not found" or similar errors you should check for typos or add the local pvm path to your PATH environment variable in .bashrc or have a look at the sample hosts file below.
  6. monitoring...
    one of the easiest way of monitoring pvm processes is by using xpvm. this should, however, be started before the spawn.

example host file
* dx=$PVM_ROOT/lib/pvmd ep=$HOME/pvm3/bin/$PVM_ARCH

further reading
  • pvm3
  • man pvmd3
  • man pvm

ssh setup (trivial ssh authorized key configuration)

tiny howto for setting up ssh with an ssh agent (with openssh)

  1. create a ssh key pair - preferrably a ssh2 ssh key...
    ssh-keygen -t dsa
  2. add the public part of your ssh key - id_dsa.pub - to the authorized keys file - ~/.ssh/authorized_keys - of all machines you need access to
  3. start the ssh agent...
    ssh-agent bash or ssh-agent screen
  4. add the key...
    ssh-add ~/.ssh/id_dsa or just ssh-add

more information