Definition Cross Site Scripting (XSS)

Was ist Cross-Site-Scripting (XSS)?

| Autor / Redakteur: Tutanch / Peter Schmitz

Cross Site Scripting (XSS) ist eine häufig verwendete Angriffsmethode im Internet, bei der Schadcode in eine vermeintlich vertrauenswürdige Webseite eingeschleust wird.
Cross Site Scripting (XSS) ist eine häufig verwendete Angriffsmethode im Internet, bei der Schadcode in eine vermeintlich vertrauenswürdige Webseite eingeschleust wird. (Bild: Pixabay / CC0)

Cross Site Scripting (XSS) ist eine der am häufigsten genutzten Angriffsmethode im Internet. Ziel des webseitenübergreifenden Skriptings ist es, an vertrauliche Daten zu gelangen, Anwendungen zu übernehmen oder sonstigen Schaden anzurichten. XSS bettet den Angriffscode in einen vermeintlich sicheren Kontext ein.

Die Abkürzung XSS steht für Cross Site Scripting und bezeichnet eine der häufigsten Angriffsmethoden im Internet. Durch eine Sicherheitslücke auf dem Client oder den Server gelingt es dem Angreifer, seinen Schadcode in eine vermeintlich vertrauenswürdige Umgebung einzubetten. Mit XSS lassen sich Internetseiten verändern, Browser übernehmen oder vertrauliche Informationen wie Passwörter entwenden.

Cross Site Scripting zählt zu den aktiven Angriffsmethoden und kann als Grundlage für weitere Angriffe verwendet werden. Die Angriffsmethode nutzt die im Internet weit verbreiteten Skriptsprachen wie JavaScript. XSS kann erfolgreich sein, wenn die Webanwendung die entgegengenommenen Daten nicht ausreichend prüft und sie anschließend weiterverarbeitet oder weiterreicht. So lassen sich Skripte an einen Webserver oder an einen Browser senden, der diese ausführt. Cross Site Scripting unterscheidet drei verschiedene Angriffsarten. Diese sind:

  • reflektiertes XSS
  • persistentes XSS
  • lokales XSS

Reflektiertes Cross Site Scripting

Reflektiertes Cross Site Scripting läuft serverseitig ab. Ein Opfer klickt eine präparierte URL an, in der schädlicher Code eingefügt ist. Der Server übernimmt diesen Code aufgrund mangelnder Absicherung und generiert eine dynamisch veränderte Webseite. Der Anwender sieht eine vom Angreifer manipulierte Webseite und hält sie für vertrauenswürdig. Von ihm gemachte Eingaben lassen sich anschließend beispielsweise an einen Server des Angreifers weiterleiten.

Reflektiertes Cross Site Scripting lässt sich sehr gut für Phishing-Angriffe verwenden. Da der Nutzer die durch XSS veränderten Webseiten für echt hält, hegt er keinen Verdacht und gibt vertrauliche Anmeldedaten ein, die der Angreifer erhält.

Persistentes Cross Site Scripting

Beim persistenten XSS ist ebenfalls eine Sicherheitslücke auf dem Server der Ausgangspunkt des Angriffs. Der Angreifer übergibt den Schadcode durch das Aufrufen eines manipulierten Links an den Server. Dieser speichert anschließend die Veränderungen dauerhaft (persistent) in seiner Datenbank. Der Anwender selbst muss keinen manipulierten Link aufrufen. Durch die Veränderung der Datenbank des Webservers können allen Besuchern beim Aufruf des regulären Links manipulierte Seiten angezeigt werden.

Oft nutzen Angreifer ungenügend geschützte Foren auf dem Webserver, um ihren Code zu übermitteln. Ein einfacher Foreneintrag mit dem schädlichen Skriptcode kann schon ausreichend sein. Anschließend kann der manipulierte Webserver dazu verwendet werden, Zugangsdaten von Anwendern abzugreifen.

Lokales Cross Site Scripting

Für lokales XSS ist keine Sicherheitslücke auf einem Webserver erforderlich. Der Schadcode wird direkt an den Anwender gesendet und beispielsweise im Browser ausgeführt, ohne dass der User dies bemerkt. Ausgangspunkt des Angriffs ist das Anklicken eines manipulierten Links durch den Anwender. Aufgrund des im Browser platzierten Scripts, lassen sich auch statische Webseiten in veränderter Form auf dem Clientrechner anzeigen. Besitzt der Browser besondere Rechte auf dem Rechner, ist es zudem möglich, lokale Daten auf dem Gerät zu verändern.

Ein möglicher Angriff per lokalem Cross Site Scripting kann folgendermaßen ablaufen. Ein Anwender bekommt per Mail einen manipulierten Link geschickt und klickt diesen an. Durch das Öffnen des Links integriert der Browser ein clientseitiges JavaScript, das die schädliche Anwendung startet.

Schutzmaßnahmen gegen XSS

Clientseitig kann man sich gegen lokales Cross Site Scripting schützen, indem man dem Browser verbietet, Skripte wie JavaScript auszuführen. Zudem sind Addons für Browser erhältlich, die die Ausführung von Skripten unterbinden. Grundsätzlich ist es wichtig, per E-Mail empfangene Links kritisch zu prüfen und nicht beliebig aufzurufen. Webmaster schützen ihre Server vor reflektiertem oder persistentem Cross Site Scripting durch Absicherung des Server-Quellcodes. Sämtliche vom Server zu verarbeitenden Daten sind vor der Ausführung zu prüfen. Hierfür lassen sich Whitelists mit den erlaubten Daten einsetzen. Auch das generelle Umwandeln von bestimmten Skript-Zeichen ist eine beliebte Methode. Dies verhindert, dass ausführbare Metazeichen der Skripte vom Server eingelesen werden.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Die beliebtesten Web Application Firewalls 2018

IT-Awards 2018

Die beliebtesten Web Application Firewalls 2018

Wer seine Webanwendungen wirksam vor unerwünschten Zugriffen schützen will, nutzt eine Web Application Firewall (WAF). Moderne Web Application Firewalls überwachen den Datenverkehr auf Anwen­dungs­ebene direkt auf dem jeweiligen Webserver und greifen ein, sobald verdächtige Aktivitäten im Traffic auffallen. lesen

Kontrollierte Zerstörung

Security-Startups im Blickpunkt: Crashtest Security

Kontrollierte Zerstörung

Im Automobilbau gehört ein Crashtest inzwischen zum Standardrepertoire bei der Entwicklung neuer Fahrzeuge. Beim Betrieb von Webanwendungen empfiehlt das Münchner Startup-Unternehmen Crashtest Security einen ähnlichen Ansatz: Anwendung einem Penetrationstest zu unterziehen und Schwachstellen aufdecken, bevor ein Hacker sie zu bösartigen Zwecken missbrauchen kann. lesen

Sicherheit für Web­an­wen­dungen mit Zed Attack Proxy

Tool-Tipp: OWASP Zed Attack Proxy (ZAP)

Sicherheit für Web­an­wen­dungen mit Zed Attack Proxy

Administratoren oder Entwickler, die Webanwendungen betreiben, kämpfen ständig mit Sicherheitslücken. Das Open-Source-Tool „Zed Attack Proxy“ (ZAP) gehört zum „Open Web Application Security Project“ (OWASP) und ermöglicht automatisiert Web-Apps auf Sicherheitslücken zu überprüfen und Angriffe durchzuführen. lesen

HTTPS mit TLS 1.3 in der Praxis

Transportverschlüsselung Teil 3

HTTPS mit TLS 1.3 in der Praxis

Wem die Sicherheit von HTTPS-Verbindungen am Herzen liegt, der ist gut beraten, die TLS-Konfiguration zu überdenken, denn ohne eine moderne Transportverschlüsselung sind gute Vorsätze beim Datenschutz nur ein Papiertiger. Zwar ist TLS 1.3 nun offiziell aus den Startlöchern, aber die Implementierung ist leider voller Tücken und Überraschungen. lesen

Schutz für Web-Anwendungen

Im Test: Airlock Web Application Firewall 7.0

Schutz für Web-Anwendungen

Die Airlock Web Application Firewall von Ergon Informatik ist eine Lösung zum Absichern von Web-Anwendungen. Sie arbeitet als Reverse Proxy und terminiert HTTP(S)-Verbindungen. Die Steuerung erfolgt über ein zentrales Management-Interface und das Produkt bietet damit einen zentralen Punkt, um Policies für den Anwendungszugriff umzusetzen. Außerdem bringt sie eine große Zahl an Filterfunktionen mit, unter anderem ICAP Content-Filtering, sowie SOAP/XML-, AMF- und JSON-Filter. lesen

Schwachstellen in Webanwendungen

Spannende Zahlen aus 2017

Schwachstellen in Webanwendungen

Sicherheitslücken in Webanwendungen nehmen immer weiter zu, neben bekannten Kategorien wie Cross-Site Scripting gibt es auch neue Bedrohungen wie „unsichere Deserialisierung“. Mit dem Erfolg des Internet der Dinge (IoT) wachsen die Risiken weiter und beeinflussen die Sicherheitslandschaft dauerhaft. WordPress und PHP bleiben „dominierend“ im Hinblick auf veröffentlichte Sicherheitslücken in Content-Management-Systemen beziehungsweise serverseitigen Technologien. lesen

Kali Linux installieren und Hacking-Lab aufsetzen

Kali Linux Workshop, Teil 1

Kali Linux installieren und Hacking-Lab aufsetzen

Angehende Sicherheitsexperten, Pentester und IT-Verantwortliche finden in Kali eine umfangreiche Plattform, um digitale Attacken zu planen und durchzuführen. Warum sollte man dies tun? Zum einen um sich mit potentiellen Angriffen auf die eigenen Systeme auseinanderzusetzen und zum zweiten um interne oder externe Schwachstellentests besser zu verstehen. Im ersten Teil stellen wir Kali genauer vor und erklären, wie sich ein Hacking-Lab aufzusetzen lässt. lesen

Grundlagen der Web Application Firewalls

Umfassender Schutz für Web-Anwendungen

Grundlagen der Web Application Firewalls

Eine Web Application Firewall (WAF) überwacht und schützt Webanwendungen, die über das HTTP-Protokoll arbeiten. Eine WAF arbeitet regelbasiert, um Angriffsarten wie zum Beispiel Cross Site Scripting (XSS), Angriffe oder SSL-Injections abzuwehren oder aktuelle Applikationen vor neu entdeckten Sicherheitslücken mittels virtueller Patches zu schützen. lesen

Security Awareness für Programmierer

Security-Startups im Blickpunkt: Securai

Security Awareness für Programmierer

Hacker, Malware und Cyberspionen wirksam den Zugriff auf digitale Unternehmenswerte zu verwehren ist nicht einfach. Man investiert dafür in clevere Software, durchdachte Prozesse und letztendlich auch in Security Awareness beim Mitarbeiter, der als engagierter Wächter ebenfalls Bedrohungen erkennen und eliminieren soll. Gerade Gruppen wie Programmierer bleiben bei diesen Maßnahmen aber oft inhaltlich ausgeschlossen, da man nicht auf Ihre Bedürfnisse eingeht. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45208724 / Definitionen)