TS: GET Felder prüfen gegen XSS (PHP)

Beitrag lesen

Hello,

ich möchte gerne meine Suche absichern. Ich bekomme via GET oder POST den Prammeter s. Grundsätzlich ist in der Suche erstma alles zulässig.

Was den Einsatz von htmlspecialchars() in der Suche erschwert. Was nutzt Ihr alternativ zu strip_tags um die Inputfelder zu prüfen?

Für deine Suche nimmst Du Daten entgegen, also eine EINGABE. Solange Du die nicht im HTML-Kontext wieder ausgeben willst, hat htmlspecialchars() dort nichts zu suchen. Das ist nämlich zur Anpassung von Zeichenketten an den HTML-Kontext bei der AUSGABE gedacht.

Ob strip_tags() von Interesse sein könnte (Konjunktiv), hängt davon ab, wo Du suchen willst. Wenn Du z. B. in einer (SQL-)Datenbank über deren Textschnittstelle suchen willst, musst Du die zugehörigen Escapefunktionen für die Datenbankschnittstelle beachten.

Außerdem gibt es für Abfragen an (SQL-)Datenbanken auch meistens Jokerzeichen, speziell bei der Verwendung von LIKE. Die musst Du ggf. auch entfernen oder ersetzen.

Glück Auf
Tom vom Berg

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