WikiDer > Cross-Site-Scripting
Cross-Site-Scripting (XSS) ist der Name einer Sicherheitslücke in a Internetanwendung. Das Problem wird durch die Eingaben verursacht, die die Webanwendung empfängt (wie z Plätzchen, URL, Anforderungsparameter) wird nicht korrekt verarbeitet und landet daher in der Ausgabe an den Endbenutzer. Dieser Fehler auf der Website kann bösartigen Code (Javascript, VBScript, ActiveX, HTML, Blitz usw.) gespritzt werden. Dies ermöglicht es unter anderem, Sitzungscookies anzuzeigen, die Sitzung eines Benutzers zu übernehmen, die Funktionalität einer Website zu erweitern oder unbeabsichtigte Aktionen für einen Benutzer durchzuführen.
Am Anfang war es Akronym CSS wird verwendet, um Cross-Site-Scripting zu bezeichnen. Um Verwechslungen mit zu vermeiden Cascading Style Sheets und Content-Scramble-System Bald darauf wurde die Abkürzung XSS verwendet, wobei das X für Kreuz steht.
Cross-Site-Scripting wird oft in Verbindung mit Phishing[Quelle?] , die den Endbenutzer dazu verleitet, auf einen mit XSS vorbereiteten Link in einer E-Mail-Nachricht zu klicken. Sobald diese Person auf den Link klickt, wird der XSS-Angriff ausgeführt.
Formen
Mehrere Formen von Cross-Site-Scripting sind möglich:
- Kundenseite
Bei der ersten Art von XSS-Angriff verwendet ein clientseitiges Skript die Eingaben des Benutzers, zum Beispiel Informationen aus dem URL, um einen Teil der Seite zu generieren, ohne diese Informationen zu überprüfen oder zu sichern. - Serverseite ohne Status
Bei der zweiten Angriffsart wird die Eingabe des Benutzers an die Server gesendet und dort wird die Eingabe ungeprüft oder gesichert zur Generierung einer HTML-Seite verwendet. - Serverseite mit Status
Das gleiche passiert mit dem dritten Typ, nur dann sind die Informationen in a Datenbank oder ein anderes System zum Generieren von HTML-Seiten für mehrere Personen. Letzteres kann zB passieren, wenn der eingegebene Text zB in einem Diskussionsforum nicht geprüft wird.
Forschung
Ein Scan eines amerikanischen Sicherheitsunternehmens aus dem Jahr 2009 ergab, dass 39 % der befragten Websites nicht gegen Cross-Site-Scripting geschützt waren.[1]
Im April 2015 stellte der Verbraucherverband fest, dass damals mindestens 38 der hundert größten niederländischen Webshops für XSS-Angriffe anfällig waren.[2]
Beispiel
Ein Beispiel für eine Clientseite XSS anfälliges Skript erstellt in PHP:
// $_GET["MESSAGE"] = "Willkommen!";wenn(isset($_GET["BOTSCHAFT"]))Echo$_GET["BOTSCHAFT"];?>
Wenn der Angreifer mag $_GET["NACHRICHT"] keine normale Nachricht (wie erwartet) sondern bösartigen Code eingibt, passiert folgendes:
// $_GET["MESSAGE"] = "";wenn(isset($_GET["BOTSCHAFT"]))Echo$_GET["BOTSCHAFT"];?>Dann bekommt der Angreifer ein Javascript Alarm mit dem Text: XSS.
Es ermöglicht dem Angreifer auch, bösartigen Code auszuführen.
Ein Beispiel für einen kleinen Code, der (normalerweise) nicht anfällig ist:
// $_GET["MESSAGE"] = "";wenn(isset($_GET["BOTSCHAFT"]))Echohtmlentitäten($_GET["BOTSCHAFT"]);?>Hier führt der Webbrowser den Code nicht aus.
| Quellen, Anmerkungen und/oder Verweise |