Biuletyn bezpieczeństwa Page Builder CK - wstrzyknięcie SQL
Jeśli otrzymali Państwo ode mnie wiadomość kierującą na tę stronę, to dlatego, że Państwa
witryna najprawdopodobniej korzysta z podatnej wersji Page Builder CK (rozszerzenia
com_pagebuilderck firmy Joomlack), narzędzia do budowania stron dla systemu zarządzania
treścią Joomla. Ta strona wyjaśnia, dlaczego to istotne i co należy zrobić.
To powiadomienie dotyczy CVE-2026-77994, krytycznej (CVSS 9.3) luki typu wstrzyknięcie SQL. W wersjach objętych luką wartość zapisana w treści Państwa strony trafia do zapytania do bazy danych bez zabezpieczenia, które chroni takie wartości przed zmianą sensu zapytania. Pozwala to zdalnemu atakującemu - bez logowania i bez konta w Państwa witrynie - odczytać informacje z bazy danych witryny.
To inny problem niż wcześniejsza luka w Page Builder CK (CVE-2026-56290, dotycząca przesyłania plików). Obie dotyczą tego samego rozszerzenia; ta jest odczytem z bazy danych, a nie przejęciem witryny.
Które wersje są naprawione - a które nie mają jeszcze poprawki
Page Builder CK jest wydawany w osobnych liniach dla każdej wersji Joomla. W chwili pisania tej strony poprawka dla tego problemu została wydana wyłącznie w linii Joomla 5/6.
| Jeśli Państwa witryna działa na… | Stan poprawki | Co zrobić |
|---|---|---|
| Joomla 5 lub 6 | Naprawiono w 3.6.5 | Zaktualizować Page Builder CK do 3.6.5 lub nowszej |
| Joomla 4 | Brak naprawionej wersji (najnowsza to 3.4.11, wciąż podatna) | Przejść na linię Joomla 5/6 (3.6.5) lub usunąć rozszerzenie |
| Joomla 3 | Brak naprawionej wersji (najnowsza to 3.1.2, wciąż podatna) | Przejść na linię Joomla 5/6 (3.6.5) lub usunąć rozszerzenie |
Jeśli używają Państwo Joomla 5 lub 6, jest to prosta aktualizacja do 3.6.5 lub nowszej.
Jeśli używają Państwo Joomla 3 lub 4, obecnie nie ma naprawionej wersji Page Builder CK dla Państwa linii Joomla - najnowsze dostępne wersje w tych liniach wciąż zawierają tę lukę. Aktualizacja „do najnowszej” w Państwa linii nie usunie problemu. Realne możliwości to przejście na linię wydawniczą Joomla 5/6 (co oznacza aktualizację samego Joomla) lub usunięcie rozszerzenia Page Builder CK. Jeśli żadne z tych rozwiązań nie jest od razu możliwe, umieszczenie witryny za zaporą aplikacji webowych należy traktować jako środek tymczasowy, a nie poprawkę.
To luka w rozszerzeniu, a nie w rdzeniu Joomla. W pełni zaktualizowany rdzeń Joomla nie chroni, jeśli samo rozszerzenie Page Builder CK jest w podatnej wersji.
Czy ta wiadomość jest wiarygodna?
Tak. To zgłoszenie w duchu odpowiedzialnego ujawniania, w dobrej wierze, od niezależnego badacza bezpieczeństwa. Nie proszę o pieniądze, hasła ani dostęp do witryny i nie próbowałem się do niej włamać, niczego do niej wysłać ani niczego wykorzystać.
Obejrzałem wyłącznie publicznie dostępne pliki, które Państwa witryna udostępnia każdemu odwiedzającemu (tak samo jak publiczna jest strona główna), i odnotowałem numer wersji publikowany przez rozszerzenie Page Builder CK w tych plikach. To sprawdzenie w żaden sposób nie dotyka Państwa danych, panelu administracyjnego ani żadnej prywatnej części witryny.
Jeśli chcą Państwo zweryfikować, kim jestem, dane kontaktowe znajdują się na dole tej strony oraz na stronie O mnie.
Dlaczego to ważne
Page Builder CK to szeroko używany kreator stron typu „przeciągnij i upuść” dla Joomla. W wersjach objętych luką treść, którą Page Builder CK zapisuje dla strony, jest później wykorzystywana do zbudowania zapytania do bazy danych podczas wyświetlania strony, bez bezpiecznego oddzielenia od samego zapytania. Atakujący, który może wpłynąć na tę zapisaną treść
- co w wersjach objętych luką nie wymaga konta - może sprawić, że zapytanie zwróci dane, których zwracać nie powinno, i odczytać informacje z Państwa bazy danych. W zależności od tego, co przechowuje Państwa witryna, mogą to być rekordy użytkowników, skróty (hasze) haseł oraz klucze tajne.
Żeby jasno określić granice tego problemu: jest to odczyt z bazy danych. Sam w sobie nie jest zdalnym wykonaniem kodu i sam w sobie nie daje atakującemu konta administratora ani kontroli nad Państwa serwerem. Mówię, czym on jest i czym nie jest, ponieważ rzetelność liczy się bardziej niż wywoływanie niepokoju.
Jeśli mój e-mail powoływał się na ten problem, oznacza to, że wersja zgłaszana przez Państwa witrynę mieści się w podatnym zakresie. Nie sprawdzałem, czy akurat Państwa witryna jest podatna na wykorzystanie ani czy jakiekolwiek dane rzeczywiście zostały odczytane - zaobserwowałem wyłącznie, że zgłasza ona wersję objętą luką.
Jak sprawdzić swoją wersję
Nie muszą Państwo wierzyć mi na słowo co do tego, jakiej wersji Państwo używają.
Z publicznego manifestu (bez logowania): proszę otworzyć w przeglądarce
Państwadomena.pl/administrator/components/com_pagebuilderck/pagebuilderck.xml. Wiersz
<version> to wersja zgłaszana przez Państwa instalację Page Builder CK; to ten sam publiczny
plik, który odczytałem.
Z panelu administracyjnego (jeśli mają Państwo dostęp):
- Proszę zalogować się do panelu administracyjnego Joomla (zwykle pod adresem
Państwadomena.pl/administrator). - Przejść do System, następnie Zarządzaj, a potem Rozszerzenia (albo Rozszerzenia, następnie Zarządzaj, w zależności od wersji Joomla).
- Wyszukać Page Builder CK i odnotować zainstalowaną wersję, a także sprawdzić, jakiej wersji Joomla Państwo używają (widocznej w kokpicie administratora).
Proszę porównać oba z powyższą tabelą. Ponieważ poprawka istnieje obecnie tylko w linii Joomla 5/6, sam numer wersji nie mówi, czy poprawka jest dla Państwa dostępna - decyduje o tym Państwa linia Joomla.
Jak to naprawić
Jeśli używają Państwo Joomla 5 lub 6:
- Najpierw proszę wykonać kopię zapasową witryny (pliki i baza danych).
- W panelu administracyjnym Joomla proszę otworzyć Rozszerzenia, następnie Zarządzaj, a potem Aktualizacja, kliknąć Znajdź aktualizacje i zainstalować aktualizację Page Builder CK, jeśli się pojawi (dla linii Joomla 5/6 zaoferuje 3.6.5 lub nowszą).
- Jeśli aktualizacja się tam nie pojawi, proszę pobrać najnowsze wydanie od producenta, Joomlack, ze strony https://www.joomlack.fr/en/joomla-extensions/page-builder-ck i zainstalować je przez Rozszerzenia, a następnie Instalacja.
- Proszę potwierdzić nową wersję (3.6.5 lub nowszą), korzystając z powyższych kroków.
Jeśli używają Państwo Joomla 3 lub 4 (dla Państwa linii nie istnieje naprawiona wersja):
- Trwałym rozwiązaniem jest przejście na wersję Joomla, która ma naprawione Page Builder CK - czyli aktualizacja do Joomla 5/6 i Page Builder CK 3.6.5 - co jest większym przedsięwzięciem i warto zaplanować je z Państwa deweloperem.
- Jeśli nie mogą Państwo zrobić tego szybko i nie potrzebują aktywnie tego rozszerzenia, proszę usunąć Page Builder CK.
- Wyłącznie jako środek tymczasowy, zapora aplikacji webowych może osłabić przypadkowe próby, ale nie zastępuje usunięcia lub załatania podatnego kodu.
Przy okazji warto potwierdzić, że samo Joomla i pozostałe rozszerzenia są aktualne.
Jeśli używali Państwo podatnej wersji
Ta luka to odczyt z bazy danych, który nie zostawia oczywistego śladu do odnalezienia, więc nie ma pliku ani konta, których należałoby szukać tak, jak po włamaniu. Warto wiedzieć, że aktualizacja (lub usunięcie rozszerzenia) zamyka lukę na przyszłość, ale nie może cofnąć odczytu niczego, co mogło już zostać odczytane, gdy działała podatna wersja.
Jako rozsądne zabezpieczenie - nie dlatego, że mam jakiekolwiek dowody, iż do Państwa witryny kierowano zapytania - jeśli witryna przechowuje cokolwiek wrażliwego poza opublikowaną treścią (konta użytkowników, dane klientów, sekrety integracji), po naprawieniu problemu warto wymienić przechowywane poświadczenia i klucze tajne oraz przejrzeć dzienniki dostępu pod kątem nietypowej aktywności zapytań, jeśli je Państwo prowadzą.
Chcę to jasno powiedzieć: nie badałem Państwa witryny pod tym kątem i nie wiem, czy jakiekolwiek dane zostały odczytane. Ta wskazówka jest tu po to, by mogli Państwo sami zdecydować.
Nie mam webmastera / utknąłem
Jeśli nie zajmują się Państwo witryną osobiście, proszę przekazać tę stronę osobie, która to robi (deweloperowi, agencji lub firmie hostingowej). Powyższe kroki rozpozna od razu.
Jeśli utrzymują Państwo witrynę samodzielnie i utknęli, chętnie bezpłatnie wskażę właściwy kierunek. Proszę napisać, korzystając z danych kontaktowych poniżej.
Kontakt
Evan Harris, badacz bezpieczeństwa
- E-mail: security@mail.mcpsec.dev
- X: @Evan__Harris
- GitHub: eharris128
- LinkedIn: Evan Harris
Kontaktuję się w takich sprawach wyłącznie po to, by pomóc operatorom zabezpieczyć ich witryny. Jeśli wolą Państwo nie otrzymywać kolejnych wiadomości, proszę dać znać; uszanuję to.
Źródła
Oficjalne komunikaty i śledzenie
Producent (Joomlack)