Seite 1 von 2

md5 decode

Verfasst: Samstag 9. Juni 2007, 18:40
von cyp++
Hallo,

ich habe die Suche benutzt zum Thema md5-DECODING aber nichts gefunden! Also schildere ich mal mein Problem. Ich habe aus der Registry mein ICQ-Passwort ausgelesen, das ist vermutlich ein MD5-Hash. Das Problem ist jetzt, wie ich daraus wieder etwas lesbares machen kann, wie ich es also decoden kann. Wisst ihr da was? Habe schon in der Hilfe geguckt, aber da schien mir nichts interessantes bei.

Lg

Re: md5 decode

Verfasst: Samstag 9. Juni 2007, 18:48
von gerold
cyp++ hat geschrieben:Das Problem ist jetzt, wie ich daraus wieder etwas lesbares machen kann
Hallo cyp++!

Kurze Antwort: Das geht nicht.

mfg
Gerold
:-)

Verfasst: Samstag 9. Juni 2007, 18:48
von cyp++
Wie? man kann es nicht decoden???

Verfasst: Samstag 9. Juni 2007, 18:49
von birkenfeld
MD5 ist eine Einweg-Hashfunktion, keine Verschlüsselungsfunktion.
Sprich: genau der Rückschluss von Hash auf Originaltext ist nicht erwünscht...

Wie genau sieht denn der String aus, den du aus der Registry ausliest?

Verfasst: Samstag 9. Juni 2007, 18:50
von cyp++
cdd42c2d32d7a88da0b0b5d5fe7de8de

Verfasst: Samstag 9. Juni 2007, 18:50
von jens
Das geht Prinzipbedingt nicht. Ein MD5 Wert ist nur ein Hash Wert. Ein Fingerabdruck des Ursprünglichen Inhaltes. Es stecken nicht alle Informationen in einem Hash um die Ursprungsdaten "wiederherzustellen"...

Siehe auch http://de.wikipedia.org/wiki/Md5

Es gibt allerdings ein paar "Angriff"-Methoden. Schau dir dazu mal den Abschnitt "Sicherheitsüberlegungen" an...

Interessant ist allerdings wie nun bei ICQ eingeloggt wird. Wird da evtl. der blanke MD5-Hashwert übertragen???

Verfasst: Samstag 9. Juni 2007, 18:59
von cyp++
Mal so nebenbei. Ich hatte mal ein kleines Tool, welches das ICQ-Passwort ausgelesen hat und auf einem FTP gespeichert hat, bloß halt.. decodiert.. ! :shock:

Verfasst: Samstag 9. Juni 2007, 19:05
von birkenfeld
Tja, vielleicht funktionierte das bei früheren Versionen. Vielleicht ist das, was in der Registry steht, ja auch gar kein MD5-Hash.

Eine kurze Google-Suche fördert jedenfalls nur, wie man das von Windows-Massen-Software gewohnt ist, kostenpflichtige Wunderprogramme, sinnlose Forenposts und massenweise Spam zutage.

*seufz* Tut mir leid, aber zu mehr hab ich jetzt keine Lust mehr.

Verfasst: Samstag 9. Juni 2007, 21:37
von mitsuhiko
OT: Warum sollte ein Passwort als Hash gespeichert sein?

Verfasst: Sonntag 10. Juni 2007, 10:12
von Leonidas
blackbird hat geschrieben:OT: Warum sollte ein Passwort als Hash gespeichert sein?
Vielleicht wird das so zum Server übertragen? Aber ich finde das ohne Salt auch recht suspekt. Aber gut, ICQ wird ja sowieso unverschlüsselt übertragen, was will man da auch erwarten.

Verfasst: Sonntag 10. Juni 2007, 11:12
von Sr4l
Man kann höchstwahrscheinliche Werte für einen kurzen Md5 Hash zurück errechnen mehr aber auch nicht.

Ich denke nicht das ICQ einen reinen md5 hash nimmt das wäre ein wenig zu unsicher. Aber du kannst ja mal versuchen in dem du
PW änderst
zu dem PW den md5 code errechen lässt
und dann mit dem Wert in der regedit vergleichst

Verfasst: Sonntag 10. Juni 2007, 12:19
von pythonist
ICQ hat glaub ne Zeit lang sogar die PWs im Klartext übertragen.

Verfasst: Sonntag 10. Juni 2007, 12:48
von mq
Sr4l hat geschrieben:Man kann höchstwahrscheinliche Werte für einen kurzen Md5 Hash zurück errechnen mehr aber auch nicht.
Sowas wie kurze MD5-Hashes gibt es nicht, ein MD5-Hash ist immer 128 Bit lang. Und zurueckrechnen kann man da nichts, das ist ja das Wesen solcher Algorithmen. Alles, was du machen kannst, ist Bruteforcen oder in vorhandenen Tabellen mit MD5-Hashes und entsprechenden Strings nachgucken.

Verfasst: Sonntag 10. Juni 2007, 12:56
von veers
lumax hat geschrieben:
Sr4l hat geschrieben:Man kann höchstwahrscheinliche Werte für einen kurzen Md5 Hash zurück errechnen mehr aber auch nicht.
Sowas wie kurze MD5-Hashes gibt es nicht, ein MD5-Hash ist immer 128 Bit lang. Und zurueckrechnen kann man da nichts, das ist ja das Wesen solcher Algorithmen. Alles, was du machen kannst, ist Bruteforcen oder in vorhandenen Tabellen mit MD5-Hashes und entsprechenden Strings nachgucken.
Naja im Falle von MD5 gibt es da ja noch weitere Attacken.

Verfasst: Sonntag 10. Juni 2007, 13:03
von mq
veers hat geschrieben:Naja im Falle von MD5 gibt es da ja noch weitere Attacken.
z.B.? Okay, es gibt natuerlich Erweiterungen der Konzepte, die ich gepostet habe, aber sonst? So Sachen wie Kollisionen z.B. helfen dir ja nicht weiter, wenn du einen Hash knacken willst.

Verfasst: Sonntag 10. Juni 2007, 13:17
von mitsuhiko
Leonidas hat geschrieben:
blackbird hat geschrieben:OT: Warum sollte ein Passwort als Hash gespeichert sein?
Vielleicht wird das so zum Server übertragen? Aber ich finde das ohne Salt auch recht suspekt. Aber gut, ICQ wird ja sowieso unverschlüsselt übertragen, was will man da auch erwarten.
Jo. Weil wenn einfach nur der Hash übertragen wird brauchst du da ja gar nix zurückrechnen, einfach den Hash klauen.

Verfasst: Sonntag 10. Juni 2007, 13:23
von Costi
waere das der richtige ansatz um ein md5 hash zu knacken?:
(achtung, "quick and dirty")

Code: Alles auswählen

from hashlib import md5

def getMD5(stri):
    m = md5()
    m.update(stri)
    return m.digest()

abc = '$abcdefghijklmnopqrstuvwxyz_1234567890'

def abc_iter():
    for i0 in abc: 
        for i1 in abc: 
            for i2 in abc: 
                for i3 in abc: 
                    for i4 in abc:
                        yield i0+i1+i2+i3+i4.replace('$', '')

for i in abc_iter():
    if getMD5(i) == '\xcd\xd4\x2c\x2d\x32\xd7\xa8\x8d\xa0\xb0\xb5\xd5\xfe\x7d\xe8\xde':
        print i

Verfasst: Sonntag 10. Juni 2007, 13:34
von cyp++

Code: Alles auswählen

import md5

for i in range(len(md5.new("XXXXXXXX").digest())):
	print ord(md5.new("XXXXXXXX").digest()[i])
>>>28
>>>110
>>>72
>>>132
>>>73
>>>227
>>>116
>>>26
>>>153
>>>147
>>>136
>>>247
>>>189
>>>125
>>>7
>>>174

Verfasst: Sonntag 10. Juni 2007, 13:35
von birkenfeld
@cyp++: was soll uns das jetzt sagen?

Verfasst: Sonntag 10. Juni 2007, 13:39
von cyp++
ich habe geguckt was rauskommt wenn ich es selbst verschlüssel.. dabei kommt leider nicht das raus, was in der Registry steht, evtl. könnte man md5 jetzt ausschließen?