Blog

Krytyczne luki w PrestaShop: co trzeba teraz naprawić w Twoim sklepie

Luki w PrestaShop i jego modułach, które można wykorzystać bez logowania: Faceted Search, formularz kontaktowy, Ap PageBuilder, stare moduły importu. Kogo dotyczą, jak to sprawdzić i jak je usunąć.

Krytyczne luki w PrestaShop: co trzeba teraz naprawić w Twoim sklepie

W ostatnich miesiącach ujawniono kilka krytycznych luk, które pozwalają osobie z zewnątrz przejąć sklep bez logowania: w domyślnym module filtrów, w formularzu kontaktowym i w kreatorze stron dołączanym do wielu komercyjnych motywów. W tym artykule omawiamy każdą z nich: kogo dotyczy, jak to sprawdzić i jak ją usunąć.

Bez technicznego żargonuW skrócie: co jest nie tak i co trzeba zrobić?

PrestaShop i niektóre popularne moduły mają znane luki, które pozwalają obcym wejść do sklepu bez hasła i dostać się do zamówień, danych klientów, a nawet samego serwera.

Trzeba je usunąć w sklepie: przez aktualizację albo, jeśli aktualizacja nie wchodzi w grę, przez naniesienie poprawki na wersję, która już działa.

Co zrobić: zapytaj osobę, która opiekuje się Twoim sklepem, czy poniższe punkty są załatwione. Jeśli nikt się nim nie opiekuje, możesz poprosić nas o przegląd sklepu za pomocą formularza poniżej.

Pytania do programisty

Która wersja modułu Faceted Search jest zainstalowana i czy jest to 4.0.4 lub nowsza? Czy luka w formularzu kontaktowym (CVE-2026-44212) została usunięta, przez aktualizację PrestaShop lub oficjalnym modułem z poprawką (hotfix)? Czy w sklepie jest Ap PageBuilder lub inny moduł motywów Leo i w jakiej wersji? Czy na serwerze zostały moduły, które nie są już używane?

Cztery krytyczne luki w PrestaShop i jak je sprawdzić: Faceted Search, formularz kontaktowy, Ap PageBuilder, stary moduł importu
Wszystkie cztery można wykorzystać bez logowania.

Które luki w PrestaShop są teraz krytyczne?

LukaNa co pozwalaKogo dotyczyPoprawka
Moduł filtrów Faceted Search
CVE-2026-54159, 10/10
uruchomienie kodu na serwerze bez logowaniamoduł 3.0.0–4.0.3, gdy filtry zawierają suwak ceny lub wagimoduł 4.0.4
Formularz kontaktowy
CVE-2026-44212, 9,3/10
przejęcie panelu administracyjnego przez wysłaną wiadomośćkażdy PrestaShop przed 8.2.6 oraz 9.0.0–9.1.08.2.6, 9.1.1 lub oficjalny moduł z poprawką
Ap PageBuilder (motywy Leo)
CVE-2022-22897, 9,8/10
CVE-2024-6648, 8,7/10
dostęp do bazy danych; odczyt dowolnego pliku na serwerze2.4.5 i starsze; przed 4.0.0nowsza wersja modułu lub przeniesiona poprawka
Moduł importu produktów (simpleimportproduct)
CVE-2024-25846, 10/10
wgranie pliku PHP bez logowania6.7.0 i starsze, nawet gdy moduł nie jest zainstalowanynowsza wersja lub usunięcie modułu z serwera

Ocena to standardowa w branży skala powagi luk (CVSS); wszystko powyżej 9 uznaje się za krytyczne. Każda luka ma publiczny biuletyn bezpieczeństwa, do którego linki znajdziesz na końcu artykułu.

Faceted Search to domyślny moduł filtrów PrestaShop, którego kupujący używają na stronach kategorii, aby zawęzić produkty według ceny, marki lub cechy. W wersjach od 3.0.0 do 4.0.3 jedno żądanie od niezalogowanej osoby mogło uruchomić kod na serwerze, co może prowadzić do pełnego przejęcia sklepu i serwera. W praktyce atakujący zwykle podrzucają własny plik PHP do folderu modułu.

Dotyczy to każdego sklepu z wersją modułu od 3.0.0 do 4.0.3, jeśli jego filtry zawierają suwak ceny lub wagi. Poprawką jest wersja 4.0.4 modułu, wydana 3 czerwca 2026 roku. Jeśli modułu nie da się zaktualizować, bo wersja PrestaShop jest zbyt stara, poprawkę można nanieść ręcznie na jeden plik zainstalowanej wersji.

Jeśli w Twoim sklepie działała podatna wersja, PrestaShop zaleca sprawdzenie śladów włamania: nieznanych plików PHP w folderze modules/ps_facetedsearch/. Jeśli je znajdziesz, sama aktualizacja modułu nie wystarczy i sklep wymaga dokładnego zbadania.

Co jest nie tak z formularzem kontaktowym?

Każdy mógł wysłać publiczny formularz kontaktowy z adresem e-mail, w którym ukryto kod. Gdy pracownik otworzył tę wiadomość w panelu administracyjnym w sekcji Obsługa klienta, kod uruchamiał się w jego przeglądarce, a atakujący mógł przejąć jego sesję i uzyskać dostęp do zamówień, danych klientów i ustawień, bez potrzeby znajomości hasła.

Luka tkwi we własnym kodzie PrestaShop, więc dotyczy każdej wersji przed 8.2.6, w tym 1.7 i 1.6. Nie ma ustawienia, które by ją obchodziło. Została usunięta w wersjach 8.2.6 i 9.1.1, a dla sklepów, które nie mogą się zaktualizować, PrestaShop wydał oficjalny moduł z poprawką, działający w wersjach 1.7, 8 i 9. W wersji 1.6 i innych wersjach nieobsługiwanych przez ten moduł poprawkę trzeba nanieść ręcznie na szablon panelu administracyjnego.

Na czym polega problem z Ap PageBuilder i motywami Leo?

Ap PageBuilder (appagebuilder) to moduł do budowania stron dołączany do wielu komercyjnych motywów PrestaShop, głównie od Leo Theme i Apollo Theme. Właściciele sklepów często nie mają pojęcia, że jest zainstalowany. Ma dwie znane krytyczne luki:

  • 2.4.5 i starsze: bazę danych można odczytywać i zmieniać bez logowania, co może prowadzić do uzyskania dostępu administratora i wycieku danych klientów (9,8/10).
  • Przed 4.0.0: bez logowania można odczytać dowolny plik na serwerze, w tym konfigurację sklepu i hasło do bazy danych (8,7/10).

Kod ataku na obie luki jest publiczny, a według grupy bezpieczeństwa Friends of Presta zakodowane żądania mogą przechodzić przez większość zapór aplikacji internetowych (WAF). W sklepach, które sprawdzaliśmy, poprawek wymagały też inne moduły Leo dołączane do motywu (pokaz slajdów, szybkie logowanie, blog), dlatego warto sprawdzić moduły motywu razem.

Dlaczego stary, nieużywany moduł stanowi ryzyko?

Wyłączenie lub odinstalowanie modułu może pozostawić jego pliki na serwerze, a pliki PHP modułu nadal działają po bezpośrednim wywołaniu, nawet gdy PrestaShop już o module zapomniał. Nasz artykuł o ryzyku związanym z modułami wyjaśnia różnicę między wyłączeniem, odinstalowaniem i usunięciem.

Dobrym przykładem jest moduł importu produktów simpleimportproduct: w wersji 6.7.0 i starszych każdy mógł wgrać do sklepu plik PHP. Friends of Presta informuje, że ta luka jest masowo wykorzystywana do podrzucania sklepom kodu wykradającego dane kart płatniczych. Jeden z badanych przez nas sklepów został zaatakowany właśnie przez taki moduł importu, pozostawiony na serwerze bez instalacji.

Co, jeśli mój PrestaShop jest zbyt stary, żeby dostawać aktualizacje?

PrestaShop opublikował poprawione wydania w gałęziach 8.2 i 9.1 (8.2.6 i 9.1.1). W starszym sklepie (1.6, 1.7, 8.0–8.1) pełna aktualizacja obejmuje także motyw i moduły, więc nie zawsze można ją przeprowadzić od razu. W takim przypadku poprawkę można przenieść na wersję, z której korzystasz: podatny plik zmienia się tak, aby odpowiadał poprawionemu, a reszta sklepu zostaje bez zmian. Nasz przegląd aktualizacji bezpieczeństwa z 2026 roku wymienia poprawki w obsługiwanych gałęziach, wydanie po wydaniu.

Rozwiązaniem długoterminowym nadal jest aktualizacja do obsługiwanej wersji, bo tylko tam poprawka kolejnej luki pojawi się sama.

Co warto zrobić teraz?

  1. Sprawdź wersję Faceted Search w sekcji Moduły > Menedżer modułów. Jeśli jest niższa niż 4.0.4, zaktualizuj moduł lub nanieś poprawkę i poszukaj nieznanych plików PHP w folderze modułu.
  2. Usuń lukę w formularzu kontaktowym, aktualizując PrestaShop do 8.2.6 lub 9.1.1 albo za pomocą oficjalnego modułu z poprawką. Do tego czasu zachowaj ostrożność przy otwieraniu wiadomości w Obsłudze klienta.
  3. Przejrzyj moduły motywu: czy jest Ap PageBuilder lub inny moduł Leo i w jakiej wersji.
  4. Usuń nieużywane moduły z serwera, zwłaszcza stare moduły importu i eksportu.

Październikowa luka w PHP to osobna sprawa, którą usuwa firma hostingowa; omawiamy ją w artykule o luce w PHP.

Najczęściej zadawane pytania

P: Jak sprawdzić, na jakiej wersji PrestaShop działa mój sklep?

O: W panelu administracyjnym, w sekcji Zaawansowane > Informacje. Lukę w formularzu kontaktowym trzeba usunąć w każdej wersji przed 8.2.6 oraz w wersjach 9.0.0–9.1.0.

P: Skąd mam wiedzieć, czy w moim sklepie jest Ap PageBuilder?

O: Wyszukaj go w sekcji Moduły > Menedżer modułów, z widocznymi także wyłączonymi modułami. Jeśli jego pliki są na serwerze, ale moduł nie jest zainstalowany, zobaczysz je tylko w folderze modules na koncie hostingowym.

P: Jak bardzo to pilne?

O: Luki w Faceted Search i formularzu kontaktowym można wykorzystać bez logowania, a ich szczegóły są publiczne, więc warto je usunąć już teraz. Pełną aktualizację PrestaShop można przeprowadzić później, w zaplanowany sposób.

P: Co, jeśli sklep został już zhakowany?

O: Wtedy sama aktualizacja nie wystarczy: trzeba znaleźć i usunąć pliki atakującego oraz utworzone przez niego konta administratora, a także zmienić hasła i klucze tajne. Nasz przegląd obejmuje również to.

Źródła: Biuletyn bezpieczeństwa Faceted Search (GitHub), PrestaShop: aktualizacja Faceted Search, Biuletyn bezpieczeństwa formularza kontaktowego (GitHub), PrestaShop 8.2.6, Friends of Presta: Ap PageBuilder (2023), Friends of Presta: Ap PageBuilder (2025), Friends of Presta: simpleimportproduct

Udostępnij

Otrzymuj informację o nowościach i wyprzedażach

Zapisując się, zgadzam się, aby PrestaHU wysyłało mi newslettery i wykorzystywało mój adres e-mail w postaci zahaszowanej do tworzenia grup odbiorców reklam w Google Ads i Meta. Zgodę można wycofać w dowolnym momencie.

Polityka prywatności

Rozsuń palce lub stuknij dwukrotnie, aby powiększyć

Moje moduły