md5-bruteforcer

Gesponsorde koppelingen

PHP script bestanden

  1. md5-bruteforcer

« Lees de omschrijving en reacties

#!/opt/lampp/bin/php //geef hier het pad aan van je php executable

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<?php
set_time_limit(0);  //geef aan hoe lang mag het script draaien.
switch (strtolower($argv[3]))  //of $_SERVER['argv'].
{
    case
'md5':
        echo " *** Gebruikt MD5 als variant\r\n";
        $encrypt = create_function('$hash', 'return md5($hash);');
        break;
    case
'md5_salt':
        echo " *** Gebruikt salted MD5 als variant\r\n";
        $encrypt = create_function('$hash', 'return md5(md5($hash).$hash);');
        break;
    case
'sha1':
        echo " *** Gebruikt SHA1 als variant\r\n";
        $encrypt = create_function('$hash', 'return sha1($hash);');
        break;
    case
'sha1_salt':
        echo " *** Gebruikt salted SHA1 als variant\r\n";
        $encrypt = create_function('$hash', 'return sha1(sha1($hash).$hash);');
        break;
    case
'des':
        echo " *** Gebruikt DES als variant\r\n";
        $encrypt = create_function('$hash', 'return crypt($hash);');
        break;
    case
'cleartext':
        echo " *** Gebruikt cleartext als variant\r\n";
        $encrypt = create_function('$hash', 'return ($hash);');
        break;
    default:

        echo "'{$argv[3]}' is een niet ondersteunende methode Voor uitleg roep het script aan door. \r\n\r\n";
        echo "\t{$argv[0]} --help"; /*Geen uitleg toegevoegd over het gebruik ervan*/
        exit;
}


if(isset($argv[4]))
$charset=$argv[4];
else $charset = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$charset_beginning = $charset{0};
$charset_end = $charset{strlen($charset)-1};

$HASH = $argv[1];
$SIZE = (int) $argv[2];
$start = time()-1;
$curtotal=0;
$total=0;
for($i=$SIZE; $i>0; $i--) $total+=pow(strlen($charset), $i);
$split=ceil(($total/strlen($charset))/5);


echo " *** Maxumum grootte: $SIZE, kraakt de hash: $HASH\r\n";
echo " *** Totale keys: $total\r\n";
echo " *** Characterset: $charset\r\n";

for($i=1; $i<=$SIZE; $i++)
{

    $keyspace = pow(strlen($charset), $i);
    echo "\r\nProbeert met $i charakters te kraken.\r\n";
    echo " *** Totale combinaties: $keyspace\r\n";
 
    
     $key = '';
    for ($v=0; $v<$i; $v++) $key .= $charset_beginning;

    for ($f=0; $f<$keyspace+1; $f++) {
        $curtotal++;

        if ($HASH==$encrypt($key)) {
            $time=(time()-$start);
            echo<<<END

Succesvol gekraakt na $time seconden.


Heeft de leesbare text van de '$HASH' gevonden welke '$key' is\r\n.
END
;
            exit;
        }


        if($f%$split == 0) {
            $rate=ceil($curtotal/(time()-$start));
            echo " ... $curtotal/$total ($key) [$rate Keys/second]\r\n";
        }


        for ($v=0; $v<$i; $v++) {
            if ($key[$v] != $charset_end) {
                $key[$v] = $charset{strpos($charset, $key[$v])+1};

                if ($v > 0)  for ($a = 0; $a < $v; $a++) $key[$a] = $charset_beginning;
                break;
            }
        }
    }
}

$time=time()-$start;
echo<<<END
*** Geen overeenkomsten gevonden
Dit kan veroorzaakt zijn door de ($SIZE) dat kort kan zijn..
  Is $time seconden bezig geweest. We hebben in totaal $total combinaties gezocht.
END
;
?>

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.