arrow_backAlle Begriffesecurity

XSS

XSS (Cross-Site Scripting) ist eine Web-Sicherheitslücke, die es Angreifern ermöglicht, bösartige clientseitige Skripte in Webseiten zu injizieren, die von and…

Auch verfügbar: In English

XSS, oder Cross-Site Scripting, ist eine weit verbreitete und gefährliche Web-Sicherheitslücke, die es Angreifern ermöglicht, bösartige clientseitige Skripte (typischerweise JavaScript) in Webseiten zu injizieren, die von anderen Benutzern angesehen werden. Diese injizierten Skripte können dann im Browser des Opfers ausgeführt werden, was potenziell zu einer Vielzahl von Angriffen führen kann, vom Diebstahl von Cookies und Session-Tokens bis hin zur Verunstaltung von Websites oder der Umleitung von Benutzern auf bösartige Seiten.

XSS-Angriffe fallen im Allgemeinen in drei Kategorien:

  • Gespeichertes XSS (Persistent XSS): Das bösartige Skript wird dauerhaft auf dem Zielserver gespeichert (z. B. in einer Datenbank, einem Kommentarbereich oder einem Forum-Beitrag) und an Benutzer ausgeliefert, die die betroffene Seite besuchen.
  • Reflektiertes XSS (Non-Persistent XSS): Das bösartige Skript wird von einem Webserver reflektiert, z. B. in einer Fehlermeldung, einem Suchergebnis oder einer anderen Antwort, die Daten enthält, die vom Benutzer als Teil der Anfrage gesendet wurden. Das Skript wird nicht auf dem Server gespeichert.
  • DOM-basiertes XSS: Die Schwachstelle liegt im clientseitigen Code selbst, wobei die bösartige Nutzlast als Ergebnis der Änderung der DOM-Umgebung im Browser des Opfers ausgeführt wird, anstatt direkt in die Serverantwort injiziert zu werden.

Ein gängiges Beispiel ist ein Angreifer, der einen Kommentar wie <script>alert('You are hacked!');</script> in einem anfälligen Forum einreicht. Wenn das Forum die Benutzereingaben nicht ordnungsgemäß bereinigt, wird dieses Skript in den Browsern aller ausgeführt, die diesen Kommentar ansehen. Um XSS zu verhindern, musst du als Entwickler immer alle vom Benutzer bereitgestellten Eingaben bereinigen und validieren, bevor du sie auf einer Webseite renderst, indem du Techniken wie Output Encoding, Input Validation und die Implementierung einer robusten Content Security Policy (CSP) verwendest.

Verwandte Begriffe

Site auf alle diese Punkte prüfen?

Pantra scannt dich in 8 Sekunden. Gratis, ohne Anmeldung.

Jetzt scannenarrow_forward