2 Punkte von GN⁺ 2024-01-27 | 1 Kommentare | Auf WhatsApp teilen

Entdeckung von XSS auf Chess.com

  • Während ich Schach als Hobby spielte und mit Technik herumexperimentierte, entdeckte ich auf Chess.com eine XSS-Schwachstelle.
  • Chess.com ist die größte Schachseite im Internet mit mehr als 100 Millionen Mitgliedern.

Überblick

  • Anfang 2023 begann ich, viel auf Chess.com zu spielen.
  • Ich brachte einen Freund dazu, sich auf der Seite anzumelden, und wir wurden über die Freundesfunktion sofort Freunde.
  • Ich fragte mich, ob sich ähnlich wie beim MySpace-Wurm automatisch Freunde hinzufügen lassen.
  • Ich erstellte ein neues Konto und entdeckte im Netzwerk-Tab der Entwicklertools die URL zum automatischen Hinzufügen von Freunden.

Mittelspiel

  • Ich versuchte XSS mit dem TinyMCE-Rich-Text-Editor.
  • Mit dem Burp-Proxy fügte ich direkt HTML-Code in die „About“-Beschreibung ein.
  • Ich prüfte die TinyMCE-Konfiguration und erstellte mithilfe der Style-Eigenschaft background-image eine XSS-Payload.
  • Ich testete verschiedene Symbole und fand heraus, wie sich XSS ausführen ließ.
  • Schließlich entwickelte ich eine Methode, um Cookies und JavaScript-Objekte zu extrahieren.

Endspiel

  • Ich arbeitete daran, XSS vollständig zur Ausführung zu bringen.
  • Mit dem Attribut srcset fand ich eine neue Methode, um breitere JS-Syntax zu verwenden.
  • Mithilfe von Base64-Kodierung führte ich die XSS-Payload direkt aus.
  • Da der TinyMCE-Editor auf der gesamten Website verwendet wird, ist die Auswirkung groß.

Analyse

  • Die eigentliche Ursache der Schwachstelle ist die Funktion zum erneuten Hochladen von Bildern.
  • Die Prüfung des Bild-Hostings lässt sich umgehen, indem der Domainname von Chess.com eingebunden wird.
  • Der Rich-Text-Editor erlaubt verschiedene HTML-Elemente und eignet sich daher gut, um XSS zu erreichen.
  • TinyMCE war auf dem neuesten Stand, aber eine Sanitization des finalen HTML fehlte.
  • Chess.com sollte das endgültige HTML, das den Nutzern angezeigt wird, sanitizen.

GN⁺-Meinung:

  1. Dieser Blogpost beschreibt auf interessante Weise den Prozess, Sicherheitslücken zu entdecken und zu melden, die auf großen Online-Plattformen wie Chess.com auftreten können.
  2. XSS-Schwachstellen können eine ernsthafte Bedrohung für die Sicherheit von Websites darstellen, und das Finden und Beheben solcher Lücken ist für den Schutz der Privatsphäre der Nutzer sehr wichtig.
  3. Der Beitrag betont für Softwareentwickler und Sicherheitsexperten, wie wichtig es ist, Schwachstellen in Komponenten von Webanwendungen wie Rich-Text-Editoren zu erkennen und zu verhindern.

1 Kommentare

 
GN⁺ 2024-01-27
Hacker-News-Kommentare
  • Vorstellung und Hintergrundinformationen des ursprünglichen Autors (OP)

    • Ein 17-jähriger britischer Schüler, der seine A-Levels absolviert und zwischen Universität und einem Degree Apprenticeship abwägt.
    • Laut GitHub-Profil ist er Kernmitglied von HashPals, der Schöpfer von Search-That-Hash und Maintainer eines Open-Source-Repositories für freie Software für ReMarkable-Tablets.
    • Es gibt eine positive Einschätzung zu lichess.org sowie einen Hinweis auf das Teilen technischer Interessen.
  • Kommentar zu Funktionen im Zusammenhang mit dem MySpace-Wurm

    • Der MySpace-Wurm aus der Zeit um 2005 wird erwähnt, wobei der Autor angibt, damals noch nicht geboren gewesen zu sein.
    • Es wird darauf hingewiesen, dass ein anderer Nutzer beobachtet und dokumentiert habe, wie die Züge in seinem Schachspiel von jemand anderem gesteuert wurden, und das Problem auf chess.com gemeldet habe, ohne dass es behoben worden sei.
  • Technische Fragen zur XSS-Sicherheitslücke

    • Es wird gefragt, warum das PHPSESSID-Cookie nicht HttpOnly ist und weshalb eine bekannte XSS-Sicherheitslücke nicht behoben wurde.
    • Außerdem wird Interesse an einem XSS-Bug-Bounty-Report geäußert sowie Verständnis dafür, dass der Prozess schwierig sein kann.
  • Meinung zum Rich-Text-Editor von chess.com

    • Es gibt eine amüsierte Reaktion darauf, den Rich-Text-Editor als „heiligen Gral“ zu bezeichnen, verbunden mit der Sorge, dass selbst auf einer großen Website solche Funktionen Schwachstellen haben können.
  • Frage zu einem technischen Akronym

    • Es wird nach der Bedeutung von „OSRF“ gefragt und spekuliert, ob damit ähnlich wie bei CSRF „Own-Site Request Forgery“ gemeint ist.
  • Technische Frage zu Subdomain-Redirects

    • Es wird um eine Erklärung gebeten, wie ein Redirect von einer Subdomain (chess.com.foo.bar) die Same-Origin-Policy umgehen konnte.