
05.01.2006, 17:15
|
|
Участник форума
Регистрация: 17.12.2005
Сообщений: 121
Провел на форуме: 551495
Репутация:
227
|
|
Вот мой вариант... попроще будет ( может и немного быстрее поэтому ), да и ему можно файл с хэшами:солью скормить...
PHP код:
# This is a very simple perl brutforcer for IPb MD5 hashes,
# coded with md5_hex(md5_hex($salt).md5_hex($pass)) algorithm.
# For usage you need a dictionary file and file with hashes (:-))
# Hashes have to be in this form: "username:hash:salt"
# Good Luck!
#
#
# (c)DetMyl 04.01.2006, Detmyl@bk.ru
if (@ARGV < 2)
{
print q(
+++++++++++++++++++++++++++++++++++++++++++++++++++
Usage: perl vB_hash.pl [dictionary file] [username:hash:salt file]
I.e. : perl vB_hash.pl someBigDitionary.dic spizhzhenyeHashy.md5
+++++++++++++++++++++++++++++++++++++++++++++++++++
);
exit;
}
use Digest::MD5 'md5_hex';
$dictfile = $ARGV[0];
$hashSaltFile = ($ARGV[1] ne '') ? $ARGV[1] : $ARGV[0];
open (HASHFILE, $hashSaltFile) || die "couldn't open the file $hashSaltFile";
while ($hashes = <HASHFILE>) {
($user,$hash,$salt) = split(/:/, $hashes);
$salt =~ s/\n//;
if ( $hash eq md5_hex( md5_hex($salt).md5_hex($user) ) ) { print "FOUND!!! user: ".$user." pass:".$user."\n";next} #check with username
open (DICTFILE, $dictfile) || die "couldn't open the file $dictfile";
while ($words = <DICTFILE>) {
$words =~ s/\n//;
if ( $hash eq md5_hex( md5_hex($salt).md5_hex($words) ) ) { print "FOUND!!! user: ".$user." pass:".$words."\n"; last;}
}
close(DICTFILE);
}
close(HASHFILE);
|
|
|