Sicherheit · Frage 8 von 12

Ein Besucher gibt als Namen <script>alert(1)</script> ein, das Fluid-Template gibt ihn mit {name} aus. Was passiert?

1 Antwort ist richtig. Einfach

Lösung anzeigen

Lösung

  • C Der Text erscheint sichtbar auf der Seite, weil Fluid die spitzen Klammern maskiert

Erklärung

Fluid maskiert Variablen wie {name} bei der Ausgabe automatisch mit htmlspecialchars(): Aus <script> wird &lt;script&gt;, und der Browser zeigt die Zeichen als Text an, statt sie als HTML zu deuten. Dieser Automatismus ist der wichtigste Schutz vor Cross-Site-Scripting (XSS) in TYPO3-Templates. Er greift nicht mehr, wenn man den Wert mit <f:format.raw> oder {name -> f:format.raw()} ausgibt – das sollte man bei Benutzereingaben nie tun. Fluid löscht den Inhalt nicht und wirft auch keinen Fehler; der Wert bleibt erhalten, er wird nur unschädlich gemacht.

Zertifikate & Prüfungen

Welche Prüfung kommt als Nächstes?

19 Prüfungen kannst du schon üben, über 21 stimmst du gerade ab. Sieh dir alle Zertifikate mit offiziellen Infos an, gib deine Stimme ab oder schlag deine Prüfung vor.

Zur Zertifikatsübersicht