Zur Navigation

Sicherheitscheck / Codeoptimierung

1 Marcel (Gast)

Hallo!

Wieder einmal habe ich ein wenig rumgespielt und ansatzweise eine Community programmiert. Bevor ich allerdings weitermache, möchte ich gerne Meinungen zu der Sicherheit und allgemein zum Code einholen.

Online-Beispiel: http://movies.csstut.de/community


Username: Tester
Passwort: tester


Download: http://movies.csstut.de/community.zip


Ich bedanke mich! :)

PS: Erweiterungsvorschläge sind natürlich auch erwünscht.


Marcel

28.03.2007 15:44

2 Jörg Kruse

Hallo Marcel,

ich habe mal kurz über die Scripte drüber geschaut.

Ich würde die Passwörter (mit md5()) verschlüsselt in die Datenbank abspeichern. Beim Login kann dieser Wert dann verglichen werden mit der gleichfalls durch md5() behandelten Eingabe. So kann z.B. der Administrator die Passwörter nicht lesen

Einen zweiten Verbesserungsvorschlag teile ich dir vorläufig über Email mit

28.03.2007 16:23

3 Marcel (Gast)

Danke für die Bemühungen!

Ist die Verschlüsselung durch md5() denn auch sicher? Ich habe irgendwann mal gehört, dass man diese mit ein paar Spielereien schnell entschlüsseln kann.

28.03.2007 16:29

4 Jörg Kruse

md5() erzeuigt einen Hash von 32 Zeichen Länge, das ist schon recht sicher - du kannst auch sha1() verwenden, dann ist der Hash 40 Zeichen lang

Schwache Passwörter können noch über Rainbowtables entschlüsselt werden. Dagegen hilft ein sogenannter Salt

$password = md5($password . $salt);

Für $salt kannst du einen beliebigen Wert wählen, der über die Laufzeit des Scriptes hinaus aber konstant bleiben muss, damit du die verschlüsselten Werte beim Login wieder vergleichen kannst.

28.03.2007 16:44

5 Marcel (Gast)

Gut, werde ich gleich einbauen!

PS: Die von dir in der eMail angesprochene Sicherheitslücke habe ich bereits behoben. Wenn du Lust hast, kannst du es dir ja nochmal ansehen. :)

EDIT: Kann ich verschlüsselte Passwörter dann auch noch über die eMail unverschlüsselt versenden oder muss erst ein neues generiert werden?

28.03.2007 16:49 | geändert: 28.03.2007 16:51

6 Jörg Kruse

PS: Die von dir in der eMail angesprochene Sicherheitslücke habe ich bereits behoben. Wenn du Lust hast, kannst du es dir ja nochmal ansehen. :)

Das Zipfile ist aber noch nicht aktualisiert? oder du hast diese noch nicht an allen Stellen behoben

EDIT: Kann ich verschlüsselte Passwörter dann auch noch über die eMail unverschlüsselt versenden oder muss erst ein neues generiert werden?

Entschlüsseln geht nicht, in dem Fall muss ein neues generiert werden

28.03.2007 19:25

7 Marcel (Gast)

Zitat von Jörg

Das Zipfile ist aber noch nicht aktualisiert? oder du hast diese noch nicht an allen Stellen behoben

Ich meine, es an allen Stellen behoben zu haben (und ja, die Zip-Datei ist auch aktualisiert).

Zitat von Jörg

Entschlüsseln geht nicht, in dem Fall muss ein neues generiert werden

Okay, danke. Dann werde ich das wohl morgen machen (ist ja doch mit ein wenig mehr Arbeit verbunden).

28.03.2007 20:45

8 Jörg Kruse

Ok, ich hatte übersehen, dass du es in die Funktion string_format() eingebaut hast

28.03.2007 21:43

9 Marcel (Gast)

So, ich habe alles überarbeitet und teilweise ein wenig erweitert. Wenn jemandem noch ein Mängel auffällt, dann würde ich mich freuen, wenn er mir diesen mitteilen würde.

Weiterhin gelten folgende Daten:

Online-Beispiel: http://movies.csstut.de/community

Username: Tester
Passwort: tester

Download: http://movies.csstut.de/community.zip

Ein Dank nochmal an dich, Jörg (die Verschlüsselung der Passwörter habe ich auch umgesetzt ;)). :)

29.03.2007 20:53

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]