Cross-Site Scripting

Aus Siwecos
Wechseln zu: Navigation, Suche

Cross-Site Scripting

Cross-Site Scripting wird mit XSS abgekürzt, weil die Abkürzung CSS schon für Cascading Style Sheets besetzt war. Da Cross Kreuz bedeutet hat man als Ersatz einfach das X gewählt und daraus entstand dann XSS als geläufige Abkürzung für Cross-Site Scripting.

XSS bedeutet webseitenübergreifendes Skripting (meist JavaScript) und tritt auf, wenn eine Webanwendung Daten eines Nutzers ohne Prüfung annimmt und diese Daten dann an einen Browser weitersendet. Unter Ausnutzung von Sicherheitslücken in Webanwendungen werden unsichere Nutzungsformen als vertrauensvoll dargestellt. Ziel ist u. a. an sensible Daten des Benutzers zu gelangen, um beispielsweise seine Benutzerkonten zu übernehmen (Identitätsdiebstahl). Dazu werden Webseiten mit clientseitigen Skripten infiziert, die von Nutzern aufgerufen werden.

XSS ist eine Art HTML Injection. Damit ist es einem Angreifer möglich, auch Skripte indirekt an den Browser des Opfers zu senden und damit bösartigen Code (malicious code) auf der Seite des Clients auszuführen. Häufige Anwendungsbereiche sind dynamisch erzeugte Webseiten wie Gästebücher, Foren und Kommentarfunktionen, aber auch die Kontrollausgabe von eingegebenen Bestellungen, Registrierungen oder Suchanfragen. Die Webseite könnte z. B. mit einem Code injiziert sein, der dazu dient, dem Benutzer ein Formular in einem iFrame anzuzeigen. Der Nutzer bemerkt nicht, dass das Formular nicht zur Webseite gehört, lässt sich also täuschen und füllt es aus.

Auf diese Weise können Hacker Daten abgreifen, die zwischen dem Benutzer und der infizierten Webseite ausgetauscht werden. Je nach Sensibilität der gewonnenen Daten können die Folgen kleinere Ärgernisse oder auch große Sicherheitsrisiken sein. Wenn in einem solchen Formular beispielsweise Authentifizierungsinformationen abgefragt werden, ist das ein großes Sicherheitsrisiko.

Über injizierten Code könnte der Benutzer auch auf eine manipulierte Webseite weitergeleitet werden, die von einem Hacker kontrolliert wird. Die manipulierte Seite sieht genauso aus wie die Original-Webseite. Erfolgt darüber ein Login des Benutzers, kann der Angreifer diese Daten sammeln und missbrauchen.


Wie können Sie sich schützen?


Benutzer:
  • Durch Ausschalten der JavaScript-Unterstützung im Browser kann man sich gegen clientseitige XSS-Angriffe schützen.
  • Für einige Browser gibt es Addons, die mögliche XSS-Angriffe erkennen und verhindern.



Webseiten-Betreiber:
  • Für jeden Webseitenbetreiber ist es unumgänglich, alle eingehenden Eingabewerte als unsicher zu betrachten und vor der weiteren Verarbeitung auf der Serverseite zu überprüfen.



Weiterführende Links zum Thema XSS