Welcher Schaden kann durch XSS konkret entstehen?
Sicherheitsexperten unterscheiden insgesamt drei Arten von XSS, von denen besonders zwei weit verbreitet sind: Reflektiertes XSS, bei dem der eingeschleuste Schadcode umgehend an den User versandt wird. Beispielsweise, indem der Angreifer eine URL verschickt, deren Ziel-Website Code mit Ausnutzung einer XSS-Lücke enthält. Und persistentes XSS, bei dem der Schadcode zunächst in der Datenbank der angegriffenen Website gespeichert wird. Erst wenn ein Anwender dieser Inhalt von einem User aufgerufen wird, wird der Schadcode ausgeführt. Noch eher selten ist dagegen DOM-XSS, bei dem in statischen HTML-Seiten dank Javascript Schadcode eingefügt wird, indem eine verseuchte URL geladen wird. Das klappt aber nur bei Browsern, die Sonderzeichen in der URL nicht verarbeiten.
Das kann ein Angreifer erreichen, wenn er eine XSS-Lücke ausnutzt:
Website Defacement
Das Aussehen der Website kann durch XSS verändert respektive entstellt werden. Defacement nennt man diesen Vorgang, wenn ein Hacker eine XSS-Lücke ausnutzt und zum Beispiel seine eigenen CSS-Daten in die fremde Website einbaut (CSS - Cascading Style Sheets - sind das Hauptwerkzeug, mit dem das Aussehen einer Website bestimmt wird). So kann der Angreifer die Farbgebung auf der Seite verändern oder Seitenelemente ausblenden beziehungsweise deren Gestaltung ändern. Im weitesten Sinne kann man es auch zum Website Defacement zählen, wenn der Angreifer sich einen Spaß erlaubt und störende Popups einblendet.
Oder aber der Hacker lädt seine eigenen Bilder auf die attackierte Seite hoch. Website Defacement mag zunächst als eher lästig und fast wie ein eher harmloser Scherz erscheinen, weil dadurch keine sensiblen Daten verloren gehen und auch keine Malware auf den Rechner des Besuchers eingeschleust wird. Doch auch durch Defacement kann spürbarer Schaden entstehen: Wenn zum Beispiel die Kunden einen seriösen Online-Shops plötzlich leicht bekleidete Damen in anzüglichen Posen begrüßen, ist der Imageschaden und Vertrauensverlust für den Shop-Betreiber immens.
Datenverlust und -Diebstahl
Login-Daten wie Nutzernamen und Passwörter, aber auch Cookie-Inhalte können aufgrund von XSS ausgelesen werden und damit in falsche Hände geraten. Angreifer können Session-IDs abfangen, damit dessen Sitzung übernehmen und unter seinem Namen agieren – beispielsweise in einem Online-Shop. Selbst wenn nur Cookies und keine Session-IDs erobert werden, lässt sich damit beispielsweise das Einkaufsverhalten eines Anwenders rekonstruieren. Ebenso können die Inhalte von Webanwendungen ausgelesen werden.
Oder der Anwender wird gegen seinen Willen auf eine andere Seite weiter geleitet. Voraussetzung dafür, dass ein Anwender in eine XSS-Falle tappt, ist, dass der XSS-Code in einem vertrauenswürdigen Umfeld platziert wird.
Serverüberlastung/DDoS-Attacken
XSS kann auch dazu benutzt werden, um von gekaperten Rechnern aus immer wieder Anfragen an einen bestimmten Server abzuschicken. Passiert das von vielen PCs aus, kann der angegriffene Server in die Knie gehen und nicht mehr antworten.