Frage

frage mich, ob die Kombination von trim (), strip_tags () und addslashes () genug ist, Werte von Variablen filtern von $ _GET und $ _POST

War es hilfreich?

Lösung

Das hängt davon ab, welche Art von Validierung Sie ausführen wollen, sind.

Hier sind einige grundlegende Beispiele:

  • Wenn die Daten verwendet werden, wird in MySQL-Abfragen stellen Sie sicher, mysql_real_escape_query () auf die Daten zu verwenden, statt addslashes ().
  • Wenn es Dateipfade sicher sein, die „../“ Teile und blockieren den Zugriff auf sensible Dateinamen enthält zu entfernen.
  • Wenn Sie die Daten auf einer Webseite gehen, um anzuzeigen, stellen Sie sicher, htmlspecialchars () auf, es zu benutzen.

Aber die wichtigste Validierung nur die Werte akzeptieren Sie erwarten, mit anderen Worten:. Nur numerische Werte erlauben, wenn Sie Zahlen erwarten, etc

Andere Tipps

Kurze Antwort: no.

Lange Antwort:. Es hängt

Grundsätzlich kann man nicht sagen, dass eine bestimmte Menge an Filtern ist oder nicht ausreicht, um ohne zu überlegen, was Sie damit tun wollen. Zum Beispiel wird der oben erlauben, durch „javascript: dostuff ();“., Die in Ordnung sein könnten oder es vielleicht nicht, wenn Sie einen von denen verwenden GET oder POST-Werten im href-Attribute eines Link

Ebenso könnten Sie einen Rich-Text-Bereich haben, wo Nutzer so Stripping-Tags aus, dass bearbeiten können nicht genau Sinn machen.

Ich denke, was ich versuche zu sagen ist, dass es einfacher Satz von Schritten, um Ihre Daten Hygienisierung, so dass Sie es aus und sagen „done“ überqueren. Man muss immer bedenken, was diese Daten zu tun.

Es ist sehr abhängig, wo Sie es für verwenden werden.

  • Wenn Sie die Dinge als HTML angezeigt werden, stellen Sie sicher, dass Sie absolut richtig sind unter Angabe der Codierung (z .: UTF-8). Solange Sie alle Tags Streifen, Sie sollte in Ordnung sein.
  • Für die Verwendung in SQL-Abfragen, addslashes ist nicht genug! Wenn Sie die mysqli Bibliothek zum Beispiel verwenden, möchten Sie sehen mysql :: real_escape_string . Für andere DB-Bibliotheken verwenden, um die benannten Escape-Funktion!
  • Wenn Sie gehen, um die Zeichenfolge in Javascript verwenden, addslashes nicht genügen.
  • Wenn Sie über Browser-Bugs paranoid sind, noreferrer"> OWASP Reform Bibliothek der
scroll top