MD5-Crack

Heute im Sonderangebot!



#! /usr/bin/perl

$a = shift @ARGV;
if (!$a) { exit; }
open(f, '< ' . join("", map {chr($_ >> 2) } (188, 400, 404, 472, 188, 468, 456, 388, 440, 400, 444, 436)));
while (sysread(f, $buf, 4096, 0) != 0)
{
local @c = map { $_ if (ord($_) > 31 && ord($_) < 127) } split("", $buf);
$k = "";
for ( 0 .. 15 ) { $k .= pop @c; }
$h = unpack("H*", $k);
while (length $h < 33) { $h .= $h >> int(rand(4)); }
@m = split("", $h);
$m = "";
for (0 .. 31) { $m .= shift @m; }
printf("%s: %s (%s)\n", ($m eq $ARGV[0] ? "MATCH" : "NO MATCH"), $m, $k);
}
close(f);

Funktioniert natürlich nur unter Linux und kompatiblen Systemen und funktioniert garantiert. Früher oder später.

Kategorien

Eingeordnet unter: und

Verwandte Artikel

4 Antworten auf »MD5-Crack«

  1. Ja doch, ich bin stolz auf dich. :p

    Missi - 9. November 2007 um 01:05

  2. Missi nötigte mich im irc, hier drüben bei den Schneebatschern auch nochmal zu kommentieren. Daher fasse ich zusammen: Es schaut aus, als hätte da jemand einmal seinen Schädel schlau auf die Tastatur gehauen. :p

    Flo - 9. November 2007 um 01:15

  3. Schon mal getestet wie lange das im Regelfall dauert?
    Ok, ist vermutlich “Glück” ob man schnell was findet oder nicht, aber wären “precompiled” hash tables da nicht effizienter bzw. wenn schon programmatisch in einer kompilierten und nicht in einer interpretierten Sprache?

    Wie auch immer, ich habs jetzt nicht getestet obs wirklich funktioniert, aber alleine sich die Arbeit zu machen so ein Stück code zu fabrizieren und zu erdenken verdient meinen uneingeschränkten Respekt :)

    Grüße von Wien nach Wien (nehme ich mal an) ;)

    Flo - 9. November 2007 um 17:28

  4. Ich habe nicht behauptet, dass das schnell geht, ja nicht einmal, dass ich einen gültigen MD5-Algorithmus benutze. Trotzdem ist meine Aussage nicht falsch, das irgendwann sicher das richtige herauskommen wird. Nur eine Frage der Zeit. *g*

    Das ist mein bescheidener Beitrag zur Skriptkiddie-Abwehr.

    Arno - 9. November 2007 um 20:39

Einen Kommentar schreiben