Cross Site Scripting Gefahr durch User-generierte Youtube Links

In diesem Artikel wollen wir darstellen wie einfach es ist, Cross Site Scripting (XSS) per modifizierten Youtube Links durchzuführen. Die Vorraussetzungen dafür sind eine Webplattform, die es Ihren Usern erlaubt Links auf Youtube Videos anzugeben, die dann z.B. im User Profil angezeigt werden.

Hintergrund Info: bei Cross-Site Scripting (XSS) versucht ein Angreifer schädlichen Code in eine Webseite einbetten und um das zu verhindert gibt es die sog. Content Security Policy (CSP). Diese legt fest, welche externen Ressourcen geladen werden dürfen. Doch eine falsche Konfiguration der CSP kann Tür und Tor für Angreifer öffnen, von Datendiebstahl bis hin zur Kontrolle des Benutzerkontos.

Wenn zum Beispiel die CSP so konfiguriert ist, dass sie ‘unsafe-inline’ erlaubt und zudem Skripte von der Domain youtube.com zulässt, kann dies Angreifern eine Angriffsfläche bieten. Webanwendungen, die Nutzern erlauben, Youtube Inhalte hochzuladen und diese zu rendern würden wahrscheinlich intuitiv folgende CSP Policy implementieren:

Content-Security-Policy: 
  default-src 'self';
  script-src 'self' 'unsafe-inline' https://www.youtube.com;
  img-src 'self';
  style-src 'self';
  frame-src 'self' https://www.youtube.com;

Die vermeindlich sicher scheinende CSP Policy lässt sich aber ganz leicht aushebeln, wenn ein Nutzer einen eingebetteten YouTube-Link hochlädt und dabei einen manipulierten Link zu verwendet, wie etwa:

<script src="https://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=D_Qx7mPqDuw&format=json&callback=alert(0)"></script>

Dieser Link führt beim Laden der Seite eine JavaScript-Funktion aus, die eigentlich zu einem Video führen sollte. Stattdessen löst sie jedoch eine ‘alert()’ Funktion aus, was ein klarer Hinweis auf eine XSS-Sicherheitslücke ist. In der Praxis könnte der schädliche Code weitaus gefährlichere Aktionen ausführen, wie etwa das Stehlen von Cookies oder das Umleiten auf Phishing-Seiten.

Die Notwendigkeit einer sorgfältigen Konfiguration der CSP und regelmäßigen Überprüfungen der Sicherheitsrichtlinien ist offensichtlich. Daher ist unbedingt sicherzustellen, dass die CSP stark genug ist, um XSS-Angriffe effektiv zu blockieren, ohne dabei die Funktionalität der Webseite zu beeinträchtigen.

Related Posts

Github Actions lassen sich für Password Spraying Attacken ausnutzen

GitHub Actions bieten eine einfache und kostenlose Möglichkeit IP-Adressen rotieren zu lassen, wodurch sie sich ideal für Password-Spraying-Angriffe eignen. Password Spraying ist eine beliebte Form eines Cyberangriffs, bei dem Angreifer versuchen, mit einem einzigen Passwort den Zugriff auf zahlreiche Benutzerkonten probieren, in der Hoffnung, dass das Passwort auf eines der Konten passt. Im Gegensatz zu herkömmlichen Brute-Force-Angriffen, bei denen zahlreiche Passwörter gegen ein einzelnes Konto getestet werden, zielt Password Spraying darauf ab, die Sicherheitsmechanismen zu umgehen, die bei mehrfachen falschen Versuchen ein Konto sperren würden.

Read More

Gehackte Wordpress verwenden Client Browser für DDOS Angriffe

WordPress-Websites werden zunehmend Ziel von Hackerangriffen, bei denen die Browser von Besuchern für schädliche Operationen missbraucht werden. Eine kürzliche Untersuchung von Sucuri offenbart, dass Cyberkriminelle WordPress-Seiten kompromittieren, um in HTML-Vorlagen bösartigen Code einzuschleusen. Sobald ein Besucher die betroffene Website aufruft, wird dieser Code aus einer spezifischen URL in seinen Browser geladen und initiiert dort unerwünschte Aktivitäten. WordPress-Websites von Hackern dazu missbraucht, ein bösartiges Skript einzuschleusen, das die Browser der Besucher für DDoS-Angriffe (Distributed Denial of Service) gegen bestimmte Websites verwendet. Sobald geladen, zwingt das JavaScript den Browser des Besuchers dazu, HTTP GET-Anfragen an die aufgeführten Websites zu senden, ohne dass die Website-Betreiber oder die Besucher davon wissen.

Read More

Sandbox Escape

In der Welt der Cybersicherheit stellt der “Sandbox-Escape” eine besondere Art von Bedrohung dar. Sandboxing ist eine Sicherheitstechnik, bei der Anwendungen in einer isolierten Umgebung ausgeführt werden, um sie vom restlichen System abzuschotten. Diese Isolierung hilft, potenzielle Schäden durch schädliche Software zu minimieren. Ein Sandbox-Escape tritt auf, wenn ein Programm oder ein Prozess diese Isolierung durchbricht, was schwerwiegende Sicherheitsrisiken nach sich ziehen kann.

Read More