Gästebuch programmiert - was kann man verbessern?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
code
datei
datenbank
datum
eintrag
email
file
frage
http
idee
jemand
nutzen
prinzip
problem
schutz
statement
text
tun
url
verwenden
-
fabo schrieb:
Da würde ich kein HTML für verwenden, sondern richtige BBCodes.
Ich habe heute schon versucht, einen BBCode-Editor für mein GB zu programmieren - hat aber nicht geklappt.
Ich denke ich werkel mal ein bisschen am Midas-Spec von Mozilla herum - damit dürfte ein guter Texteditor möglich sein. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
fabo schrieb:
Durch strip_tags() hast du schon den Großteil an Javascript und HTML aus den einzelnen Parametern entfernt. Einen 100%igen Schutz vor XSS gibt es eigentlich kaum.
Ein Gästebuch auf MySQL Basis kann sog. "Prepared Statements" verwenden, um so etwas zu unterbinden.
Da liegst du falsch, Prepared Statements haben 2 Vorteile:
- Geschwindigkeitssteigerung
- Schutz vor SQL Injection
XSS ist hiervon nicht betroffen.
Wie die Prepared Statements allerdings SQL Injections verhindern, kann man selber mit mysql_real_escape_string() auch erreichen. -
Stimmt. Mein Fehler. Wobei ich auch zugeben muss, dass ich mir die Dokuschon lange nicht mehr angesehen habe.
Aber im Prinzip stimmt das schon. Die Filterung von unliebsamen Strings sollte schon vor der SQL Anweisung erfolgen.
Asche auf mein Haupt =) -
fabo schrieb:
Stimmt. Mein Fehler. Wobei ich auch zugeben muss, dass ich mir die Dokuschon lange nicht mehr angesehen habe.
Aber im Prinzip stimmt das schon. Die Filterung von unliebsamen Strings sollte schon vor der SQL Anweisung erfolgen.
Asche auf mein Haupt =)
Das Prinzip bei Datenfilterung sollte sein, Daten erst zu filtern und dann in die Datenbank zu schreiben. Nicht erst bei der Ausgabe. Wenn ein ambitionierter Hacker nämlich eine Website, die zwar filtert - aber erst vor der Ausgabe, angreift, wird sein Code trotzdem ausgeführt, da er bereits in der DB eingefügt ist. @ Threadersteller: Bei jedem System, dass Inputeingaben von Usern vereinbartet, sollte Sicherheit an oberster Stelle stehen. Auch bei deinem Gästebuch. Achte bitte darauf immer vor der DB Eintragung Daten zu filtern.
Und noch eine Anmerkung: Prüfe niemals Clientseitig! Sicher ist nur, dass was auf Serverseite als sicher erklärt wurde. -
midwar schrieb:
fabo schrieb:
Stimmt. Mein Fehler. Wobei ich auch zugeben muss, dass ich mir die Dokuschon lange nicht mehr angesehen habe.
Aber im Prinzip stimmt das schon. Die Filterung von unliebsamen Strings sollte schon vor der SQL Anweisung erfolgen.
Asche auf mein Haupt =)
Das Prinzip bei Datenfilterung sollte sein, Daten erst zu filtern und dann in die Datenbank zu schreiben. Nicht erst bei der Ausgabe. Wenn ein ambitionierter Hacker nämlich eine Website, die zwar filtert - aber erst vor der Ausgabe, angreift, wird sein Code trotzdem ausgeführt, da er bereits in der DB eingefügt ist. @ Threadersteller: Bei jedem System, dass Inputeingaben von Usern vereinbartet, sollte Sicherheit an oberster Stelle stehen. Auch bei deinem Gästebuch. Achte bitte darauf immer vor der DB Eintragung Daten zu filtern.
Und noch eine Anmerkung: Prüfe niemals Clientseitig! Sicher ist nur, dass was auf Serverseite als sicher erklärt wurde.
Ich habe keine DB!
Ich habe jetzt einen Text-Editor eingebaut und ein Deisgn per CSS erstellt. Über den Editor kann man keinen HTML-code nutzen und auch keinen BBCode.
Damit ist das GB fertig. Ändern werde ich erstmal nichts mehr, ich verusche mich jetzt an einer ganzen kleinen Webseite.
Danke für eure Hilfe!
MfG Schorschi
Beitrag zuletzt geändert: 25.4.2010 13:29:15 von schorschi -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage