Opera hat eine kritische Schwachstelle im GX Mods-Mechanismus seines Gaming-Browsers Opera GX behoben, die es einer bösartigen Website erlaubte, ohne einen einzigen Klick des Nutzers einen Browser-Mod zu installieren und anschließend vertrauliche Daten zu exfiltrieren – einschließlich der Gmail-E-Mail-Adresse – von den Seiten, die das Opfer besucht. Der Fix ist in Version 130.0.5847.89 enthalten; eine CVE-Kennung wurde nicht vergeben. Laut dem offiziellen Opera-Bulletin wurden keine Hinweise auf eine Ausnutzung der Schwachstelle in realen Angriffen gefunden, jedoch ist ein öffentlicher PoC-Exploit verfügbar. Nutzer von Opera GX sollten sicherstellen, dass ihre Browserversion aktuell ist, indem sie dies auf der Seite opera://about überprüfen.
Angriffsmechanismus: von der Auto-Installation des Mods bis zum Datenabfluss
GX Mods ist ein Customization-System von Opera GX, mit dem sich Themes, Sounds, Wallpaper und CSS-Styles der besuchten Websites verändern lassen. Mods werden im Format .crx verteilt (ähnlich wie Extensions), können nach Angaben der Forscher jedoch kein JavaScript ausführen und fordern keine Berechtigungen an. Das Kernproblem lag in der Installations-Pipeline: Opera lud den Mod automatisch herunter und aktivierte ihn, ohne beim Nutzer eine Bestätigung einzuholen.
Wie die Forschenden von Zhero Web Security beschreiben, konnte eine bösartige Seite die Installation eines Mods über ein verstecktes iframe anstoßen, das auf die .crx-Datei zeigte. Der einzige sichtbare Indikator war eine Benachrichtigungsleiste unter der Adresszeile mit einer Schaltfläche „Entfernen“, doch der Angriff war innerhalb von Sekunden abgeschlossen – bevor der Nutzer die Benachrichtigung lesen konnte.
Für sich genommen wirkt die Einschleusung eines „kosmetischen“ Mods harmlos, doch der kritische Punkt besteht darin, dass das CSS des Mods auf alle besuchten Seiten angewendet wird und nicht nur auf eine einzelne. Die Forschenden bezeichneten dies als universal CSS injection – im Gegensatz zu einer üblichen CSS injection, die auf den Kontext einer konkreten Seite beschränkt ist. Dieses Konzept erweitert bereits dokumentierte Techniken wie Blind CSS Exfiltration von PortSwigger, bei denen CSS exfiltration auf eine einzelne Site begrenzt bleibt.
XS-Leak-Technik: zeichenweises Auslesen von Daten über CSS
CSS kann den Inhalt einer Seite nicht direkt auslesen und an einen externen Server senden. Nach Angaben der Forschenden lässt sich jedoch mit CSS-Attributselektoren prüfen, ob ein Attributwert eines HTML-Elements mit einer bestimmten Zeichenfolge beginnt, und bei einem Treffer ein Hintergrundbild vom Server des Angreifers laden. Durch das systematische Durchprobieren aller möglichen Kombinationen kann ein Angreifer den Wert Zeichen für Zeichen rekonstruieren – eine klassische XS-Leak-Technik (cross-site leak).
Zur Demonstration zielten die Forschenden auf die Seite myaccount.google.com/contactemail ab, auf der die E-Mail-Adresse in drei HTML-Attributen enthalten ist. Der Mod enthielt rund 150.000 CSS-Regeln, die alle möglichen dreizeichenlangen Fragmente (Trigramme) der Adresse abdeckten. Ein Skript auf Angreiferseite sammelte die Treffer und rekonstruierte daraus die vollständige Adresse. Bemerkenswert ist, dass der erste Versuch mit vier Zeichen langen Fragmenten rund 5,6 Mio. Regeln und etwa 880 MB CSS erforderte, was in einen Absturz des Browsers mündete.
Die Angriffskette sah wie folgt aus: Das Opfer landet auf einer bösartigen Seite → der Mod wird innerhalb von Sekunden installiert → JavaScript leitet den Browser auf die Seite des Google-Kontos weiter → das CSS des Mods ist bereits aktiv und sendet beim Rendern der Seite Anfragen an den Server des Angreifers. Der gesamte Ablauf kam ohne einen einzigen Klick aus.
Vorgeschichte: ignorierte Warnung aus dem Jahr 2023
Die automatische Installation von Mods ohne Bestätigung war kein neues Problem. Wie Forscher Renwa bereits 2023 beschrieb, ließ sich genau diese Eigenschaft nutzen, um einen installierten Mod zu einem vollwertigen Extension hochzustufen und zum address bar spoofing des Browsers einzusetzen. Opera beseitigte den konkreten Vektor zum Spoofing der Adresszeile, ließ nach vorliegenden Informationen jedoch den grundlegenden Auto-Installationsmechanismus unverändert – genau auf diesem baut der neue Angriff auf.
Zusätzliche Schwachstelle: Absturz im privaten Modus
Die Forschenden dokumentierten zudem einen zweiten, gröberen Vektor: Das Laden einer .crx-Datei im privaten (Incognito-)Modus führte zu einem Absturz des Browsers mit Verlust aller offenen Tabs. Nach Angaben der Forschenden war davon nicht nur Opera GX, sondern auch der reguläre Opera betroffen, da jede .crx-Datei die Installations-Pipeline für Extensions aktivierte. Es ist anzumerken, dass das Opera-Sicherheitsbulletin dieses Problem nicht erwähnt, und in öffentlich zugänglichen Quellen fehlt eine unabhängige Bestätigung der Auswirkungen auf den regulären Opera.
Offenlegungsprozess und Bewertung der Schwere
Nach Angaben der Forschenden verlief der Offenlegungsprozess über die Plattform Bugcrowd nicht reibungslos: Die Triage-Analysten stuften die Schwachstelle zunächst als P3 (mittlere Schwere) ein. Um das tatsächliche Ausmaß der Bedrohung zu demonstrieren, fingen die Forschenden die Trigramme des Analysten selbst ab, rekonstruierten dessen Gmail-Adresse und fügten sie in den Bericht ein. Daraufhin wurde das Rating auf P1 (maximale Schwere) angehoben, und den Forschenden wurde dem Vernehmen nach die maximale Belohnung von 5.000 US-Dollar ausgezahlt.
Opera charakterisiert den Angriff in seinem Bulletin als schwer umzusetzen: Das Opfer musste eine bösartige Seite aufrufen, den Mod installiert bekommen und durfte keine Zeit haben, auf die Entfernen-Schaltfläche zu klicken, bevor die Weiterleitung abgeschlossen war. Die Demonstration der Forschenden zeigt jedoch, dass die Weiterleitung innerhalb von Sekunden ausgelöst wurde – schneller, als ein Nutzer die Benachrichtigung lesen konnte.
Bewertung der Auswirkungen
Die Schwachstelle betraf Nutzer von Opera GX mit Versionen vor 130.0.5847.89. Auch wenn der nachgewiesene PoC nur die Gmail-Adresse auslas, weisen die Forschenden darauf hin, dass sich derselbe Ansatz auf alle Werte anwenden lässt, die eine Site in HTML-Attributen speichert – Benutzernamen, IDs und andere Daten. Opera GX richtet sich an Gamer, die Mods und Customization intensiv nutzen, was Social Engineering zur Lenkung auf eine bösartige Seite potenziell effektiver macht.
Empfehlungen
- Aktualisieren Sie Opera GX auf Version 130.0.5847.89 oder neuer. Prüfen Sie die aktuelle Version auf der Seite
opera://about. - Überprüfen Sie die Liste der installierten Mods – entfernen Sie alle unbekannten oder unerwartet aufgetauchten GX Mods.
- Es gibt keine Workarounds außer dem Update: Der Angriff erforderte keine Nutzerinteraktion, und eine Blockierung auf Konfigurationsebene war nicht möglich.
- Organisationen, die die Nutzung von Opera GX in Unternehmensumgebungen zulassen, sollten diesen Browser in Richtlinien für erzwungene Updates einbeziehen.
Dieser Fall zeigt anschaulich, wie eine scheinbar „harmlose“ Customization-Funktion – CSS-Styles ohne JavaScript und ohne Berechtigungen – zu einem Vektor für Datenabflüsse wird, wenn ihr Geltungsbereich auf alle besuchten Sites ausgeweitet wird und die Installation ohne Zustimmung des Nutzers erfolgt. Opera hat die konkrete Schwachstelle behoben, doch die übergeordnete architektonische Lehre ist breiter: Jeder Mechanismus, der automatisch Inhalte in den Kontext beliebiger Webseiten einschleust, erfordert eine ausdrückliche Bestätigung des Nutzers – unabhängig davon, wie eingeschränkt dieser Inhalt zunächst erscheint.