Pomoc zdalna
  • blog
  • SP Page Builder dla Joomli (CVE-2026-48908): wgrana ikona, przez którą obcy zakłada sobie konto administratora
blog

SP Page Builder dla Joomli (CVE-2026-48908): wgrana ikona, przez którą obcy zakłada sobie konto administratora

Luka CVE-2026-48908 w kreatorze SP Page Builder dla Joomli pozwalała komukolwiek wgrać spakowany plik przez funkcję ikon i uruchomić kod. Poznasz ją po dwóch śladach: obcych plikach PHP w katalogu ikon i nowych kontach Super User z adresem w domenie secure.local.

  • Tomasz Kaczmarek
Tomasz Kaczmarek
13 września 2026 7 min czytania
Joomla logo

1. Co się stało?

Są usterki, których skutków nie widać, dopóki ktoś nie zajrzy w konkretne miejsce na serwerze. Ta należy do nich, ale ma jedną zaletę dla broniącego się: zostawia widoczne ślady. CVE-2026-48908 to luka w kreatorze stron SP Page Builder dla systemu Joomla. Funkcja odpowiedzialna za wgrywanie ikon przyjmowała spakowany plik od osoby bez konta i bez logowania, rozpakowywała go w katalogu dostępnym z sieci i pozwalała uruchomić zawarty w nim kod PHP. Skutkiem było pełne przejęcie strony, a najczęstszym śladem po ataku, jak podają advisory, nowe konto administratora, którego nikt w firmie nie zakładał.

Producentem jest firma JoomShaper, dziś działająca pod marką Ollyo. Ta podwójna nazwa jeszcze wróci, bo utrudnia samodzielne sprawdzenie sprawy w bazach.

Element

Szczegóły

Identyfikator CVE

CVE-2026-48908

Data dodania do CISA KEV

7 lipca 2026

Termin naprawy dla urzędów (CISA)

10 lipca 2026

Produkt

SP Page Builder, kreator stron dla Joomli (JoomShaper, marka Ollyo)

Wersje zagrożone

od 1.0.0 do 6.6.1 włącznie

Wersja bezpieczna

6.6.2 (wydana 14 czerwca 2026) i nowsze

Podatny mechanizm

funkcja wgrywania ikon asset.uploadCustomIcon

Typ podatności

nieograniczone wgranie pliku niebezpiecznego typu, prowadzące do zdalnego wykonania kodu

Ta sama sprawa ma trzy różne oceny, wystawione przez trzy różne zespoły. Warto je znać, bo w rozmowie z dostawcą usłyszysz różnych liczb.

Źródło oceny

Skala

Wynik

Znaczenie

Zespół bezpieczeństwa Joomli (CNA)

CVSS 4.0

10,0

najwyższa możliwa ocena, poziom krytyczny

Amerykańska baza NVD

CVSS 3.1

9,8

poziom krytyczny

Klasyfikacja słabości

CWE

CWE-434 w NVD i w katalogu CISA KEV

brak kontroli typu wgrywanego pliku

2. O co chodzi w prostych słowach?

Wyobraź sobie recepcję w biurowcu, która ma tylko jedno zadanie: przyjmować małe paczki z logo firmy do gabloty przy wejściu. Prawidłowo recepcjonista sprawdza dwie rzeczy: czy przynosi je znany kurier i czy w środku faktycznie jest naklejka, a nie coś innego. W podatnej wersji kreatora recepcji po prostu nie było. Każdy przechodzień z ulicy mógł zostawić dowolną paczkę, a obsługa zanosiła ją do serwerowni i uruchamiała zawartość.

Tak działała ta luka. Funkcja miała przyjmować wyłącznie małe obrazki ikon, ale nie sprawdzała ani kto wysyła plik, ani co dokładnie jest w środku. Paczka bywała archiwum, które serwer rozpakowywał w miejscu, gdzie potrafił uruchomić zawarty w nim program. Wystarczyło, by w paczce zamiast ikony siedział krótki plik PHP.

Słowniczek: PHP to język, w którym napisana jest większość stron Joomla. Plik PHP wgrany na serwer to nie obrazek, który się tylko wyświetla, lecz program, który serwer wykonuje. Stąd droga od wgrania ikony do przejęcia całej strony.

Scenariusz

Normalnie

Z podatnością

Kto może wgrać plik

zalogowany administrator z uprawnieniami

dowolna osoba z internetu, bez konta

Jakie pliki są przyjmowane

tylko małe obrazki ikon

dowolny typ, także archiwum z kodem PHP

Co robi serwer po zapisaniu

plik tylko leży jako obrazek

rozpakowuje archiwum i pozwala uruchomić kod

Kto kontroluje stronę

firma

firma i ten, kto wgrał plik

3. Jak hakerzy to wykorzystują?

Ta luka nie wymaga od atakującego niczego poza adresem strony. Nie trzeba nikogo oszukać, skłonić do kliknięcia ani zdobyć hasła. Dlatego cały przebieg jest krótki i da się go prowadzić masowo, automatem skanującym internet.

Etap

Czas

Akcja atakującego

Wynik

1

T+0 min

skan sieci w poszukiwaniu Joomli z SP Page Builder

lista podatnych stron

2

T+2 min

wysłanie do funkcji ikon archiwum z plikiem PHP, bez logowania

serwer przyjmuje i rozpakowuje plik

3

T+3 min

otwarcie wgranego pliku pod jego adresem w katalogu ikon

kod atakującego działa na serwerze

4

T+6 min

odczyt pliku konfiguracyjnego Joomli z hasłem do bazy

atakujący ma dostęp do bazy danych

5

T+10 min

założenie własnego konta Super User w panelu

trwałe wejście niezależne od luki

Po czym poznać stronę, która już to przeszła. Advisory wskazują konkretne ślady, a to rzadkość, którą warto wykorzystać:

Tomasz Kaczmarek
Tomasz Kaczmarek

Mogę Ci jakoś pomóc?

  • 🔴 Scenariusz 1: w katalogu ikon /media/com_sppagebuilder/assets/iconfont/ leżą pliki PHP, choć z definicji powinny tam być wyłącznie obrazki.
  • 🔴 Scenariusz 2: w panelu Joomli pojawia się nowe konto Super User, często z adresem e-mail w domenie secure.local, którego nikt w firmie nie zakładał.
  • 🔴 Scenariusz 3: w podmienionej treści strony zmieniają się numery telefonów lub dane kontaktowe, a zapytania klientów trafiają do obcej osoby.

Ślad do sprawdzenia

Gdzie szukać

Co oznacza

Pliki PHP w katalogu ikon

/media/com_sppagebuilder/assets/iconfont/

wgrany kod atakującego, wciąż aktywny po aktualizacji

Nowe konto Super User

panel Joomli, lista użytkowników

trwałe wejście założone przez atakującego

Adres e-mail w domenie secure.local

dane nowego konta administratora

charakterystyczny wzorzec obserwowany w atakach

Odczyt pliku configuration.php

logi dostępu serwera

wyciek hasła do bazy danych

4. Dlaczego to ryzyko dla Twojej firmy?

Strona firmowa bywa traktowana jak wizytówka, ale technicznie jest serwerem z dostępem do bazy danych. Kto raz odczyta plik konfiguracyjny, ten ma zawartość bazy niezależnie od tego, czy stronę później się naprawi. W bazie leżą konta użytkowników, treść zamówień i dane z formularzy.

Obszar biznesu

Potencjalny wpływ

Czas do wystąpienia

Koszty szacunkowe

Operacyjny

wygaszenie strony lub sklepu do czasu odtworzenia

minuty do godzin

kilka do kilkunastu tys. PLN utraconej sprzedaży dziennie

Bezpieczeństwo danych

odczyt bazy z danymi osobowymi klientów

minuty

kary RODO oraz koszt obsługi incydentu

Reputacyjny

podmiana treści, przekierowanie zapytań do obcych

dni do tygodni

utrata części zapytań i zaufania klientów

Prawny

obowiązki zgłoszeniowe RODO, potencjalne roszczenia

tygodnie do miesięcy

od kilku do kilkudziesięciu tys. PLN

Dalsze ataki

serwer użyty jako baza do ataku na kolejne podmioty

dni

koszt trudny do oszacowania

Powyższe koszty to szacunki poglądowe dla małej i średniej firmy, a nie dane z konkretnego incydentu. Kara RODO to fakt prawny: do 20 mln EUR lub 4 procent rocznego obrotu.

Pozycja tej luki na matrycy ryzyka jest jednoznaczna: wysokie prawdopodobieństwo, bo atak jest automatyczny i już trwa, oraz wysoki wpływ, bo daje pełne przejęcie.

Wplyw 5 | X KRYTYCZNA (CVE-2026-48908) 4 | 3 | 2 | 1 | +------------------- 1 2 3 4 5 Prawdopodobienstwo

Dlaczego wysokie prawdopodobieństwo

Dlaczego wysoki wpływ

atak nie wymaga konta ani hasła

pełne wykonanie kodu na serwerze

da się go zautomatyzować i skanować masowo

odczyt bazy i danych osobowych

luka jest już wykorzystywana w atakach

trwałe konto administratora po ataku

5. Co musisz zrobić natychmiast?

Kolejność działań przy podejrzeniu, że atak już nastąpił, jest odwrotna niż podpowiada odruch. Sama aktualizacja zamyka drogę wejścia, ale nie usuwa tego, co atakujący zdążył zostawić: plik w katalogu ikon działa dalej, a założone konto administratora nadal się loguje.

Priorytet

Działanie

Termin

Odpowiedzialny

Status

🔴 NATYCHMIAST

aktualizacja SP Page Builder do wersji 6.6.2 lub nowszej

dzisiaj

administrator strony

☐

🔴 NATYCHMIAST

przegląd listy kont Super User i usunięcie obcych

dzisiaj

administrator strony

☐

🟠 PILNIE

przegląd katalogu ikon i usunięcie plików PHP

do jutra

zespół techniczny

☐

🟠 PILNIE

zmiana hasła do bazy danych po wglądzie w configuration.php

24-48 h

zespół techniczny

☐

🟡 WAŻNIE

przegląd logów pod kątem wgrywania plików przez niezalogowanych

w ciągu tygodnia

zespół techniczny

☐

Jeśli natychmiastowa aktualizacja nie wchodzi w grę, bo podniesienie kreatora rozsypie układ podstron, producent udostępnił doraźnie oficjalną poprawkę na swoim forum. To rozwiązanie tymczasowe, nie docelowe.

Czasowa miara ochronna

Efektywność

Łatwość wdrożenia

oficjalna poprawka producenta z forum

wysoka

średnia

zablokowanie funkcji wgrywania ikon

wysoka

średnia

ograniczenie dostępu do panelu z zaufanych adresów IP

średnia

wysoka

reguły WAF blokujące wgrywanie archiwów

średnia

średnia

Efektywność powyżej to szacunek poglądowy, a nie zmierzona wartość dla tej konkretnej luki.

Tomasz Kaczmarek
Tomasz Kaczmarek

Mogę Ci jakoś pomóc?

6. Kontekst i skala zagrożenia

Aspekt

Informacja

Czy jest wykorzystywana

tak, potwierdzone aktywne wykorzystanie w atakach

Grupy przestępcze

brak publicznie potwierdzonych danych

Kampanie ransomware

brak potwierdzenia użycia w kampaniach ransomware (wg CISA)

Publiczny opis sposobu ataku

tak, dostępne publiczne advisory z opisem mechanizmu

Liczba atakowanych firm

brak publicznie potwierdzonej liczby

Wskaźnik

Wartość

Co to znaczy

CVSS 4.0 (CNA Joomla)

10,0

najwyższa możliwa ocena krytyczności

CVSS 3.1 (NVD)

9,8

poziom krytyczny

EPSS (FIRST, 13 września 2026)

0,15086, percentyl 0,9653

około 15 procent szans na wykorzystanie w ciągu 30 dni, wyżej niż około 96,5 procent ocenianych podatności

Linia czasu incydentu pokazuje, jak szybko sprawa przeszła od poprawki do terminu wyznaczonego przez agencję rządową:

2026-06-14: producent wydaje wersje 6.6.2 z poprawka 2026-06-21: obserwowane pierwsze aktywne ataki 2026-06-24: publiczne advisory z opisem mechanizmu 2026-07-07: wpis do katalogu CISA KEV 2026-07-10: termin naprawy dla urzedow federalnych USA 2026-09-14: TUTAJ JESTESMY - dzialanie natychmiast

Tego samego dnia, 7 lipca 2026, CISA dopisała do katalogu jeszcze dwie luki: CVE-2026-56290 w innym kreatorze stron dla Joomli, Page Builder CK od zupełnie innego producenta, oraz CVE-2026-55255. To zestawienie mówi więcej niż pojedynczy wpis: kreatory stron są atrakcyjnym celem, bo z natury muszą przyjmować pliki i tworzyć treści, czyli robić dokładnie to, co w rękach obcej osoby daje przejęcie witryny.

Kto spróbuje sam sprawdzić tę lukę w bazach, natrafi na mylącą niezgodność nazw. Producent występuje raz jako JoomShaper, raz jako Ollyo, bo to ta sama firma pod dwiema markami.

Nazwa w dokumentach

Gdzie występuje

Wniosek praktyczny

JoomShaper

advisory i forum producenta

historyczna nazwa marki

Ollyo

część rekordów i danych technicznych

obecna nazwa tej samej firmy

CVE-2026-48908

wszystkie źródła

szukaj po numerze CVE, bo jest jeden

7. Bezpośredni link do działania

Poniższa lista jest do wydruku i przekazania zespołowi. Każda pozycja ma jednego właściciela i termin, bo bez tego zadanie zwykle czeka.

Zrobione

Zadanie

Kto

Termin

☐

ustalić wersję SP Page Builder w panelu Joomli

administrator strony

dzisiaj

☐

zaktualizować kreator do wersji 6.6.2 lub nowszej

administrator strony

dzisiaj

☐

sprawdzić listę kont Super User i usunąć obce

administrator strony

dzisiaj

☐

przejrzeć katalog ikon i usunąć pliki PHP

zespół techniczny

do jutra

☐

zmienić hasło do bazy danych

zespół techniczny

do jutra

☐

potwierdzić, że strona działa i ślady usunięto

administrator strony

do jutra

8. Pytania do Twojego zespołu IT

Numer

Pytanie

Odpowiedź

Priorytet

1

Czy strona firmy działa na Joomli z SP Page Builder

tak lub nie

🔴

2

Jaka jest aktualna wersja kreatora

wersja z panelu

🔴

3

Czy w katalogu ikon są pliki PHP

tak lub nie

🔴

4

Czy w panelu są konta Super User, których nie zakładaliśmy

tak lub nie

🟠

5

Kiedy ostatnio aktualizowaliśmy rozszerzenia strony

data przeglądu

🟠

6

Kto odpowiada za regularne aktualizacje strony

rola lub osoba

🟠

7

Czy mamy kopię zapasową sprzed lipca 2026

tak lub nie

🟡

Pytania diagnostyczne dla managera:

  • Kiedy ostatnio nasza firma dokonała przeglądu wersji rozszerzeń strony?
  • Czy mamy jedną osobę odpowiedzialną za aktualizacje witryny?
  • Czy dostajemy powiadomienie na skrzynkę właściciela przy założeniu konta administratora?
  • Czy mamy plan odtworzenia strony po incydencie?
Tomasz Kaczmarek
Tomasz Kaczmarek

Mogę Ci jakoś pomóc?

Czytaj dalej

Powiązane artykuły

Zestaw zmienia się codziennie, więc przy kolejnej wizycie zobaczysz inny wycinek bloga.

Masz to samo u siebie?

Możemy się tym zająć

Krótka rozmowa wystarczy, żeby ocenić zakres prac i podać widełki kosztu. Bez zobowiązań.