
Co znajdziesz w tym artykule?
- 1 Wprowadzenie do problemu / definicja luki
- 2 W skrócie
- 3 Kontekst / historia / powiązania
- 4 Analiza techniczna / szczegóły luki
- 5 Praktyczne konsekwencje / ryzyko
- 6 Rekomendacje operacyjne / co zrobić teraz
- 7 Różnice / porównania z innymi przypadkami
- 8 Podsumowanie / kluczowe wnioski
- 9 Źródła / bibliografia
Wprowadzenie do problemu / definicja luki
Nowa kampania „GhostPoster” wykorzystuje nieoczywistą technikę ukrywania złośliwego kodu wewnątrz pliku logo (PNG) rozszerzenia Firefoksa. Po instalacji z pozoru zwykły dodatek odczytuje własną ikonę, wyciąga z niej fragment JavaScriptu i uruchamia jako loader do pobrania właściwego payloadu z serwera C2. Według badaczy z Koi Security, kampania obejmuje 17 dodatków i >50 tys. instalacji, m.in. kategorie „free VPN”, tłumaczenia, pogoda, zrzuty ekranu czy „dark reader”. Mozilla potwierdziła usunięcie tych rozszerzeń z AMO i aktualizację detekcji.
W skrócie
- Vektor: steganografia w logo.png rozszerzenia; kod ukryty po znaczniku
===. - Skala: 17 rozszerzeń, >50 000 instalacji łącznie. Przykłady: free-vpn-forever, google-translate-right-clicks, dark-reader-for-ff, ad-stop.
- C2 & ładowanie: loader kontaktuje
liveupdt[.]com(primary) idealctr[.]com(backup); opóźnienie 48 h i pobranie tylko w 10% prób – utrudnienie detekcji. - Zdolności payloadu: przechwytywanie/ujednolicanie linków afiliacyjnych, wstrzykiwanie Google Analytics w każdą stronę, usuwanie nagłówków CSP/X-Frame-Options, omijanie CAPTCHA, niewidoczne iframy (ad/click fraud).
- Status: Mozilla: „wszystkie rozszerzenia usunięte z AMO; systemy automatyczne zaktualizowane”. (aktualizacja z 17.12.2025).
Kontekst / historia / powiązania
Krajobraz zagrożeń wokół marketplace’ów rozszerzeń konsekwentnie się zaostrza: od kampanii ShadyPanda (miliony ofiar na Chrome/Edge) po wielokrotne przypadki nadużyć przez „free VPN” i narzędzia produktywne. Wspólnym mianownikiem jest wysokie zaufanie użytkowników do dodatków oraz ograniczona skuteczność statycznego przeglądu w sklepach. GhostPoster dorzuca do arsenału steganografię i opóźnienia behawioralne, co utrudnia tradycyjny monitoring.
Analiza techniczna / szczegóły luki
1) Faza „Logo” (steganografia):
- Rozszerzenie pobiera własne
logo.png, przeszukuje surowe bajty w poszukiwaniu znacznika===. - Sekcja za znacznikiem zawiera zdeklarowany kod JS – loader uruchamiany w kontekście rozszerzenia.
2) Loader i C2:
- Komunikacja do
www.liveupdt[.]com, awaryjniewww.dealctr[.]com; parametry z podpisem/sygnaturą pozwalają śledzić instalacje. - Ewazja: odczekanie ~48 godzin oraz probabilistyczny fetch (10%), przez co analiza sieciowa bywa „pusta”.
3) Dekodowanie/cyfring:
- Payload kodowany prostą sekwencją: swap małe/DUŻE litery → zamiana 8/9 → base64, następnie XOR z kluczem wyprowadzonym z runtime ID rozszerzenia; zapis do storage (trwałość).
4) Końcowy payload – moduły:
- Affiliate hijacking na dużych platformach e-commerce (kradzież prowizji).
- Tracking injection: wstrzyknięcie Google Analytics (np.
UA-60144933-8) na każdą stronę z własnymi atrybutami znaczników. - Twardsze obejścia zabezpieczeń: pasywne usuwanie CSP/X-Frame-Options, omijanie CAPTCHA kilkoma metodami (w tym ładownie solvera z
refeuficn.github.io). - Fraud: krótkotrwałe niewidoczne iframy (samoczyszczenie po ~15 s) dla ad/click fraud i śledzenia.
5) Wskaźniki kompromitacji (IOCs – wybrane):
- Domeny C2:
liveupdt[.]com,dealctr[.]com, dodatkowomitarchive[.]info. - Znacznik w pliku:
===wlogo.png. - ID GA:
UA-60144933-8. - Nazwy dodatków (próbki): free-vpn-forever, crxmouse-gesture, dark-reader-for-ff, ad-stop, google-translate-pro-extension (pełna lista: 17 pozycji).
Praktyczne konsekwencje / ryzyko
- Prywatność i profilowanie: globalny tracking (GA + własne atrybuty), fingerprinting i identyfikatory.
- Ominięcie polityk bezpieczeństwa przeglądarki: usunięcie CSP i XFO zwiększa powierzchnię XSS/clickjacking.
- Straty finansowe i reputacyjne: hijacking afiliacyjny, ad/click fraud (koszty i zafałszowane metryki).
- Ryzyko eskalacji: mechanizm ładowania zdalnego kodu pozwala w każdej chwili dołożyć groźniejszy moduł (np. kradzież haseł, lateral movement przez sesje SSO).
Rekomendacje operacyjne / co zrobić teraz
Dla użytkowników i helpdesku
- Natychmiast odinstaluj wskazane rozszerzenia w Firefoksie (Menu → Dodatki i motywy → Rozszerzenia). Zweryfikuj też inne przeglądarki.
- Wyczyść dane przeglądania (cache/cookies), zaloguj się ponownie do krytycznych serwisów.
- Zmień hasła do usług krytycznych / kont finansowych (ostrożnie: jeśli BYŁO ryzyko kradzieży sesji).
- Przegląd zgód na powiadomienia push (usuń podejrzane domeny).
Dla SOC/IT/SecOps (enterprise)
- Blokady sieciowe (proxy/DNS/EDR):
liveupdt[.]com,dealctr[.]com,mitarchive[.]info, a takżerefeuficn.github.io(solver). Monitoruj niestandardowe żądania z kontekstu przeglądarki. - Hunting w logach:
- Wywołania GA z ID
UA-60144933-8poza własną domeną. - Wzorce modyfikacji nagłówków CSP/XFO przez rozszerzenia.
- Iniekcje ukrytych
iframez krótkim TTL.
- Wywołania GA z ID
- Kontrola floty przeglądarek: polityki pozwalające na allow-listę rozszerzeń, blokadę niezatwierdzonych dodatków i telemetrię zachowania (co robi rozszerzenie po instalacji). (Por. wnioski o niedostatkach samej statycznej weryfikacji marketplace’ów.)
- IR: jeśli wykryto komunikację z C2 – traktuj jako incident z potencjałem modyfikacji treści stron i kradzieży sesji; rozważ force logout/rotację tokenów w krytycznych aplikacjach.
Dla vendorów/marketplace’ów
- Analiza behawioralna po publikacji (nie tylko przed).
- Reguły heurystyczne: odczyt surowych bajtów ikon, poszukiwanie markerów, probabilistyczne fetch’e, długie opóźnienia (≥48 h).
Różnice / porównania z innymi przypadkami
- VS Code / PNG-trojan w marketplace’ach – wcześniej raportowano nadużycia formatów/zasobów (np. fałszywe PNG w rozszerzeniach IDE), ale GhostPoster stosuje to w przeglądarkach i łączy z elegantną ewazją czasową (48 h + 10%).
- Wobec kampanii ShadyPanda czy fal „free VPN spyware”, GhostPoster nie musi kraść haseł, by być groźny – obniża poziom zabezpieczeń i monetyzuje ruch, a jednocześnie utrzymuje zdalnie sterowalną infrastrukturę.
Podsumowanie / kluczowe wnioski
GhostPoster to nowoczesna kampania „marketplace malware”: prosta steganografia w ikonie + cierpliwość + modularyzacja. Efekt: trudna detekcja, duża skala i pełna kontrola nad zachowaniem przeglądarki. Obowiązkowe jest wdrożenie allow-listy dodatków, kontroli sieciowej C2, monitorowania anomalii w nagłówkach oraz higieny użytkowników (usuwanie niepotrzebnych rozszerzeń, ostrożność wobec „free VPN”). Mozilla potwierdziła reakcję i usunięcie dodatków, ale model zaufania do rozszerzeń musi się zmienić po stronie organizacji.
Źródła / bibliografia
- Koi Security – Inside GhostPoster: How a PNG Icon Infected 50,000 Firefox Users (pełna analiza techniczna, IOCs). (Koi)
- BleepingComputer – GhostPoster attacks hide malicious JavaScript in Firefox addon logos (przegląd kampanii + oświadczenie Mozilli z 17.12.2025). (BleepingComputer)
- Koi Security – 4.3 Million Browsers Infected: Inside ShadyPanda’s 7-Year Malware Campaign (kontekst ryzyka marketplace’ów). (Koi)