WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   md5 funktion och sql? (https://www.wn.se/forum/showthread.php?t=16666)

zilveer 2006-10-06 10:54

hejsan,
jag har md5 krypterat användarID i mitt system.
användarID är lagrat som int i tabellen.
jag skapar en session och krypterar den med md5 vid inloggning.

när jag sedan väljer att hämta användarinfo från tabellen får jag TYPE=ALL.
Någon som vet hur man kan undgå detta?

min sql-fråga:
Kod:

SELECT username FROM m_users WHERE md5(uid) = '1ff1de774005f8da13f42943881c655f'

Jonas 2006-10-06 12:22

Citat:

Originally posted by zilveer@Oct 6 2006, 10:54
hejsan,
jag har md5 krypterat användarID i mitt system.
användarID är lagrat som int i tabellen.
jag skapar en session och krypterar den med md5 vid inloggning.

när jag sedan väljer att hämta användarinfo från tabellen får jag TYPE=ALL.
Någon som vet hur man kan undgå detta?

min sql-fråga:
Kod:

SELECT username FROM m_users WHERE md5(uid) = '1ff1de774005f8da13f42943881c655f'

MD5 är ingen kryptering.
Det är ett sätt att få fram en hash ur något.

MD5 är knäckt, så vet man att handlar om en MD5-summa så är det inga problem att få fram det du "krypterat".

Du kan dock "salta" det du "hashar", med tex:

Kod:

var salt = '4jg)j%f';
hash = salt & '1ff1de774005f8da13f42943881c655f'

vilket för det lite svårare att få reda på den ursprungliga strängen.

Ett tips på vägen iaf ;)

jahaa 2006-10-06 12:39

Citat:

Originally posted by Jonas@Oct 6 2006, 12:22

MD5 är knäckt, så vet man att handlar om en MD5-summa så är det inga problem att få fram det du krypterat.

Var kan jag läsa om detta? (ännu bättre ifall du kan visa ett program som konverterar, vilket ju uppenbart skulle finnas ifall detta var allmänt knäckt, inget bruteforce program..) Visst, jag vet att folk har kunna minskat ner antalet möjliga hashar till x^x men att det skulle vara helt knäckt låter väldigt konstigt. Kanske bara jag som är lite efter? :)

Jonas 2006-10-06 12:46

Citat:

Originally posted by jahaa@Oct 6 2006, 12:39
Var kan jag läsa om detta? (ännu bättre ifall du kan visa ett program som konverterar, vilket ju uppenbart skulle finnas ifall detta var allmänt knäckt, inget bruteforce program..) Visst, jag vet att folk har kunna minskat ner antalet möjliga hashar till x^x men att det skulle vara helt knäckt låter väldigt konstigt. Kanske bara jag som är lite efter? :)
http ://www.google.com/search?ie=UTF-8&oe=UTF-8&q=MD5+broken

jahaa 2006-10-06 12:49

Japp, sökte på det innan ditt inlägg, läs översta.

kers 2006-10-06 13:55

Jahaa: Du refererar till ett två år gammalt blogginlägg, säkerhetsinfo är dagsvaror :) POC kod för att skapa md5-kollisioner släpptes för knappt ett år sen och användandet av algoritmen bör alltså ses som osäkert:


SiliconEntity writes "The crypto world was shaken to its roots last year with the announcement of a new algorithm to find collisions in the still widely-used MD5 hash algorithm. Despite considerable work and commentary since then, no source code for finding such collisions has been published. Until today! Patrick Stach has announced the availability of his source code for finding MD5 collisions and MD4 collisions (Coral cache links provided to prevent slashdotting). MD4 collisions can be found in a few seconds (but nobody uses that any more), while MD5 collisions (still being used!) take 45 minutes on a 1.6 GHz P4. At last we will be able to implement various attacks which have been purely hypothetical until now. This more than anything should be the final stake in the heart of MD5, now that anyone can generate collisions whenever they want."

http://it.slashdot.org/article.pl?sid=05/1...037232&from=rss

jahaa 2006-10-06 14:53

Citat:

Originally posted by kers@Oct 6 2006, 13:55
Jahaa: Du refererar till ett två år gammalt blogginlägg, säkerhetsinfo är dagsvaror :) POC kod för att skapa md5-kollisioner släpptes för knappt ett år sen och användandet av algoritmen bör alltså ses som osäkert:


SiliconEntity writes "The crypto world was shaken to its roots last year with the announcement of a new algorithm to find collisions in the still widely-used MD5 hash algorithm. Despite considerable work and commentary since then, no source code for finding such collisions has been published. Until today! Patrick Stach has announced the availability of his source code for finding MD5 collisions and MD4 collisions (Coral cache links provided to prevent slashdotting). MD4 collisions can be found in a few seconds (but nobody uses that any more), while MD5 collisions (still being used!) take 45 minutes on a 1.6 GHz P4. At last we will be able to implement various attacks which have been purely hypothetical until now. This more than anything should be the final stake in the heart of MD5, now that anyone can generate collisions whenever they want."

http://it.slashdot.org/article.pl?si...37232&from=rss

Jo, syftar givetvis inte på att man ska använda det.

Men som ni ser i mitt första inlägg så skriver jag att de har kunna minskat ner antalet "försök"(för att uppnå en kollision) till en nivå där man ej bör använda det, visst. men fortfarande är det så att det tar tiotalet minuter per hash.

Jag tänkte mest på ifall det existerade exempelvis en md52plain('md5 sträng'); som arbetar lika snabbt som att skapa en.

SimonP 2006-10-06 16:52

Citat:

Originally posted by Jonas@Oct 6 2006, 12:22
... så vet man att handlar om en MD5-summa så är det inga problem att få fram det du "krypterat".


Det stämmer ej, dom har "bara" hittat ett sätt att generera MD5 kollisioner.
Det går ej att dekryptera MD5. Det man kan göra är att bruteforca MD5 (precis som man kan göra med alla hashfunktioner), om orginaltexten är kort kan man lyckas med en bruteforce attack. Om orginaltexten är lång kommer en sån attack aldrig att lyckas.

Man ska inte använda MD5 om man skall generera filsignaturer eller liknande "fingeravtrycksfunktioner" eftersom det går att förfalska hashsumman, det är det som är problemet med MD5 sen dom kom på hur man gör kollisioner.


Alla tider är GMT +2. Klockan är nu 13:18.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson