Cross-Site-Scripting

Aus Online Marketing Wiki
Wechseln zu: Navigation, Suche


Mit Cross-Site-Scripting (XSS) ist das Ausnutzen einer Computersicherheitslücke in Webanwendungen gemeint. Dies geschieht, indem ein Angreifer Webseiten mit clientseitigen Skripten infiziert, die von anderen Nutzern aufgerufen werden. Es kann dazu verwendet werden, Daten einer Webseite zu verändern. Informationen werden von einem Angreifer in eine vermeintlich sichere Seite eingebettet.

Beim XSS kann der Angreifer sensitive Daten von Benutzern klauen, zu diesen Daten zählen z.B. Bankdaten, Zugangsdaten oder andere Persönliche oder finanzielle Daten. Der Angreifer hat somit die Möglichkeit den Nutzer zu überwachen und Fehlinformationen über ihn zu verbreiten.

Voraussetzung für eine Cross Site Attacke:

  1. Ein Hacker bzw. Angreifer schickt einen veränderten Hyperlink an einen Rezipienten d.h. Nutzer oder Server
  2. Der Rezipient öffnet den Link, indem er ihn anklickt, oder verarbeitet
  3. Der Browser des Rezipienten verfügt über aktiviertes JacaScript
  4. Der Server, auf dem der Rezipient surfen wollte, benutzt Webapplikationen, welche dynamische Webseiten ausgeben . Bei den dynamischen Webseiten werden keine Formulardaten überprüft.

Angriffsarten

Man unterscheidet zwischen drei Grundlegenden Arten von Cross-Site-Scripting-Angriffen:

  1. Reflektiertes XSS: Ist der häufigsten Vertreter von XSS-Angriffen. Es handelt sich um einen Angriff, bei dem eine Benutzereingabe direkt vom Server wieder zurückgesendet wird. Dem Nutzer wird ein manipulierter Link geschickt, dieser klickt den Link an, wodurch der Schadcode gestartet wird und ein Skript ausgeführt wird. Voraussetzung ist ein großes Maß an Benutzerinteraktion. Angreifer schicken gefälschte Mails und fordern den Nutzer zur Antwort heraus. Indem sie Formulare und Websites nach stellen und ein Skript einbinden gelangen sie an Session-Cookies mit Benutzerdaten.
  2. Persistentes (beständiges) XSS: Hier ist der Schadcode für den Nutzer nicht direkt identifizierbar. Der Schadcode wird in Foren und Communities ungefiltert als Link abgebildet (möglich, weil diese Webseiten selten die Eingabe kontrollieren). Die Attacke findet im Cache einer Webanwendung oder in einer angebundenen Datenbank von Websites.
  3. Lokales (DOM basiertes) XSS: Hierbei ist nicht die Webapplikationen auf dem Server beteiligt. Zur Ausführung wird der Schadcode direkt an ein clientseitiges Skript übergeben. Voraussetzung eines solchen Angriffs ist das gezielte Aufrufen einer kompromittierten URL.

Schutzmaßnahmen zu Cross Site Scripting

Es gibt verschiedene Möglichkeiten wie Nutzer und Webmaster gegen XSS-Angriffe vorgehen können. Nutzer haben die Möglichkeit NoScript-Addons zu verwenden, diese verhindern das Ausführen von Skripten. Außerdem können Nutzer JavaSkript deaktivieren. Besonders wichtig ist, dass Nutzer die Hyperlinks in E-Mails, Nachrichten und Foren kritisch betrachten und hinterfragen.Webmaster müssen insbesondere auf eine korrekte Programmierung des Quellcode achten, was vor allem bedeutet, dass sie Formulardaten auf ihre Korrektheit überprüft werden müssen. Als Orientierung gelten Whitelists, die erlaubte Daten darstellen. Außerdem werden WAF (Web Application Firewalls) eingesetzt, sie schützen bestimmte Webanwendungen vor unerlaubten Zugriff mit einer sog. Firewall.

Bedeutung SEO

Cross Site Scripting zählt zu dem Black-Hat-SEO. Ziel der XSS-Angriffe ist es, eine Domain zu stärken, indem man eine Website gehackt wird und gezielt Backlinks platziert. Suchmaschinen wie Google setzten diese Links auf die Blacklist, weil sie manipulativer Natur sind und nicht natürlich. Wenn Suchmaschinen die Links jedoch nicht nachvollziehen können, also nicht wissen von wem die Links gesetzt wurden, müssen Webmaster die verschiedenen Gegenmaßnahmen betreiben.