Aktualna sytuacja: PHP2Shell. Dwie krytyczne luki w PHP (CVSS 9,2) umożliwiają wykonanie złośliwego kodu bez logowania. Poprawki od 21.10.2026.Co należy teraz zrobić →

Luka bezpieczeństwa PrestaShop i PHP2Shell: jak chronić swój sklep

PHP2Shell dotyka PrestaShop przez PHP serwera. Po poprawce i restarcie należy sprawdzić foldery override, moduły, kasę i konta pracowników.

Stan 4 min czytaniaPlatformy

Krótko: Luka bezpieczeństwa PrestaShop, o której obecnie jest głośno, to PHP2Shell i tkwi w PHP, a nie w sklepie. Aktualizacja PrestaShop w tej sprawie nie pomaga. Po poprawce PHP i restarcie należy sprawdzić folder override, moduły, kasę i konta pracowników.

Co PHP2Shell oznacza dla sprzedawców korzystających z PrestaShop

PrestaShop to aplikacja PHP rozpowszechniona wśród małych i średnich sprzedawców, często na hostingu współdzielonym lub prostych serwerach vServer. Luki CVE-2026-109618 i CVE-2026-109619 umożliwiają według zespołu PHP zdalne wykonanie złośliwego kodu bez logowania, niezależnie od stanu sklepu.

Dla sklepu stawka jest wysoka: konta klientów, adresy, zamówienia, faktury i dostępy do usług płatniczych i wysyłkowych. Atakujący w sklepach często celują w kasę, gdzie mogą podsłuchiwać dane płatnicze, zanim dotrą do dostawcy płatności.

Dochodzi czynnik czasu. Według doniesień medialnych pierwszą próbę ataku zaobserwowano 17.10.2026, a poprawki ukazały się 21.10.2026. Sklep, który w tym czasie był osiągalny, może być dotknięty, nawet jeśli dziś wszystko wygląda normalnie. Potwierdzonych wskaźników kompromitacji (Indicators of Compromise) na razie nie ma; wskazówki wynikają z nietypowego zachowania, nowych plików i zmian w bazie danych.

Luka bezpieczeństwa PrestaShop: sprawdzanie wersji PHP w Back Office

W Ustawienia zaawansowane > Informacje PrestaShop pokazuje dane o serwerze i PHP dla działającej instalacji. Naprawione wersje upstream to 8.5.12, 8.4.27, 8.3.36 i 8.2.35. Firmy hostingowe czasem wprowadzają poprawki jako backport, a wyświetlany numer pozostaje wtedy ten sam. Proszę poprosić o pisemne potwierdzenie stanu.

To, które wersje PHP obsługuje Państwa wersja PrestaShop, można sprawdzić w wymaganiach systemowych w dokumentacji producenta na prestashop.com. Starsze sklepy w wersjach 1.6 i 1.7 często działają na starszych wersjach PHP; wtedy do czasu aktualizacji obowiązuje to, co opisano w artykule Środki doraźne bez poprawki.

Typowe kryjówki złośliwego kodu w PrestaShop

Miejsce Zawartość Punkt kontroli
app/config/parameters.php (starsze wersje config/settings.inc.php) Dane dostępowe do bazy danych, klucz cookie Data zmiany, po podejrzeniu odnowić
override/ Nadpisane klasy i kontrolery Każdy plik musi dać się wyjaśnić
modules/ Moduły z marketplace'u i od zewnętrznych dostawców Nieznane moduły, zmienione pliki
themes/ Szablony i JavaScript, także dla kasy Obce skrypty
img/, upload/, download/ Obrazy, pliki przesłane przez klientów, produkty cyfrowe Brak plików PHP
var/cache/, var/logs/ Pamięć podręczna i logi Zabezpieczyć logi, wygenerować pamięć podręczną od nowa
install/ Folder instalacyjny Nie może istnieć w trakcie pracy

Folder override zasługuje na szczególną uwagę. Umieszczony tam kod zastępuje części PrestaShop, na przykład obsługę zamówień lub płatności, i nie jest automatycznie usuwany przy aktualizacjach.

Bezpieczne kontrole w wierszu poleceń i w bazie danych (prefiks tabel zależnie od instalacji):

find override -name "*.php" -newermt "2026-10-17"
find img upload download -type f -name "*.php"
ls -d admin*
SELECT email, firstname, lastname, active FROM ps_employee;
Działać natychmiast

Jeśli klienci zgłaszają nietypowe strony płatności lub nadużycie karty po zakupie, proszę wyłączyć kasę z sieci i zabezpieczyć logi od 20.10.2026. Zmanipulowana kasa może przechwytywać dane przy każdym kolejnym zakupie.

Back Office, konta pracowników i moduły

Back Office znajduje się w katalogu o indywidualnej nazwie, nadawanej przy instalacji. Proszę sprawdzić w Ustawieniach zaawansowanych konta pracowników i profile pod kątem nieznanych lub osieroconych dostępów, na przykład od dawnych agencji. Katalog admina należy, jeśli to możliwe, ograniczyć do znanych sieci.

Moduły z marketplace'u i od zewnętrznych dostawców rozszerzają płatności, wysyłkę, marketing i interfejsy. Każdy moduł to dodatkowy kod PHP, a moduły bez aktywnej opieki należą do najczęstszych punktów wejścia w sklepach PrestaShop. Nieużywane proszę odinstalować i usunąć, a nie tylko wyłączać. Także klucze webservice dla API należy sprawdzić pod kątem nieznanych wpisów.

Co potrafi aktualizacja PrestaShop, a czego nie

Aktualizacja PrestaShop lub poszczególnych modułów zamyka błędy w tym kodzie. Nie łata PHP, nie restartuje procesów i nie usuwa ani nadpisań, ani obcych modułów, skryptów w motywie czy nowych kont pracowników. Jeśli przechwycono dane osobowe, może ponadto istnieć obowiązek zgłoszenia; ogólne informacje podaje artykuł Obowiązek zgłoszenia naruszenia RODO: 72 godziny, a ocenę w konkretnym przypadku przeprowadza Państwa inspektor ochrony danych. Na co sprzedawcy powinni zwrócić uwagę poza tym, podsumowuje artykuł Bezpieczeństwo IT dla sklepów internetowych.

W sklepach z kilkoma krajami lub funkcją multistore na tej samej instalacji działa często kilka domen. Znalezisko dotyczy wtedy wszystkich sklepów, nawet jeśli nieprawidłowość zauważono tylko w jednym.

Jak konkretnie pomaga PHP SOS?

  • Ustalamy z Państwa firmą hostingową stan PHP, backport i restart.
  • Zabezpieczamy logi, pliki i bazę danych oraz dokumentujemy stan wyjściowy.
  • Sprawdzamy nadpisania, moduły, motyw, foldery przesyłania, konta pracowników i klucze webservice.
  • W razie znalezisk oczyszczanie i odnowienie dostępów przejmuje nasza usługa usuwania złośliwego oprogramowania.

Częste pytania

Czy aktualizacja PrestaShop zamyka PHP2Shell?

Nie. Aktualizacje PrestaShop usuwają błędy w kodzie sklepu. Luki PHP2Shell leżą w interpreterze PHP i zamyka je wyłącznie aktualizacja PHP lub potwierdzony backport z restartem wszystkich procesów PHP.

Gdzie w PrestaShop zobaczę wersję PHP?

W Back Office w Ustawienia zaawansowane > Informacje. Znajdują się tam dane o serwerze i PHP. Wprowadzonego backportu nie da się rozpoznać po numerze; potwierdza to Państwa firma hostingowa.

Czym jest folder override i dlaczego go sprawdzać?

W folderze override można nadpisywać klasy i kontrolery PrestaShop. Kod w nim działa zamiast oryginału, na przykład w kasie. Nieznane nadpisania są więc ważnym punktem kontroli po podejrzeniu.

Czy katalog admina musi mieć zmienioną nazwę?

PrestaShop nadaje przy instalacji własną nazwę katalogowi admina. Utrudnia to jego znalezienie, ale nie zastępuje silnych haseł, uwierzytelniania dwuskładnikowego ani ograniczenia dostępu.

Źródła

Kontakt natychmiast

Liczy się każda godzina. Proszę napisać do nas teraz.

Proszę krótko opisać system, wersję PHP i obserwacje. Skontaktujemy się z Państwem, ustalimy sytuację i będziemy pracować zdalnie, aż incydent zostanie zamknięty i udokumentowany.

Natychmiastowa pomoc