TS: Variablen absichern per mysqli_real_escape_string: Reicht das aus?

Beitrag lesen

Hello Christian,

ich entwickle gerade ein kleines CMS mit PHP, AJAX, JS und MYSQL.

Ich sichere alle ($_POST) Variablen, die (z.B. in SQL-Abfragen) verarbeitet werden mit mysqli_real_escape_string ab. Reicht das aus? Ist das ausreichend sicher oder muss ich die Variablen noch anderweitig absichern (z.B. mit strip_tags, stripslashes oder htmlspecialchars).

Mach Dir eine Zeichnung!

  • In welcher Richtung (eigentlich "Orientierung") findet die Übertragung von Daten statt?
  • Aus welchem Kontext heraus (z. B. Browser im HTML-Modus oder im URL-Modus) in welchen Kontext hinein (z. B. Zwischenspeicherung im Hauptspeicher des Scriptes) findet die Übertragung statt?
  • Dann geht es vielleicht weiter vom Hauptspeicher des Scriptes (Rohdaten) in die Textschnittstelle der Datenbank (SQL) oder in die Datenschnittstelle der Datenbank (blockbasierte Methoden), oder ...

Und der Rückweg ist auch spannend, damit kein Cross-Site-Scripting (XSS) oder ähnliche Angriffe am Client (Browser, HTML, JavaScript) stattfinden kann.

Daten sind etwas sehr Verwandlungsfähiges und überall dort, wo sie mit möglichen Befehlen gemixt werden, lauern die Gefahren, mindestens!

Glück Auf
Tom vom Berg

--
Es gibt nichts Gutes, außer man tut es!
Das Leben selbst ist der Sinn.