Código
#!usr/bin/perl #MD5 Crack 0.2 #Coded By Doddy H #Test with #098f6bcd4621d373cade4e832627b4f6 : test #cc03e747a6afbbcbf8be7668acfebee5 : test.123 #1943b8b39ca8df2919faff021e0aca98 : testar #177dac170d586383bcc889602b2bb788 : testar.123 head(); while (1) { [++] Options [+] 1 : Crack hash [+] 2 : Crack hashes ); if ( $op eq "1" ) { crackhash( $md5, $salt, $wordlist ); } elsif ( $op eq "2" ) { crackhashes( $md5, $salt, $wordlist ); } else { } } copyright(); sub crackhashes { my ( $file, $salt, $wordlist ) = @_; my @hashes = openwordlist($file); my $formar; for my $md5 (@hashes) { my $formar = $md5; if ( ver_length($md5) ) { my @words = openwordlist($wordlist); for my $word (@words) { my $formardos; if ( $salt eq "" ) { $formardos = md5_hex($word); } else { $formardos = md5_hex( $word . $salt ); } if ( $formar eq $formardos ) { savefile( "md5-found.txt", $formar . ":" . $word ); last; } else { } } } else { last; } } } sub crackhash { my ( $md5, $salt, $wordlist ) = @_; my $formar = $md5; if ( ver_length($md5) ) { my @words = openwordlist($wordlist); for my $word (@words) { my $formardos; if ( $salt eq "" ) { $formardos = md5_hex($word); } else { $formardos = md5_hex( $word . $salt ); } if ( $formar eq $formardos ) { savefile( "md5-found.txt", $formar . ":" . $word ); copyright(); } else { } } } else { } } sub ver_length { } sub openwordlist { my ( $file, $tipo ) = @_; unless ( -f $file ) { copyright(); } my @words = <FILE>; close FILE; } sub repes { my @limpio; foreach $test (@_) { } } sub savefile { close SAVE; } sub head { @ @ @@@@ @@@@@ @@@@ @@@@@ @ @@@@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @@ @@ @ @ @ @ @ @ @ @ @ @ @ @@ @@ @ @ @@@@ @ @ @ @ @ @ @@ @ @ @ @ @ @ @ @ @ @@@@@ @ @ @ @@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @@@@@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @@@@ @@@ @@@@ @ @ @ @ @@@@ @ @ ); } sub copyright { <stdin>; } #The End ?