Shellsec

Fuld version: Hjaelp til md5x2 hashes
Du ser lige nu en skrabet udgave af vores indhold. Se den fulde version med ordentlig formatering.
Sider: 1 2
Kan nogle hjaelpe med det her? De er krypteret som md5(md5($pw))
Kode:
36448d317ab6b765481650acc7f71ae9
9df501a9954d66a201018800c098d1d1
24657ebdc1de449df5321d4ac3da080a
cac5190a539f2ccb1cd1decf2501cc1e
Der tror jeg desværre, du skal være mere end almindeligt heldig, hvis nogen kan slå en løsning op til dig.

Den eneste måde at gøre det på er at gennemgå hele processen med alle mulige værdier for $pw, og hvis det password er ret meget større end 7 tegn, så kommer det til at tage en evighed - selv med antal grafikkort > 2.

Skal man prøve at gå processen gennem baglæns, altså finde den hash-værdi, der giver én af de 4 angivne (eks.: md5(hash) == 36448d317ab6b765481650acc7f71ae9 ), så skal man alle kombinationer af hexstrenge gennem, hvilket er 16^32 = pænt højt!.

Så den går matematisk ikke (hvilket også er meningen).

Hvis du ved, at de hashede passwords er inden for 7 (eller højst 8), så har jeg skrevet noget kode, der kan hjælpe dig med at finde det i løbet af en overskuelig fremtid
Nu er det jo ogsaa muligt at lave et dictionary attack i stedet for at bruteforce. Det er klart, at det ikke er garanteret at faa fat i passwordet, men at bruteforce er ikke rigtig en mulighed.

Jeg mangler ikke kode eller programmer til det, jeg mangler computerkraft.
Ja, men dictionary attack'et antager, at folk allerede har forsøgt sig med hex-strenge på 32 karakterer, fordi man i så fald skal gå baglæns.

Med mindre, du får fat i et kæmpe dictionary, og så laver md5 på samtlige af deres hash-værdier.
Det er måske i virkeligheden vejen frem.
Man kunne eventuelt også bare lave et dictionary attack hvor man hasher hvert enkelt ord med den hashfunktion du beskriver, altså md5(md5(pass)) i stedet for at hashe alle hashværdier 1 gang.
(23-07-2013, 21:01)Doctor Blue Skrev: [ -> ]Man kunne eventuelt også bare lave et dictionary attack hvor man hasher hvert enkelt ord med den hashfunktion du beskriver, altså md5(md5(pass)) i stedet for at hashe alle hashværdier 1 gang.

Hvordan adskiller det sig fra mit forslag? Altså, hvad er din tanke?
Hvordan ville det være bedre?
(Det er et seriøst spørgsmål - no disrespect)
(23-07-2013, 20:46)PhasmaX Skrev: [ -> ]Ja, men dictionary attack'et antager, at folk allerede har forsøgt sig med hex-strenge på 32 karakterer, fordi man i så fald skal gå baglæns.

Med mindre, du får fat i et kæmpe dictionary, og så laver md5 på samtlige af deres hash-værdier.
Det er måske i virkeligheden vejen frem.
Et dictionary attack forudsaetter jo ikke at der findes et dictionary med hash vaerdier (altsaa pre-computed). Det er bare at hashe to gange on-the-fly.

Jeg brugte hashcat med double md5 mode og kaempe store word lists. Fandt ikke nogen af dem jeg har listet her, men fandt fem andre.

Og ja, tror bestemt det er vejen frem i forhold til bruteforce. Specielt hvis du ikke har ordentlig GPU-kraft til raadighed ;)
Mit bedste bud er du kan prøve at smide det på md5this.com.. De har computerkraften og flere års data i deres rainbow tables efterhånden. Men hvis pwd'et er dobbelt-hashed er der ikke meget at stille op med rainbow og dictionary.
Undrer mig bare over hvorfor der ikke er brugt en salt istedet? Er det noget home-brewed eller fra et eller andet projekt ?
(23-07-2013, 21:06)PhasmaX Skrev: [ -> ]Hvordan adskiller det sig fra mit forslag? Altså, hvad er din tanke?
Hvordan ville det være bedre?
(Det er et seriøst spørgsmål - no disrespect)

Jeg mener, i stedet for at bruteforce som dette:
md5(00000000000000000000000000000000)
md5(00000000000000000000000000000001)
osv.

Så bruteforce
md5(md5(abe))
md5(md5(anus))

Det kan også være det var det du mente, men så har jeg bare læst forkert.
(23-07-2013, 21:21)flyingsonyy Skrev: [ -> ]Et dictionary attack forudsaetter jo ikke at der findes et dictionary med hash vaerdier (altsaa pre-computed). Det er bare at hashe to gange on-the-fly.

Jeg tror, du tænker på "rainbow tables". Et dictionary er lige præcis, hvad ordet angiver: En unik nøgle og en tilhørende værdi.
Sider: 1 2