Page Builder CK dla Joomla: luka CVE-2026-56290 atakowana od czerwca, bezpieczna jest dopiero wersja 3.6.5
Luka CVE-2026-56290 w Page Builder CK dla Joomla pozwalała każdemu wgrać i uruchomić plik na serwerze, a ataki ruszyły w dniu wydania łatki. Wersja 3.6.0 nie zamknęła problemu do końca: bezpieczna jest dopiero 3.6.5.
Page Builder CK to darmowy kreator stron dla Joomli, rozwijany przez Cédrica Keiflina (joomlack.fr). W czerwcu 2026 roku okazało się, że każdy, bez konta i bez hasła, mógł przez niego wgrać na serwer dowolny plik i go uruchomić. Luka dostała maksymalną ocenę 10.0, ataki zaobserwowano tego samego dnia, w którym wyszła poprawka, a CISA wpisała ją do katalogu podatności aktywnie wykorzystywanych.
Ta historia ma drugie dno: pierwsza poprawka (wersja 3.6.0) nie zamknęła problemu do końca. Kolejne luki w tym samym rozszerzeniu łatano aż do wersji 3.6.5 z 17 sierpnia 2026 roku. Aktualizacja z lipca może więc nie wystarczyć.
Uwaga na nazwy: Page Builder CK (joomlack.fr) to inny produkt niż SP Page Builder (JoomShaper). Oba trafiły do katalogu CISA tego samego dnia, ale mają różne luki, różne wersje i różne poprawki.
1. Co się stało?
CVE-2026-56290 to błąd kontroli dostępu w mechanizmie wgrywania plików. Punkt przyjmujący pliki sprawdzał tylko token CSRF, który każdy odwiedzający może odczytać z publicznej strony. Nie sprawdzał, czy wysyłający jest zalogowany, jaki plik wysyła ani do jakiego katalogu go zapisuje.
Element
Szczegóły
Identyfikator CVE
CVE-2026-56290 (w bazie ENISA: EUVD-2026-40121)
Data dodania do CISA KEV
7 lipca 2026
Termin CISA dla agencji federalnych
10 lipca 2026 (3 dni), z wymogiem triage kryminalistycznego
Produkt
joomlack.fr, Page Builder CK (com_pagebuilderck) dla Joomla
Wersje zagrożone
wszystkie do 3.5.10 włącznie w głównej linii, starsze wydania dla Joomla 3 i 4 poniżej wersji 3.1.1 i 3.4.10
Wersje z poprawką tej luki
3.6.0 (Joomla 5 i 6), 3.1.1 (Joomla 3), 3.4.10 (Joomla 4), wszystkie z 27 czerwca 2026
Wersja zalecana dziś
3.6.5 z 17 sierpnia 2026 (zamyka także luki odkryte po 3.6.0)
Typ podatności
wgranie dowolnego pliku bez uwierzytelnienia prowadzące do zdalnego wykonania kodu; CWE-434 według NVD i CNA Joomla, CWE-284 według CISA
Ocena CVSS
10.0 w CVSS 4.0 (CNA Joomla, z oznaczeniem aktywnych ataków), 9.8 w CVSS 3.1 (NVD), obie krytyczne
Ransomware (flaga CISA)
Unknown, czyli brak potwierdzenia użycia w kampaniach ransomware
Znalazca
Phil Taylor, mySites.guru
Luki, które wyszły po pierwszej poprawce
CVE
Na czym polega
Kto może zaatakować
Ocena CVSS 4.0 (CNA Joomla)
Naprawione w
CVE-2026-56290
wgranie i uruchomienie dowolnego pliku
każdy z internetu
10.0
3.6.0
CVE-2026-63048
ta sama słabość wgrywania, po 3.6.0 ukryta za logowaniem
każde konto z prawem edycji, np. Redaktor (Editor)
9.4
3.6.3
CVE-2026-74254
wstrzyknięcie SQL w obsłudze stylów
konto z prawem edycji treści kreatora
9.3
3.6.5
Według rekordu CVE-2026-63048 podatne są także wydania 1.0.0-3.1.2 (Joomla 3) i 3.4.0-3.4.11 (Joomla 4). Dla tych starszych gałęzi brak publicznie potwierdzonej wersji wolnej od tej luki. W katalogu CISA KEV stoi wyłącznie CVE-2026-56290; dwie późniejsze luki nie mają potwierdzonych ataków.
2. O co chodzi w prostych słowach?
Wyobraź sobie biurowiec z portiernią. Portier ma sprawdzać przepustki, ale w praktyce pyta tylko o to, czy gość zna nazwę firmy wypisaną na tablicy przy wejściu. Gość podaje nazwę, wnosi dowolną skrzynkę, sam wybiera piętro i pokój, zostawia ją tam i włącza to, co jest w środku.
Wersja 3.6.0 postawiła przy wejściu bramkę na karty pracownicze. Obcy już nie wejdzie. Ale wewnątrz nadal nikt nie zaglądał do skrzynek, więc każdy pracownik z najniższym poziomem dostępu, na przykład praktykant z działu marketingu, mógł dalej wnieść cokolwiek. Dopiero wersja 3.6.3 dodała kontrolę zawartości, a 3.6.5 zamknęła osobny problem w innym pomieszczeniu.
Scenariusz
Normalnie
Z podatnością (do 3.5.10)
Po niepełnej poprawce (3.6.0-3.6.2)
Kto może wgrać plik
uprawniony użytkownik
każdy z internetu
każde konto z prawem edycji
Jakie pliki są przyjmowane
tylko obrazy i dozwolone typy
dowolne, także skrypty PHP
dowolne, także skrypty PHP
Gdzie trafia plik
wyznaczony katalog na media
tam, gdzie wskaże wysyłający
tam, gdzie wskaże wysyłający
Kto kontroluje stronę
firma
firma i atakujący
firma i każdy, kto przejmie konto Redaktora
Słowniczek: token CSRF to losowy ciąg znaków potwierdzający, że żądanie wyszło ze strony, a nie z obcej witryny. To nie jest login ani hasło i nie mówi nic o tym, kim jest wysyłający.
Słowniczek: webshell to mały plik wgrany na serwer, który daje atakującemu panel do wykonywania poleceń. Działa dalej nawet po załataniu luki, przez którą trafił na serwer.
Atak na CVE-2026-56290 nie wymaga konta, kliknięcia ofiary ani socjotechniki. CISA oceniła go w modelu SSVC jako możliwy do automatyzacji, ze skutkiem całkowitym. To oznacza masowe skanowanie internetu przez boty.
Timeline ataku (wersje do 3.5.10):
Etap
Czas
Akcja hakerów
Wynik
1
T+0 min
automatyczne wyszukiwanie stron Joomla z komponentem com_pagebuilderck
lista celów
2
T+1 min
odczyt tokenu CSRF z publicznej strony witryny
atakujący ma jedyny wymagany element
3
T+2 min
wysłanie pliku PHP do wybranego katalogu, np. /media/com_pagebuilderck/gfonts/
serwer zapisuje plik
4
T+3 min
otwarcie wgranego pliku w przeglądarce
kod atakującego działa na serwerze
5
T+10 min
pozostawienie trwałego webshella, odczyt konfiguracji i bazy danych
stały dostęp niezależny od luki
6
dni-tygodnie
wykorzystanie serwera: kradzież danych, podmiana treści, spam, ataki na innych
straty i odpowiedzialność prawna
Według mySites.guru już 27 czerwca 2026, w ciągu kilku godzin od wydania wersji 3.6.0, na jednej z monitorowanych stron wykryto działający webshell wgrany przez tę lukę: plik /media/com_pagebuilderck/gfonts/bhup.php z obsługą formularza $_POST['_upl']. Atakujący użył luki raz, żeby zostawić sobie stałe wejście.
Wariant po niepełnej poprawce (3.6.0-3.6.2, CVE-2026-63048): atakujący najpierw zdobywa login konta Redaktora (wyciek hasła, phishing, hasło używane w kilku miejscach), a dalej przebieg jest taki sam jak w etapach 3-6.
Konkretne scenariusze zagrożenia:
🔴 Scenariusz 1: sklep lub strona z formularzem zapytań na Joomli. Atakujący czyta plik configuration.php z hasłem do bazy i pobiera dane klientów z formularzy oraz kont użytkowników.
🔴 Scenariusz 2: strona firmowa zostaje po cichu przerobiona na punkt dystrybucji złośliwego oprogramowania lub przekierowań do oszustw. Klienci widzą ostrzeżenia przeglądarki, Google oznacza domenę jako niebezpieczną.
🔴 Scenariusz 3: firma zaktualizowała rozszerzenie w lipcu do 3.6.0 i uznała temat za zamknięty. Webshell z czerwca nadal leży w katalogu /media, a konto Redaktora agencji marketingowej z prostym hasłem otwiera drugą drogę przez CVE-2026-63048.
4. Dlaczego to ryzyko dla Twojej firmy?
Strona internetowa wygląda jak wizytówka, ale technicznie to serwer z bazą danych, kontami i często dostępem do poczty lub innych systemów. Zdalne wykonanie kodu daje atakującemu takie same możliwości jak administratorowi serwera.
Obszar biznesu
Potencjalny wpływ
Czas do wystąpienia
Koszty szacunkowe
Operacyjny
wyłączenie strony lub sklepu na czas czyszczenia i odtwarzania
godziny od wykrycia
2 000-15 000 PLN za dzień przestoju w małej lub średniej firmie
Bezpieczeństwo danych
wyciek danych klientów z formularzy, kont i zamówień
koszt czyszczenia serwera, odbudowy strony i utraconych zamówień
dni
10 000-80 000 PLN
Reputacyjny
ostrzeżenia przeglądarek, blokada domeny w wyszukiwarce, spadek zaufania
dni-tygodnie
spadek ruchu i zapytań o 20-60% na kilka tygodni
Prawny
zgłoszenie do UODO w 72 godziny, możliwe kary i roszczenia
tygodnie-miesiące
kary RODO do 20 mln EUR lub 4% rocznego obrotu
Kwoty w tabeli to szacunki poglądowe dla małej lub średniej firmy, a nie dane z konkretnego incydentu; wyjątkiem jest górna granica kar RODO, wynikająca z przepisów.
Macierz ryzyka (pozycja dla wersji do 3.5.10 i dla wersji 3.6.0-3.6.2):
Wpływ
5 | . . . B A <- A: CVE-2026-56290, wersje do 3.5.10 (KRYTYCZNA)
4 | . . . . . B: CVE-2026-63048, wersje 3.6.0-3.6.2
3 | . . . . .
2 | . . . . .
1 | . . . . .
+--------------------
1 2 3 4 5 Prawdopodobieństwo
Pozycja A: maksymalny wpływ i najwyższe prawdopodobieństwo, bo atak jest anonimowy, zautomatyzowany i potwierdzony w praktyce. Pozycja B: ten sam wpływ, ale atakujący potrzebuje konta z prawem edycji.
Sprawdzić wszystkie strony Joomla firmy, także kampanijne i archiwalne, pod kątem komponentu Page Builder CK
Dzisiaj
IT Manager lub agencja utrzymująca stronę
☐
🔴 NATYCHMIAST
Zaktualizować Page Builder CK do 3.6.5 (System, Aktualizacje, Rozszerzenia lub paczka z joomlack.fr)
Dzisiaj
Administrator strony
☐
🔴 NATYCHMIAST
Przeszukać /media/com_pagebuilderck/ i podkatalogi (m.in. gfonts) oraz /images, /media, /templates, /administrator pod kątem obcych plików PHP
Dzisiaj
Administrator strony
☐
🟠 PILNIE
Przejrzeć listę użytkowników: usunąć nieznane konta Super User i Redaktor, zmienić hasła pozostałych
Do jutra
Właściciel strony z administratorem
☐
🟠 PILNIE
Po wykryciu śladów: odtworzyć stronę z czystej kopii, zmienić hasło do bazy danych i sekrety Joomli
24-48h
Incident Response lub zewnętrzna firma
☐
🟡 WAŻNIE
Zablokować wykonywanie PHP w katalogach zapisywalnych (/images, /media, /templates, /tmp) na poziomie serwera WWW
W ciągu tygodnia
Hosting lub DevOps
☐
🟡 WAŻNIE
Plan dla stron na Joomla 3 i 4: migracja na Joomla 5 lub 6 z Page Builder CK 3.6.5 albo usunięcie komponentu
W ciągu miesiąca
IT Manager i właściciel budżetu
☐
Samo wyłączenie (odpublikowanie) komponentu w panelu nie chroni: według mySites.guru podatny kod nadal może zostać wywołany. Aktualizacja zamyka drogę wejścia, ale nie usuwa plików, które atakujący zdążył zostawić.
Jeśli aktualizacja nie jest dostępna (np. strona na Joomla 3 lub 4, której nie da się teraz przenieść):
Czasowa miara ochronna
Efektywność
Łatwość wdrożenia
Odinstalowanie komponentu i zastąpienie treści zwykłymi artykułami
ok. 99%
Średnia
Reguła WAF lub reverse proxy blokująca żądania wgrywania plików do com_pagebuilderck
ok. 80%
Średnia
Blokada wykonywania PHP w katalogach zapisywalnych
ok. 60-70% (atakujący wybiera katalog, więc wyjątki zostają furtką)
Wysoka
Ograniczenie kont z prawem edycji do minimum i silne hasła z drugim składnikiem
ok. 50% wobec CVE-2026-63048, 0% wobec CVE-2026-56290
Wysoka
Wystawienie panelu i strony tylko dla zaufanych adresów IP
ok. 95% (dla stron wewnętrznych)
Niska dla strony publicznej
Wartości efektywności to orientacyjne szacunki eksperckie, a nie wyniki pomiarów; żadna z tych miar nie zastępuje aktualizacji do 3.6.5.
6. Kontekst i skala zagrożenia
Aspekt
Informacja
Czy jest wykorzystywana?
TAK: webshell wykryty 27 czerwca 2026 (mySites.guru), SSVC CISA z 30 czerwca: exploitation active, wpis do KEV 7 lipca 2026
Grupy przestępcze
brak publicznie potwierdzonych danych
Kampanie ransomware
brak publicznie potwierdzonych danych; flaga CISA: Unknown
Ocena CVSS
10.0/10 w CVSS 4.0 (KRYTYCZNA), 9.8/10 w CVSS 3.1 według NVD
PoC dostępny publicznie?
brak publicznie potwierdzonego gotowego exploita; mySites.guru opisał mechanizm, ale celowo nie opublikował działającego żądania
Liczba atakowanych firm
brak publicznie potwierdzonych danych; opisano jeden potwierdzony przypadek webshella
EPSS (FIRST, 13 września 2026)
0,30375, czyli ok. 30% szans na wykorzystanie w ciągu 30 dni; wyżej niż ok. 98% ocenianych podatności
Wymóg CISA
aktualizacja według BOD 26-04 oraz triage kryminalistyczny, czyli sprawdzenie, czy do włamania już doszło
To ostatnie jest ważne także dla firm spoza USA. CISA nie poprzestaje na poleceniu aktualizacji, tylko wymaga sprawdzenia śladów włamania. Skoro ataki ruszyły w dniu wydania poprawki, strona aktualizowana tydzień później mogła już mieć webshell.
Linia czasu incydentu:
2026-05-12: Page Builder CK 3.5.10, ostatnia podatna wersja głównej linii
2026-06-27: wydanie 3.6.0 oraz 3.1.1 (Joomla 3) i 3.4.10 (Joomla 4)
2026-06-27: kilka godzin później pierwszy potwierdzony webshell (bhup.php)
2026-06-29: publikacja CVE-2026-56290 (CVSS 4.0: 10.0); wydanie 3.6.1
2026-06-30: CISA w SSVC: wykorzystanie aktywne, automatyzacja tak
2026-07-07: wpis do katalogu CISA KEV
2026-07-10: termin CISA dla agencji federalnych
2026-07-21: wydanie 3.6.3, zamknięcie wgrywania plików przez Redaktorów
2026-07-22: publikacja CVE-2026-63048 (CVSS 4.0: 9.4)
2026-08-13: wydanie 3.6.4, częściowa poprawka SQL injection
2026-08-17: wydanie 3.6.5 i publikacja CVE-2026-74254 (CVSS 4.0: 9.3)
2026-09-13: EPSS 0,30375 (percentyl 0,98)
2026-09-14: TUTAJ JESTEŚMY - jeśli strona ma wersję niższą niż 3.6.5, działaj dziś
Dlaczego poprawka 3.6.0 nie wystarczyła
Pytanie
Wersja 3.6.0
Wersja 3.6.3 i nowsze
Czy sprawdzane jest logowanie i uprawnienia?
tak, anonimowe żądanie dostaje odmowę
tak
Czy sprawdzany jest typ pliku?
nie, kontrola rozszerzenia była zakomentowana w kodzie
tak, przywrócono listę dozwolonych typów
Kto nadal mógł wgrać plik PHP?
każde konto z uprawnieniem core.edit, domyślnie grupa Redaktor
nikt, według mySites.guru
Ta różnica między „załatane” a „naprawione” to najważniejsza lekcja dla zarządu. Numer wersji rośnie, a w changelogu pojawia się „Fix security issue”, ale z zewnątrz nie widać, czy usunięto przyczynę, czy tylko postawiono przed nią bramkę.
Wyszukać pliki PHP w /media/com_pagebuilderck/ i innych katalogach zapisywalnych oraz frazę _upl w plikach
SOC lub administrator
DO JUTRA
☐
Przejrzeć logi serwera od 27 czerwca 2026 pod kątem żądań POST do com_pagebuilderck i wywołań nieznanych plików PHP
SOC
DO JUTRA
☐
Potwierdzić wersję 3.6.5 w panelu i odnotować wynik przeglądu kont
IT Manager
DO JUTRA
Źródła do weryfikacji dla zespołu: https://nvd.nist.gov/vuln/detail/CVE-2026-56290 oraz https://mysites.guru/blog/pagebuilderck-file-upload-rce-incomplete-fix/
8. Pytania do Twojego zespołu IT
#
Pytanie
Odpowiedź
Priorytet
1
Czy którakolwiek z naszych stron Joomla ma Page Builder CK w wersji niższej niż 3.6.5?
TAK / NIE
🔴
2
Jaka dokładnie wersja jest zainstalowana na każdej stronie i na jakiej wersji Joomli?
lista stron z numerami wersji
🔴
3
Czy przeszukaliśmy /media/com_pagebuilderck/ i inne katalogi pod kątem obcych plików PHP po 27 czerwca 2026?
TAK / NIE, data przeglądu
🔴
4
Ile kont ma uprawnienia Redaktora lub wyższe i czy wszystkie są nam znane?
liczba kont i właściciele
🟠
5
Czy mamy strony na Joomla 3 lub 4, dla których nie ma wersji wolnej od CVE-2026-63048?
TAK / NIE, plan migracji
🟠
6
Czy serwer blokuje wykonywanie PHP w katalogach na pliki i media?
TAK / NIE
🟠
7
Kto u nas lub w agencji odpowiada za aktualizacje rozszerzeń i jak szybko reaguje na alerty?
osoba i czas reakcji
🟡
8
Czy mamy czystą kopię strony sprzed czerwca 2026, z której można ją odtworzyć?
TAK / NIE, data kopii
🟡
Pytania diagnostyczne dla managera:
✓ Czy mamy spis wszystkich stron internetowych firmy, łącznie ze starymi stronami kampanii, i wiemy, na czym są zbudowane?
✓ Czy umowa z agencją utrzymującą stronę określa czas instalacji poprawek bezpieczeństwa?
✓ Czy po aktualizacji ktoś sprawdza, czy luka została naprawiona w całości, czy tylko częściowo?
✓ Czy wiemy, jak w 72 godziny zgłosić naruszenie danych osobowych do UODO?
Podsumowując: CVE-2026-56290 była atakowana od pierwszego dnia i dawała obcym pełną kontrolę nad stroną. Wersja 3.6.0 zamknęła drzwi dla anonimowych atakujących, ale bezpieczny punkt docelowy to dziś Page Builder CK 3.6.5, połączony z przeglądem plików i kont, bo aktualizacja nie usuwa tego, co mogło zostać na serwerze.
Czytaj dalej
Powiązane artykuły
Zestaw zmienia się codziennie, więc przy kolejnej wizycie zobaczysz inny wycinek bloga.
Przepełnienie bufora w FortiOS i FortiSwitchManager pozwala bez hasła uruchomić kod na zaporze. CISA potwierdza ataki, a przestępcy instalują trojana PivotC2. Zaktualizuj FortiOS i sprawdź zapory pod kątem włamania.
CISA dodała do katalogu KEV lukę z 2015 roku w narzędziu ABRT, która daje napastnikowi uprawnienia root na serwerach RHEL 7 i CentOS 7. Zaktualizuj pakiet abrt i zaplanuj wymianę systemów bez wsparcia.
Luka o ocenie 10.0 w SonicWall SMA1000 daje dostęp do funkcji urządzenia bez logowania, a z CVE-2026-83549 pozwala je przejąć. SonicWall i CISA potwierdzają ataki. Zainstaluj hotfix i sprawdź urządzenie.
Klikając „Akceptuję”, zgadzasz się na przechowywanie plików cookie przez UXU w celu poprawy działania strony, analizy i wsparcia działań marketingowych.