Minggu, 18 Desember 2011

MD5 PASSWORD CRACKER WITH PERL

oke sesuai dengan judul saya akan memberikan script perl yang digunakan untuk crack sebuah password yang sudah terenskripsi . khusus untuk md5.
script ini secara otomatis mencoba semua kombinasi semua huruf dan angka sesuai dengan keinginan anda . kecepatan program ini sesuai dengan tingkat kesulitan password yang ingin di crack . untuk script ini membutuhkan program perl :

untuk linux biasanya sudah tersedia di dalamnya.
karena saya pengguna linux saya akan jelaskan cara dengan menggunakan linux oke langsung saja , ikuti langkah - langkah berikut :



1. Masukkan script berikut , lalu save dengan nama md5crack.pl :

use Digest::MD5 qw(md5_hex);
print "masukkan MD5: ";
$md5=<STDIN>;
chop($md5);
print "tipe password [k/B/a/c]: ";
$type=<STDIN>;
chop($type);
print "jumlah minimal password: ";
$k=<STDIN>;
chop($k);
print "jumlah maksimal password: ";
$p=<STDIN>;
chop($p);

if ($type=~"k") {$char = "abcdefghijklmnopqrstuvwxyz";}
if ($type=~"B") {$char = $char. "ABCDEFGHIJKLMNOPQRSTUVWXYZ";}
if ($type=~"a") {$char = $char."1234567890";}
if ($type=~"c") {$char = $char. "!\"\$%&/()=?-.:\\*'-_:.;,";}

sub cari{
@tampung = ();
$shift = shift;
for ($i =0;$i<$shift;$i++){ $tampung[i] = 0;}
do{
for ($i =0;$i<$shift;$i++){
if ($tampung[$i] > length($char)-1){
if ($i==$shift-1){
print "password not found\n";
$a=0;
return false;
}
$tampung[$i+1]++;
$tampung[$i]=0;
}
}
$pass = "";
for ($i =0;$i<$shift;$i++){ $pass = $pass . substr($char,$tampung[$i],1);}
$enkripsi = md5_hex($pass);
$a++;
print "$pass -> $enkripsi -> $md5 \n";
if ($md5 eq $enkripsi){
die "\n password cracked = $pass\n";
}
$tampung[0]++;
}while($tampung[$shift-1]<length($char));
}

for ($x=$k;$x<=$p;$x++){
cari($x);
}


2. jalankan program tadi di terminal : ./md5crack.pl


keterangan :
k : huruf kecil
B : huruf besar
a : angka
c : character khusus
input ke : disitu saya masukkan 3 berarti saya mulai mengkombinasi dari huruf 'aaa'
input sampai : disitu saya masukkan 4 berarti saya mengkahiri program sampai huruf 'zzzz'

3 tekan enter , tunggu sampai selesai , proses akan berjalan sesuai dengan tingkat kesulitan password, semakin sulit semakin lama .


semoga berguna bagi anda .
best regards , hampir-lulus