http://www.nullbytes.net/multicracker-md5-01/
Dentro del Marco del Hacking, muchas veces nos encontramos con hash en md5 que deseamos descifrar, y vamos a las Web mas conocidas en busca si existe en sus bases de datos la contraseña en cuestión.
Y como siempre es bueno ahorrar tiempo, desarrolle una tool que busca en las 6 Web que mejor resultados me dieron.
http://www.hashfind.info
http://md5decrypter.com
http://gdataonline.com
http://md5.hashcracking.com
http://milw0rm.com
http://md5search.org
Código
use LWP::UserAgent; use HTTP::Request::Common; use HTTP::Cookies; # By OzX NULLBYTES.net ### BASE DE LAS PETICIONES ############################################################################################## $browser = LWP::UserAgent->new(); $browser->timeout(10); $browser->default_header( "User-Agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1", "Accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language" => "es-es,es;q=0.8,en-us;q=0.5,en;q=0.3", "Referer" => "http://www.google.com" ); #################################################################FUNCION GET Y POST sub POSTS{@code = split("\n",$content = $browser->request(POST $_[0], [%{$_[1]}])->content);return @code}; ############################################################################### $hash = $ARGV[0]; unless ($ARGV[0]) { } ######################################################## %webs = ('0' => "http://md5decrypter.com", '1' => "http://gdataonline.com", '2' => "http://md5.hashcracking.com", '3' => "http://milw0rm.com", '4' => "http://md5search.org",); ###PETICIONES #################################### if ($hash =~/\w{32}/){ hashfind($hash); for($i=0;$i<5;$i++){ if( $pid == 0 ){ } } }else{ exit; } ################################################# #LA WEB http://www.hashfind.info TIENE UN SISTEMA BASADO EN COOKIES PARA MOSTRAR EL HASH , #ES POR ELLO QUE NO PUDE IMPLEMENTARLO DENTRO DE LAS OTRAS FUNCIONES # TAMBIEN TAMPOCO PUDE IMPLEMENTARLO DENTRO DEL FORK. sub hashfind{ $hash = $_[0]; ### COOKIE PARA http://www.hashfind.info <= ¬¬ $browser->cookie_jar(HTTP::Cookies->new(file => "cookie_hash.txt", autosave => 1)); @code = POSTS("http://www.hashfind.info/",{hash => $hash, button => Search}); @codex = GETS("http://www.hashfind.info/get.php?type=0 "); } sub md5{ $id=$_[0]; $cracker[0]= crack_post($webs{$id},{hash => $hash, submit => Decrypt%21 },$hash,'.*Normal.*<\/b>','.*this hash wasn.*') ; $cracker[1]= crack_get($webs{$id}."/qkhash.php?mode=txt&hash=",$hash,'.*><b>','<\/b><.*','.*\?',"<\/td><\/tr>"); $cracker[2]= crack_get($webs{$id}."/search.php?md5=",$hash,".*is "); $cracker[3]= crack_post($webs{$id}."/cracker/search.php",{hash => $hash, Submit => Submit },$hash,"<\/TD><TD align=\"middle\" nowrap=\"nowrap\" width=90>cracked.*",".*<TR class=\"submit\">.*nowrap=\"nowrap\" width=90>"); $cracker[4]= crack_post($webs{$id}."/index.php",{hash => $hash , server => all ,token => md5s , tryb => search, submit =>MD5Search%28%29},"<font.*size=\"-1\">.*nbsp",".*class=\"wyniksz\">","<\/font><\/td><\/tr><\/table><\/td><\/tr><\/table>.*p>","<\/font><\/td><\/tr>"); } sub crack_post{ ($url,$data,$match,@reg1) = @_; @code = POSTS($url,$data); for $linea (@code){ if ($linea=~/$match/i){ for $reg (@reg1){ } } } } sub crack_get{ ($url,$hash,@reg1) = @_; @code = GETS($url.$hash); for $linea (@code){ if ($linea=~/$hash/i){ for $reg (@reg1){ } } } }
Ideas Sugerencias Bienvenidas
www.nullbytes.net¡
http://www.nullbytes.net/multicracker-md5-01/