Laila MD5 Crack Search
Publicado por rafaelmspc (última atualização em 17/07/2011)
[ Hits: 8.406 ]
Homepage: http://rafaelmspc.cc
Download lailamd5cracksearch.pl
Download lailamd5cracksearchv1.1.pl (versão 2)
Esse script pega um hash MD5 e faz uma busca em vinte um sites procurando a palavra equivalente a esse hash, inclui também a opção de encriptar alguma string para md5.
Script que usa os módulos LWP::UserAgent,HTTP::Response, Digest::MD5.
Inspirado no antigo md5crackmonster, esse script sempre foi privado, por isso nas próximas versões é que planejo dar uma arrumada no source.
Versão 2 - Enviado por rafaelmspc em 08/07/2011
Changelog: - Nova função de “mass search”, procura por vários hashs ao mesmo tempo, usando um arquivo de entrada.
- Melhorias em relação ao visual.
- Optimização do código,deixando o programa mais leve.
- Em vez de fazer a busca em 21 sites, o script agora faz a busca em apenas nos três melhores e maiores sites de hashs, levando em consideração que muitos dos outros sites apenas usam o banco de dados desses três.
- É usada a API própria de cada site.
Download lailamd5cracksearchv1.1.pl
#!/usr/bin/perl
use warnings;
use LWP::UserAgent;
use HTTP::Response;
use Digest::MD5 qw(md5_hex);
system("clear");
print "------------------------------------------\n";
print "-\tLaila MD5 Crack Search V1.0\t -\n-\t\t\t\t\t -\n";
print "- Digite: 1 - Buscar Hash\t\t -\n-\t 2 - Encryptar String\t\t -\n-\t\t\t\t\t -\n";
print "-\t\tby PapaiSmurf\t\t - \n-\t\thttp://papaismurf.net\t -\n";
print "------------------------------------------\n";
$opcao=<STDIN>;
if ($opcao == 1){
&searchhash;
}
if ($opcao == 2){
print "Digite a String a ser encryptada:\n";
$string=<STDIN>;
chomp($string);
$hashstring=md5_hex($string);
print "$hashstring\n";
}
else {
print "Opcao invalida\n";}
sub searchhash{
print "Digite o Hash para iniciar a busca:";
$hash=<STDIN>;
chomp($hash);
if (length($hash)==32)
{
print "http://www.hashchecker.com/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://www.hashchecker.com/index.php?_sls=search_hash",
{ "search_field" => "$hash",
"Submit" => "search" });
if ($resp -> content =~ / <b>(.+)<\/b> used charl/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrada\n";
}
print "http://md5crack.com/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://md5crack.com/crackmd5.php",
{ "term" => "$hash",
"crackbtn" => "Crack that hash baby!" });
if ($resp -> content =~ /Found: md5\(\"(.*)\"\) = $hash/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://passcracking.com\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://passcracking.com/index.php",
{ "datafromuser" => "$hash",
"DoIT" => "DoIT" });
if ($resp -> content =~ /<td bgcolor=#FF0000>(.*)<\/td><td>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://rom-zone.alfahosting.org\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://rom-zone.alfahosting.org/index2.php?p=hashes",
{ "typ" => "md5",
"list" => "$hash",
"Suchen / Eintragen" => "Suchen / Eintragen" });
if ($resp -> content =~ /<td>MD5<\/td><td>$hash<\/td><td>Geknackt<\/td><td>(.*)<\/td>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://md5pass.info/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://md5pass.info/",
{ "hash" => "$hash",
"get_pass" => "Get Pass" });
if ($resp -> content =~ /Password - <b>(.*)<\/b> /)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://hashcrack.com/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://hashcrack.com/index.php",
{ "hash" => "$hash",
"Submit" => "Submit" });
if ($resp -> content =~ /<span class=hervorheb2>(.*)<\/span><\/div><\/TD>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://md5decryption.com/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://md5decryption.com/",
{ "hash" => "$hash",
"submit" => "Decrypt It!" });
if ($resp -> content =~ /Decrypted Text: <\/b>(.*)<\/font><br\/>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://md5-db.de/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://md5-db.de/$hash.html");
if ($resp -> content =~ /<li>(.*)<\/li>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://md5online.net/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://md5online.net/",
{ "pass" => "$hash",
"option" => "hash2text",
"send" => "Send" });
if ($resp -> content =~ /<br>pass : <b>(.*)<\/b><\/p><\/table>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://www.netmd5crack.com\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://www.netmd5crack.com/cgi-bin/Crack.py?InputHash=$hash");
if (($resp -> content =~ /<tr><td class="border">$hash<\/td><td class="border">(.*)<\/td><\/tr><\/table>/) && ($1 =~ "Sorry, we don't have that hash in our database"))
{
print "Hash nao pode ser encontrado\n";
} else {
print "Encontrado: $1\n";
}
print "http://md5-decrypter.com/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://md5-decrypter.com/",
{ "data[Row][cripted]" => "$hash",
"Decrypt it" => "Decrypt it" });
if ($resp -> content =~ /<b class="bold">Decrypted text:<\/b>(.*)<\/p>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://cracker.fox21.at/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://cracker.fox21.at/api.php?a=check&h=$hash");
if ($resp -> content =~ /plaintext="(.*)" type="md5" /)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://hash.toolz.in/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://hash.toolz.in/api/$hash");
if (($resp -> content =~ /(.*)/) && ($1 =~ "HASH_NOT_FOUND"))
{
print "Encontrado: Hash Não encontrado\n";
} else {
print "Encontrado: $1\n";
}
print "http://isc.sans.edu/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://isc.sans.edu/tools/reversehash.html",
{ "text" => "$hash",
"submit" => "Submit" });
if (($resp -> content =~ /md5 hash $hash = (.*)<\/p>/) && ($1 =~ "Sorry, no solution found."))
{
print "Encontrado: Hash não encontrado\n";
} else {
print "Encontrado: $1\n";
}
print "http://www.stringfunction.com/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://www.stringfunction.com/md5-decrypter.html",
{ "string" => "$hash",
"submit" => "Decrypt" });
if (($resp -> content =~ /id="textarea_md5_decrypter">(.*)<\/textarea>/) && ($1 eq ""))
{
print "Hash nao pode ser encontrado\n";
} else {
print "Encontrado: $1\n";
}
print "http://md5.gromweb.com/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://md5.gromweb.com/query/$hash");
if (($resp -> content =~ /(.*)/) && ($1 eq ""))
{
print "Hash nao pode ser encontrado\n";
} else {
print "Encontrado: $1\n";
}
print "http://md5.noisette.ch/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://md5.noisette.ch/md5.php?hash=$hash");
if ($resp->is_error) {
print "site nao responde";}
if ($resp -> content =~ /<string><!\[CDATA\[(.*)]]><\/string>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://www.shell-storm.org\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://www.shell-storm.org/md5/index.php",
{ "summd5" => "$hash",
"Submit" => "Decrypt" });
if (($resp -> content =~ /\[\+]Password => (.*)<\/br> \[\+]Checksum/) && ($1 eq ""))
{
print "Hash nao pode ser encontrado\n";
} else {
print "Encontrado: $1\n";
}
print "http://md5.hashcracking.com\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://md5.hashcracking.com/search.php?md5=$hash");
if ($resp -> content =~ /Cleartext of $hash is (.*)/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
print "http://www.md5.net/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->post("http://www.md5.net/cracker.php",
{ "hash" => "$hash",
"Crack" => "Crack" });
if (($resp -> content =~ /input type="text" id="hash" size="32" value="(.*)"\/>/) && ($1 =~ "Entry not found."))
{
print "Hash nao pode ser encontrado\n";
} else {
print "Encontrado: $1\n";
}
print "http://xanadrel.99k.org/\t";
$ua = LWP::UserAgent->new();
$ua->timeout( 60 );
$resp = $ua->get("http://xanadrel.99k.org/hashes/api.php?hash=$hash");
if ($resp -> content =~ /<plain>(.*)<\/plain>/)
{
print "Encontrado: $1\n";
} else {
print "Hash nao pode ser encontrado\n";
}
exit;
}
else {
print "Isso não me parece um Hash md5, tente novamente.\n";
&searchhash;
}
}
Script para encontrar vulnerabilidades no BIND
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Como programar um sistema de controle para distribuições linux em c? (0)
Compartilhar ZEBRA ZD220 na rede (2)
Como programar um software que seja utilizado para coleta de dados em ... (1)









