wahsaga: Gästebuch auf Angreifbarkeit testen

Beitrag lesen

hi,

FÜr weitere Infos über die Bedienbarkeit wäre ich dankbar.

sicherheit gegen die trivialen, gängigen angriffe scheint gegeben zu sein.
(dass die sprichwörtliche "security by obscurity" aber nicht die beste ist, dürfte ja bekannt sein.
wenn du magst, könntest du also dein script hier auch mal zur "durchsicht" vorstellen. da können dir hier sicher einige leute tipps geben, ob noch etwas nicht ganz ideal ist).

wie in den testkommentaren schon angesprochen, ist die behandlung von hochkommata und anführungszeichen sowie des backslash noch nicht ganz sauber:
" wird zu "
' wird zu '
\ wird zu \

das liegt vermutlich daran, dass die konfigurationsoption magic_quotes_gpc auf "on" ist - damit werden per GET, POST oder cookie übergebene daten automatisch derart maskiert.

das dient m.E. in erster linie zum schutz allzu ahnungsloser programmierer vor sich selber - deshalb ist es bei den massenhostern idR. auch aktiviert.

wenn du also diese option abschalten kannst, dann solltest du es tun (geht allerdings nicht per ini_set(), weil das schon "zu spät" kommt. müsste also entweder in der php.ini, oder httpd.conf bzw. .htaccess gemacht werden). aber vorsicht: bevor du das tust, überprüfe erst, ob du noch andere scripte im einsatz hast, die nicht sauber programmiert sind, und sich darauf verlassen.

solltest du es nicht abschalten können/wollen, dann hilft dir das in einem eintrag schon erwähnte stripslashes(). das entfernt die - in diesem falle "zuviel" vorkommenden - backslashes wieder.

und noch ein kleiner "bug":
wenn ich einen fehler provoziere, so dass das formular mit den vorbelegten daten nochmal angezeigt wird, werden in der textarea die zeilenumbrüche zu \r\n - nicht die steuerzeichen, sondern die einzelnen textzeichen , n, , r - die eingegebenen zeilenumbrüche gehen bei dieser fehlerausgabe also irgendwo verloren.

und der hinweis auf nl2br() kam ja auch schon - sofern es denn deine absicht ist, zeilenumbrüche im beitragstext zu erlauben.

gruß,
wahsaga

--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }