XSS (Cross-Site Scripting), im Tech-Kontext.
Bei XSS landet fremder Skriptcode über ungeprüfte Eingaben auf Ihrer Seite und läuft im Namen des Nutzers. Schutz ist konsequentes Maskieren von Ausgaben.
Cross-Site Scripting ist eine Schwachstelle, bei der fremder Skriptcode im Kontext Ihrer Seite ausgeführt wird, weil Eingaben ungeprüft in die Ausgabe übernommen wurden. Der OWASP-Leitfaden unterscheidet drei Formen: reflektiert über Parameter in der URL, gespeichert über Inhalte in der Datenbank und DOM-basiert im Browser selbst. Folgen reichen von übernommenen Sitzungen bis zu manipulierten Formularen. Der Schutz ist gut beschrieben: Ausgaben je nach Zielkontext maskieren, HTML aus Redaktionssystemen serverseitig gegen eine Positivliste filtern, Cookies als HttpOnly setzen und eine Content-Security-Policy als zweite Verteidigungslinie einziehen. Frameworks maskieren automatisch, bis jemand die Ausnahme benutzt.
Beispiele aus dem Mittelstand
- Ein Bewertungsbereich filtert eingereichte Texte serverseitig, damit gespeicherter Skriptcode gar nicht erst in die Datenbank kommt.
- Ein Portal setzt eine Content-Security-Policy, sodass selbst untergeschobene Skripte mangels erlaubter Quelle nicht starten.
// unsicher: fremder Inhalt wird als Markup interpretiert
element.innerHTML = kommentar;
// sicher: derselbe Inhalt bleibt reiner Text
element.textContent = kommentar;Folge-Fragen
Reicht das automatische Maskieren meines Frameworks?
In React, Vue und Angular meistens ja. Die Lücke entsteht bei den bewussten Ausnahmen wie dangerouslySetInnerHTML oder v-html mit fremdem Inhalt.
Was bringt eine Content-Security-Policy?
Sie legt fest, aus welchen Quellen Skripte laufen dürfen. Ein untergeschobenes Skript startet dann nicht. Sie ist eine zweite Linie, kein Ersatz für Maskieren.
Warum sollen Cookies HttpOnly sein?
Weil JavaScript sie dann nicht auslesen kann. Selbst bei einer XSS-Lücke lässt sich das Sitzungs-Cookie so nicht einfach abgreifen.
Wie prüfe ich meine Seite auf XSS?
Über einen beauftragten Penetrationstest auf eigenen Systemen, ergänzt um automatisierte Scanner in der Auslieferungsstrecke. Fremde Systeme zu testen ist strafbar.
XSS (Cross-Site Scripting) in der Praxis.
Wo dieser Begriff in deinem Geschäft konkret wird, beginnt die Arbeit. Wir nennen klar, ob die Idee in unser Studio passt.
Digital-Audit