Código
Ejemplo de uso
#!usr/bin/perl #Pass Cracker 1.0 #(C) Doddy Hackman 2011 use LWP::UserAgent; my $nave = LWP::UserAgent->new; $nave->agent("Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12"); $nave->timeout(5); head(); unless($ARGV[0]) { } else { crackit($ARGV[0]); } copyright(); sub crackit { my %hash = ( 'http://passcracking.com/' => { 'tipo' => 'post', 'variables'=>'{"datafromuser" => $_[0], "submit" => "DoIT"}', 'regex'=>'<\/td><td>md5 Database<\/td><td>$_[0]<\/td><td bgcolor=#FF0000>(.*)<\/td><td>', }, 'http://md5.hashcracking.com/search.php?md5=' => { 'tipo' => 'get', 'regex' => 'Cleartext of $_[0] is (.*)', }, 'http://www.bigtrapeze.com/md5/' => { 'tipo' => 'post', 'variables'=>'{"query" => $_[0], "submit" => " Crack "}', 'regex' => 'The hash <strong>$_[0]<\/strong> has been deciphered to: <strong>(.+)<\/strong>', }, 'http://opencrack.hashkiller.com/' => { 'tipo' => 'post', 'variables'=>'{"oc_check_md5" => $_[0], "submit" => "Search MD5"}', }, 'http://www.hashchecker.com/index.php?_sls=search_hash' => { 'tipo' => 'post', 'variables'=>'{"search_field" => $_[0], "Submit" => "search"}', 'regex' => '<td><li>Your md5 hash is :<br><li>$_[0] is <b>(.*)<\/b> used charl', }, 'http://victorov.su/md5/?md5e=&md5d=' => { 'tipo' => 'get', } ); for my $data(keys %hash) { if ($hash{$data}{tipo} eq "get") { $code = toma($data.$_[0]); if ($code=~/$hash{$data}{regex}/ig) { print "\n[+] Decoded : ".$1."\n\n"; } } else { $code = tomar($data,$hash{$data}{variables}); if ($code=~/$hash{$data}{regex}/ig) { print "\n[+] Decoded : ".$1."\n\n"; } } } print "\n[+] Finish\n"; } sub head { print "\n\n-- == Pass Cracker == --\n\n"; } sub copyright { print "\n\n(C) Doddy Hackman 2011\n\n"; exit(1); } sub toma { return $nave->get($_[0])->content; } sub tomar { my ($web,$var) = @_; return $nave->post($web,[%{$var}])->content; } #Thanks to explorer (PerlEnEspañol) # ¿ The End ?
Código:
perl crack.pl <hash>