Seite 1 von 1

Sicherheit eines MOD / striptags & stripthtml

Verfasst: 18.05.2004 21:18
von tiefenschaum
Ich bin dabei ein MOD zu schreiben, und bin mir mit der Sicherheit nicht im klaren.
Das MOD erlaubt es registrierten usern Text, Integer, Links und eine Grafik (GIF mit content check) upzuloaden, bzw in die Datenbank zu schreiben. Das Ganze soll natürlich nachher auch wieder angezeigt werden können.
Ich frage mich halt nur, da wenn man den Forums-source so ansieht, sehr oft aus Sicherheitsgründen HTML Anteile herausgefiltert werden. Das selbe mit Slashes.
Meine Frage also, wo (bei welchen Eingaben) und wann (vor eintrag in die DB oder vor der Anzeige) sollte man welche Zeichen aus den jeweiligen Variablen "rausfiltern", damit niemand unsinn betreibt?

btw mit der Forums Suche habe ich nichs gefunden, falls das Thema schonmal zu Sprache kam ...

Verfasst: 18.05.2004 23:06
von PhilippK
phpBB liefert dir die Variablen immer mit escapten AnführungszeichenZum Speichern musst du die escapten Anführungszeichen durch doppelte ersetzen:

Code: Alles auswählen

str_replace("\'", "''", $var)
Willst du die Werte intern weiterverarbeiten, so musst du das Escapen rückgängig machen:

Code: Alles auswählen

stripslashes($var)
Ansonsten solltest du (idealerweise gleich bei der Speicherung) darauf achten, das bei Textfeldern keine HTML-Befehle enthalten sind. Das geht entweder mit

Code: Alles auswählen

strip_tags($var)
(da werden die Tags einfach entfernt)
oder mit

Code: Alles auswählen

htmlspecialchars($var)
(da werden die Tags als Text dargestellt).
Zusätzlich solltest du bei Zahlenwerten sicherstellen, dass auch eine Zahl vorliegt:

Code: Alles auswählen

intval($value)
Gruß, Philipp