Vinzenz Mai: Sicherheit von Dateiuploads

Beitrag lesen

Hallo,

Unsinn. Es handelt sich hier um stinknormale Daten, die kontextgemäß aufbereitet werden. Ob das die entsprechenden Maskierfunktionen passend zum DBMS sind, oder ob man prepared Statements verwendet, das ist gleichgültig. Ordentlich behandelt, kann nichts passieren. Dem DBMS ist es völlig egal. XML-Daten sind keine andere Daten als sonstige Benutzereingaben. Sie müssen ganz genauso behandelt werden.

"Normal" würde ich einfach mittels mysql_real_escape_string() die Eingabe des Benutzers entschärfen und ggf. vorher mit is_numeric() etc. prüfen.

wenn Du diese veralteten Funktionen noch nutzt, dann ist das korrekt.

Mit XML kommt es leider nicht in Frage, da aus:

doch selbstverständlich.

<smp>
<foo var="bar">Blub</foo>
</smp>

<smp>
<foo var="bar">Blub</foo>
</smp>

nicht im DB-Feld :-) Da steht der Originaltext. Die Behandlung ist ja nur für die Textschnittstelle.

Ordentlich behandelt, kann nichts passieren

Schön zu wissen. Aber wie würdest du denn mit diesem Beispiel oben umgehen, wenn du es in der Datenbank abzulegen hättest?

wenn ich die mysql_*-Funktionen benutzen müsste, dann nähme ich mysql_real_escape_string.

Freundliche Grüße

Vinzenz