Glossar-Eintrag

Cross-Site Scripting (XSS)

Einführung und Definition

Cross-Site Scrip­ting (XSS) ist eine Sicher­heits­lü­cke, die in Web­an­wen­dun­gen auf­tritt, wenn Angreifer:innen bös­ar­ti­gen Code (meist Java­Script) in Web­sei­ten ein­schleu­sen kön­nen, die von ande­ren Nutzer:innen auf­ge­ru­fen wer­den. XSS ermög­licht es Angreifer:innen, Benutzer:innen zu täu­schen, sen­si­ble Infor­ma­tio­nen wie Pass­wör­ter oder Coo­kies zu steh­len oder schäd­li­che Aktio­nen in deren Namen auszuführen.

Der Name XSS (statt CSS, um Ver­wechs­lun­gen mit Cas­ca­ding Style Sheets zu ver­mei­den) ver­weist auf die „Cross-Site“-Interaktion, bei der Angriffe von einer Web­site auf eine andere über­tra­gen wer­den können.

Bedeutung und Risiken von Cross-Site Scripting (XSS)

XSS ist eine der häu­figs­ten Sicher­heits­lü­cken in Web­an­wen­dun­gen und wird in den OWASP Top 10 regel­mä­ßig als kri­ti­sche Schwach­stelle auf­ge­führt. Die Risi­ken umfassen:

  • Daten­dieb­stahl: Angreifer:innen kön­nen Coo­kies, Tokens oder andere ver­trau­li­che Daten stehlen.
  • Phis­hing: Gefälschte Ein­ga­be­for­mu­lare kön­nen Benutzer:innen zur Preis­gabe sen­si­bler Daten verleiten.
  • Iden­ti­täts­dieb­stahl: Nutzer:innen kön­nen durch den gestoh­le­nen Coo­kie-Token authen­ti­fi­ziert wer­den, was die Kon­trolle über deren Kon­ten ermöglicht.
  • Ver­brei­tung von Mal­ware: Schad­code kann über XSS ver­teilt wer­den, um Geräte zu infizieren.

Arten von XSS

Reflektiertes XSS

Diese Form tritt auf, wenn der schäd­li­che Code in der Anfrage an die Web­site ent­hal­ten ist und direkt in die Ant­wort ein­ge­fügt wird. Bei­spiel: Ein Such­feld, das die Ein­gabe des Nut­zers ohne Fil­te­rung im HTML-Code der Such­ergeb­nisse ausgibt.

Persistentes XSS

Per­sis­ten­tes XSS spei­chert den schäd­li­chen Code dau­er­haft auf der Web­site, z. B. in einer Daten­bank. Andere Nutzer:innen, die diese Inhalte auf­ru­fen, wer­den dann unwis­sent­lich Opfer des Angriffs. Bei­spiele: Gäs­te­bü­cher, Kom­men­tare oder Forenbeiträge.

DOM-basiertes XSS

Hier erfolgt der Angriff inner­halb des Doku­men­ten­ob­jekt­mo­dells (DOM) des Brow­sers, ohne dass der Ser­ver den Code direkt ver­ar­bei­tet. Der schäd­li­che Code wird direkt durch cli­ent­sei­ti­ges Java­Script ausgeführt.

Funktionsweise eines XSS-Angriffs

  1. Ein­schleu­sen des Codes: Angreifer:innen plat­zie­ren bös­ar­ti­gen Code in Fel­dern wie Such­an­fra­gen, Kom­men­ta­ren oder URLs.
  2. Aus­füh­rung des Codes: Der Code wird durch die Web­an­wen­dung oder den Brow­ser ausgeführt.
  3. Mani­pu­la­tion oder Daten­dieb­stahl: Der Code führt die gewünschte Aktion aus, wie das Steh­len von Coo­kies oder die Anzeige eines gefälsch­ten Login-Formulars.

Auswirkungen eines XSS-Angriffs

Die Aus­wir­kun­gen vari­ie­ren je nach Kontext:

  • Pri­vat­per­so­nen: Daten­dieb­stahl, z. B. Zugangs­da­ten zu sozia­len Medien oder Bankkonten.
  • Unter­neh­men: Ver­lust von Kun­den­da­ten und Imageschäden.
  • Webseitenbetreiber:innen: Mög­li­che recht­li­che Kon­se­quen­zen bei der Ver­let­zung von Datenschutzbestimmungen.

Schutz vor XSS

Input-Validierung

Sämt­li­che Benut­zer­ein­ga­ben soll­ten über­prüft und gefil­tert wer­den, bevor sie ver­ar­bei­tet wer­den. Uner­war­tete Zei­chen wie < und > soll­ten ent­fernt oder ent­schärft werden.

Output-Encoding

Stel­len Sie sicher, dass alle Aus­ga­ben sicher kodiert sind, bevor sie im Brow­ser ger­en­dert wer­den. Ver­wen­den Sie HTML-Enti­tä­ten, um bös­ar­tige Zei­chen wie &lt; und &gt; anzu­zei­gen, anstatt sie als Code auszuführen.

Content Security Policy (CSP)

Eine CSP kann das Laden exter­ner Skripte und uner­laub­ter Inhalte ein­schrän­ken. Sie bie­tet eine zusätz­li­che Schutz­ebene, selbst wenn XSS-Schwach­stel­len vor­han­den sind.

Fazit: Die Gefahr von XSS und präventive Maßnahmen

Cross-Site Scrip­ting ist eine gefähr­li­che Sicher­heits­lü­cke, die sowohl Nutzer:innen als auch Betreiber:innen von Web­sei­ten scha­den kann. Der beste Schutz ist ein pro­ak­ti­ver Ansatz: durch sorg­fäl­tige Vali­die­rung von Ein­ga­ben, sichere Kodie­rung von Aus­ga­ben und den Ein­satz moder­ner Sicher­heits­me­cha­nis­men wie CSP. Entwickler:innen und Betreiber:innen soll­ten XSS nicht unter­schät­zen und sicher­stel­len, dass ihre Anwen­dun­gen kon­ti­nu­ier­lich auf Sicher­heits­lü­cken geprüft und aktua­li­siert werden.

Zurück zum Glossar

Dein Ansprechpartner

Lutz Bischoff Geschäftsführung formwanlder interactive Frankfurt am Main
Lutz Bischoff

Geschäftsführer, Experte für Suchmaschinenoptimierung, Webentwicklung und Online-Marketing.

Projektvorstellung

Projektvorstellung

Tim möchte dir ein erfolgreiches Projekt von uns vorstellen.

Jetzt ansehen
kostenloses Whitepaper

kostenloses Whitepaper

Lutz möchte dir unser kostenloses Whitepaper zum Thema "Erfolgreicher Website Relaunch" anbieten

Jetzt ansehen

Telefon

Trage deine Telefonnummer ein, um den Link zu erhalten!

Jetzt das Whitepaper downloaden!

Fordere jetzt Deine Checkliste an!

E-Mail Adresse

Trag deine E-Mail Adresse ein, um den Link zu erhalten!