Krytyczna luka w Opera GX pozwalała na cichą instalację modów i wyciek danych z odwiedzanych stron - Security Bez Tabu

Krytyczna luka w Opera GX pozwalała na cichą instalację modów i wyciek danych z odwiedzanych stron

Cybersecurity news

Wprowadzenie do problemu / definicja

W przeglądarce Opera GX ujawniono poważną podatność, która umożliwiała złośliwej stronie internetowej automatyczną instalację modu bez wyraźnej i świadomej zgody użytkownika. Choć GX Mods są projektowane głównie jako funkcja personalizacji interfejsu, w tym przypadku mechanizm ten mógł zostać wykorzystany jako nośnik ataku prowadzącego do wycieku danych z innych odwiedzanych witryn.

Incydent pokazuje, że nawet pozornie nieszkodliwe funkcje kosmetyczne mogą zwiększać powierzchnię ataku, jeśli proces ich instalacji i zakres działania nie są odpowiednio ograniczone. Szczególne znaczenie miało tu połączenie automatycznej aktywacji modu z technikami CSS exfiltration oraz klasą ataków określaną jako XS-Leaks.

W skrócie

  • Złośliwa witryna mogła doprowadzić do cichego pobrania i aktywacji GX Moda.
  • Globalnie stosowane reguły CSS mogły zostać użyte do pośredniego wydobywania danych z innych stron odwiedzanych przez ofiarę.
  • Badacze pokazali scenariusz umożliwiający odtworzenie adresu Gmail zalogowanego użytkownika.
  • Producent usunął lukę w wersji Opera GX 130.0.5847.89.
  • Nie wskazano publicznie dowodów na aktywne wykorzystanie podatności w realnych atakach.

Kontekst / historia

Opera GX od lat promuje mechanizm modów jako element wyróżniający przeglądarkę, szczególnie wśród użytkowników zainteresowanych personalizacją wyglądu, dźwięków i motywów. Tego typu funkcje zwykle nie są postrzegane jako wysokiego ryzyka, jednak ich uprzywilejowana pozycja w przeglądarce sprawia, że błędy projektowe mogą mieć poważne konsekwencje.

W tym przypadku problem nie ograniczał się wyłącznie do instalacji niechcianego komponentu. Kluczowe było to, że aktywowany mod mógł stosować własne arkusze stylów w wielu kontekstach przeglądania. To otworzyło drogę do nietypowego scenariusza, w którym techniki znane z klasycznych ataków CSS injection zostały rozszerzone na wiele odwiedzanych domen, tworząc efekt zbliżony do uniwersalnej iniekcji CSS.

Analiza techniczna

Rdzeń podatności nie polegał na wykonywaniu złośliwego JavaScriptu, lecz na możliwości automatycznego wdrożenia modu oraz nadużyciu globalnie stosowanych reguł CSS. Atak rozpoczynał się po wejściu użytkownika na spreparowaną stronę, która inicjowała pobranie pakietu modu, na przykład z wykorzystaniem ukrytego elementu osadzającego plik instalacyjny.

Jeśli przeglądarka aktywowała taki mod bez wymagania jednoznacznej interakcji użytkownika, jego arkusze stylów zaczynały działać także na kolejnych stronach otwieranych przez ofiarę. Następnie atakujący mógł skierować użytkownika do wybranego zasobu zawierającego interesujące dane zapisane w strukturze HTML lub atrybutach DOM.

Badacze wykorzystali w tym celu selektory atrybutów CSS, które pozwalają sprawdzać, czy wartość danego atrybutu zaczyna się od określonego ciągu znaków. Gdy warunek był spełniony, przeglądarka generowała dodatkowe żądanie sieciowe, na przykład próbując pobrać zasób z serwera kontrolowanego przez atakującego. Sama obserwacja takich żądań pozwalała stopniowo odtwarzać poszukiwane informacje.

Aby zwiększyć skuteczność techniki, dane były dzielone na krótsze fragmenty i testowane partiami za pomocą dużego zestawu reguł CSS. W opisywanym scenariuszu umożliwiło to rekonstrukcję adresu e-mail użytkownika obecnego na określonej stronie konta. Choć atak wymagał starannego przygotowania, był szczególnie niebezpieczny, ponieważ nie wymagał kliknięcia ani dodatkowej akcji ze strony ofiary.

Badacze wskazali również dodatkowy skutek uboczny związany z tą samą ścieżką instalacji: możliwość wywołania awarii przeglądarki w trybie prywatnym po wczytaniu odpowiednio przygotowanego pakietu. Oznacza to, że problem dotyczył nie tylko poufności danych, ale także dostępności i odporności aplikacji.

Konsekwencje / ryzyko

Najpoważniejsze ryzyko dotyczyło naruszenia poufności danych obecnych w odwiedzanych stronach. Mogły to być między innymi adresy e-mail, identyfikatory użytkowników, nazwy kont, wartości pól formularzy lub inne informacje zapisane w atrybutach elementów HTML. Nie była to luka prowadząca do zdalnego wykonania kodu, ale w praktyce umożliwiała cichy wyciek danych między domenami.

Z perspektywy obrońców szczególnie groźne było połączenie kilku czynników: braku wyraźnej zgody użytkownika podczas instalacji, globalnego zasięgu działania stylów modu oraz możliwości szybkiego przekierowania ofiary do strony zawierającej wartościowe dane. Taki model ataku nie przypomina klasycznego phishingu ani typowej infekcji malware, dlatego może pozostać niezauważony zarówno przez użytkownika, jak i przez podstawowe mechanizmy monitorujące.

  • Ryzyko wycieku danych z różnych domen w ramach jednej sesji przeglądania.
  • Możliwość trudnego do wykrycia generowania żądań HTTP inicjowanych przez CSS.
  • Potencjalne nadużycie funkcji personalizacji jako trwałego wektora ataku.
  • Dodatkowy wpływ na stabilność przeglądarki poprzez scenariusze awarii.

Rekomendacje

Najważniejszym działaniem naprawczym jest aktualizacja Opera GX do wersji zawierającej poprawkę lub nowszej. To podstawowy warunek ograniczenia ryzyka związanego z opisaną podatnością.

Poza aktualizacją warto wdrożyć dodatkowe środki bezpieczeństwa, zwłaszcza w środowiskach firmowych i na stacjach wykorzystywanych do pracy z danymi wrażliwymi.

  • Ograniczyć korzystanie z modów i dodatków wyłącznie do zaufanych oraz uzasadnionych przypadków.
  • Monitorować ruch sieciowy pod kątem nietypowych, licznych żądań generowanych podczas renderowania stron.
  • Stosować polityki hardeningu przeglądarek w środowiskach korporacyjnych.
  • Oddzielać konta uprzywilejowane od codziennego przeglądania internetu.
  • Edukować użytkowników, że funkcje kosmetyczne również mogą stanowić wektor ataku.
  • Analizować nietypowe zachowania przeglądarki w środowiskach sandbox, EDR i systemach telemetrycznych.

Dla producentów oprogramowania przypadek ten jest przypomnieniem, że każdy mechanizm automatycznej instalacji komponentów powinien być objęty ścisłym modelem zgody użytkownika, walidacją źródła oraz wyraźnym rozdzieleniem uprawnień między warstwą personalizacji a treścią renderowanych stron.

Podsumowanie

Luka w Opera GX pokazała, że funkcje uznawane za niskiego ryzyka mogą zostać przekształcone w skuteczny mechanizm wycieku danych. Problemem nie był sam język CSS, lecz możliwość jego cichego i globalnego wdrożenia w kontekście przeglądarki użytkownika. W praktyce pozwalało to połączyć automatyczną instalację modu z technikami XS-Leaks i wydobywać wybrane informacje z innych stron.

Dla zespołów bezpieczeństwa to ważny sygnał, że analiza ryzyka w obrębie przeglądarek powinna obejmować nie tylko rozszerzenia i skrypty, ale również mechanizmy personalizacji wpływające na sposób renderowania treści w wielu domenach. Nawet pozornie estetyczna funkcja może stać się elementem łańcucha ataku, jeśli jej uprawnienia okażą się zbyt szerokie.

Źródła

  • https://thehackernews.com/2026/07/opera-gx-flaw-let-malicious-sites-auto.html
  • https://blogs.opera.com/security/2026/07/security-fix-gx-mods-vulnerability/
  • https://www.infosecurity-magazine.com/news/opera-gx-flaw-gx-mods-css/
  • https://portswigger.net/kb/papers/blind-css-exfiltration-exfiltrate-unknown-web-pages-slides.pdf
  • https://portswigger.net/kb/issues/00501301_css-injection-stored