Eine Browser-Erweiterung mit mehr als 30.000 Installationen hat die Twitch-OAuth-Token von Nutzern gegenüber einem kommerziellen Bot-Dienst offengelegt. Zum Zeitpunkt der Berichterstattung war die Erweiterung weiterhin über die offiziellen Stores von Chrome und Firefox verfügbar.
Sicherheitsforscher stellten fest, dass Twitch Enhanced Viewer | JeetBot Authentifizierungsdaten aus Twitch-Anfragen extrahiert. Anschließend sendet die Erweiterung die Anmeldedaten über Proxy-Server von Drittanbietern.
Twitch-Erweiterung sammelt OAuth-Token
Twitch Enhanced Viewer | JeetBot präsentiert sich als Tool zur Verbesserung der Streaming-Plattform. Zu den beworbenen Funktionen gehören das Blockieren von Werbung und das Erzwingen der Videowiedergabe in hoher Auflösung.
Die Erweiterung behauptet außerdem, regionale Beschränkungen umgehen und automatisch Kanalpunkte sammeln zu können. Nutzer können sie über den Chrome Web Store und Firefox Add-ons herunterladen.
Forscher des Anwendungssicherheitsunternehmens Socket entdeckten jedoch bedenkliches Verhalten in der Erweiterung. Sie fängt den vom Twitch-Webclient verwendeten Authorization-Header ab und extrahiert das OAuth-Token des Nutzers.
Anschließend sendet die Software die Twitch-OAuth-Token über Proxy-Server. JeetBot, ein kommerzieller russischsprachiger Streaming- und Chatbot-Dienst, betreibt diese Server.
Das Unternehmen bietet Tools für Twitch, Kick und VK Live an.
Token erscheinen in Proxy-Protokollen
Aktuelle Versionen der Erweiterung leiten Anfragen für Twitch-Video-Playlists über die Proxy-Infrastruktur von JeetBot um. Dabei fügt die Software das Token als Authentifizierungsparameter zur umgeleiteten URL hinzu.
Dadurch erscheinen die Anmeldedaten im Klartext in den Anfrageprotokollen des Proxy-Servers. Der Betreiber des Dienstes kann sie anschließend abrufen, ohne Zugriff auf den Browser des Nutzers zu benötigen.
Dieser Vorgang findet jedes Mal statt, wenn ein betroffener Nutzer einen Twitch-Kanal ansieht. Die Erweiterung schließt jedoch zehn russischsprachige Kanäle aus, die direkt in ihrem Code aufgeführt sind.
Das Platzieren sensibler Anmeldedaten in einer URL birgt mehrere Sicherheitsrisiken. Server, Überwachungstools und andere Systeme zeichnen häufig vollständige URLs in ihren Protokollen auf.
Daher kann jeder, der Zugriff auf diese Aufzeichnungen hat, möglicherweise auch auf die Token zugreifen.
Frühere Versionen nutzten direktere Sammelmethoden
Socket berichtete, dass frühere Versionen der Erweiterung direktere Mechanismen zum Sammeln von Twitch-OAuth-Token verwendeten.
Der Entwickler bestätigte die frühere Praxis in einer über Firefox Add-ons veröffentlichten Beschreibung. Laut einer maschinellen Übersetzung erklärte der Entwickler, dass die Erweiterung OAuth-Token an seinen Server übermittelte.
In dem Hinweis wurde behauptet, dass das Senden des Tokens notwendig sei, um Streams in den Auflösungen 1080p und 1440p zu unterstützen.
Die Datenschutzerklärung im Chrome Web Store vermittelte jedoch eine andere Botschaft. Dort hieß es, dass der Entwickler keine Kundendaten sammeln oder verwenden würde.
Die Erklärung umfasste außerdem den Verkauf von Informationen an Dritte sowie deren Übertragung außerhalb der Kernfunktionalität der Erweiterung.
Dieser offensichtliche Widerspruch wirft weitere Bedenken darüber auf, ob Nutzer korrekte Informationen darüber erhielten, wie die Software mit ihren Anmeldedaten umging.
Offengelegte Token schaffen Kontorisiken
OAuth-Token ermöglichen Anwendungen den Zugriff auf Benutzerkonten, ohne wiederholt nach einem Passwort fragen zu müssen. Ihre genauen Möglichkeiten hängen von den während der Authentifizierung gewährten Berechtigungen ab.
Wenn jemand ein gültiges Token stiehlt, kann er es möglicherweise verwenden, um mit dem zugehörigen Konto zu interagieren. In einigen Fällen kann der Angreifer den Zugriff behalten, bis das Token abläuft oder vom Dienst ungültig gemacht wird.
Das Ändern eines Kontopassworts beendet möglicherweise nicht sofort jede aktive Sitzung. Daher sollten betroffene Nutzer bestehende Sitzungen widerrufen und sich erneut authentifizieren.
Der Vorfall zeigt außerdem die Risiken, die entstehen, wenn authentifizierter Datenverkehr über Systeme von Drittanbietern geleitet wird. Selbst wenn ein Dienst Anmeldedaten nicht aktiv stiehlt, können unsichere Protokollierungsverfahren sie dennoch offenlegen.
Entwickler sollten Authorization-Header und Token entfernen, bevor sie Anfragen an externe Infrastruktur weiterleiten. Außerdem sollten sie vermeiden, geheime Daten in URL-Parameter aufzunehmen.
Erweiterung bleibt in offiziellen Stores verfügbar
Zum Zeitpunkt der Veröffentlichung war Twitch Enhanced Viewer | JeetBot weiterhin über beide offiziellen Stores für Browser-Erweiterungen verfügbar.
Die Präsenz auf diesen Marktplätzen könnte Nutzer dazu veranlasst haben, der Software zu vertrauen. Eine offizielle Verbreitung garantiert jedoch nicht, dass eine Erweiterung sensible Informationen sicher verarbeitet.
Der Herausgeber hatte bis zur Veröffentlichung des Berichts nicht auf Fragen zu den Ergebnissen geantwortet.
Socket betrachtet die Erweiterung als Sicherheitsrisiko. Daher empfehlen die Forscher, sie aus allen betroffenen Browsern zu entfernen.
Nutzer sollten anschließend alle aktiven Twitch-Sitzungen trennen, bevor sie sich erneut anmelden. Dadurch sollten alle OAuth-Token ungültig werden, die die Erweiterung möglicherweise übertragen hat.
Betroffene Nutzer sollten außerdem verbundene Anwendungen überprüfen und Dienste entfernen, die sie nicht mehr erkennen oder verwenden.


0 Kommentare zu „Twitch-Erweiterung legt OAuth-Token von 30.000 Nutzern offen“