Wie und wo kann der XSS-Schutz in Laravel angewendet werden?

Ich frage mich, wie (falls überhaupt) XSS-Schutz in Laravel bereitgestellt wird. Ich konnte in der Dokumentation nichts dazu finden.

Proble

Ich benutze Eloquent's create() Methode zum Einfügen von Daten in die Datenbank $fillable/$guarded -Eigenschaften werden in den Modellen festgelegt). Wie sich herausstellt, kann ich so etwas in die Texteingabe einer beliebigen Form einfügen:

<script>alert('Hacking Sony in 3...2...')</script>

und der Wert wird in die Datenbank eingefügt. Dann wennechoing it - der Alarm wird angezeigt.

Mögliche Lösunge

Now, Laravel ist ein wirklich schönes Framework, also würde ich davon ausgehen, dass esMus Vermeiden Sie XSS sofort. Ich kann jedoch nicht herausfinden, was das ist.

Wenn ich mich irre, wie kann ich das Problem am besten lösen?

Verwende ich die ausgefallene Regex-Validierung, um bestimmte Zeichen zu verbieten?Verwende ichmysql_real_escape_string() auf jedemInput::get() Ich benutzeDo Istrip_tags()?

Escapezeichen auf Ansichtsebene reichen nicht aus

Ich weiß, ich kann Blade's @ verwend dreifach geschweifte Klammern Strings in den Views zu entkommen, das ist aber nicht der Punkt. Es ist viel sinnvoller für mich, diese hinterhältigen Bastarde überhaupt nicht in die Datenbank zu lassen.

Wenn jemand mit diesem Problem schon konfrontiert?

Antworten auf die Frage(12)

Ihre Antwort auf die Frage