#!/usr/bin/perl #The Donz writes this c0de coz has nothin' to do # #Example "oscommerce hash" used by this script. # d9c7076ae0c621b70386f3c3c595aaa2:55:gabecke@wcnoc.com # 69a55a3999216a38b63f297e81a8fd53:fa:cfo@cantrellcenter.com # 0af57b5bda3afaa5df8eca54bba5fdcb:a7:lmmcguire@hotmail.com # #Example how to use. # perl this.pl hash.txt /usr/share/dict/words # use Digest::MD5 qw(md5_hex); my (@hashlist,@plaintext); my ($i,$j); my $combine; my @got; if(!$ARGV[0]) { print "usage :\t $0 \n"; exit; } open(LOG, ">>crack.log"); open(HASH,"<$ARGV[0]"); chop(@hashlist=); for($i=0;$i<=$#hashlist;$i++){ @got=split(/:/,$hashlist[$i]); open(PLAIN,"<$ARGV[1]"); chop(@plaintext=); for($j=0;$j<=$#plaintext;$j++){ $combine = $got[1] . $plaintext[$j]; if(md5_hex($combine) eq $got[0]) { print "Found " . $got[0].":".$got[1] . " / " . $plaintext[$j] . " / " . $got[2] . "\n"; print LOG "Found " . $got[0].":".$got[1] . " / " . $plaintext[$j] . " / " . $got[2] . "\n"; } } close(PLAIN); } # TODO : add threading to make cracking process faster