Możemy otrzymywać prowizje za polecane przez nas produkty. Dowiedz się więcej.
PHP2Shell: jak sprawdzić i zaktualizować wersję PHP swojej witryny
PHP2Shell: jak sprawdzić i zaktualizować wersję PHP na swojej stronie internetowej
21 października 2026 roku projekt PHP wydał poprawki dwóch krytycznych luk, nazwanych PHP2Shell, które mogą umożliwić atakującemu uruchomienie własnego kodu na serwerze WWW bez logowania. Według W3Techs PHP obsługuje około 70% stron internetowych, w tym każdą witrynę opartą na WordPressie, więc problem dotyczy bardzo dużej części internetu.

Rozwiązaniem jest nowsza wersja PHP, a nie aktualizacja WordPressa czy wtyczek. Ten poradnik w prosty sposób wyjaśnia, jak sprawdzić, jakiej wersji PHP używa Pana/Pani witryna, oraz przedstawia najprostsze sposoby jej aktualizacji.
Spis treści:
- Wprowadzenie
- Czym jest PHP2Shell?
- Które wersje PHP zostały poprawione
- Sposób 1: Sprawdzenie wersji PHP za pomocą PCrisk Website Scanner
- Sposób 2: Sprawdzenie wersji PHP w WordPressie
- Sposób 3: Sprawdzenie panelu sterowania hostingu
- Sposób 4: Zapytanie dostawcy hostingu
- Jak zaktualizować PHP
- Jeśli nie może Pan/Pani od razu zaktualizować
- Podsumowanie
- Często zadawane pytania (FAQ)
Czym jest PHP2Shell?
PHP to język programowania używany do tworzenia stron większości witryn internetowych - od blogów na WordPressie po sklepy internetowe. PHP2Shell to nazwa, którą badacze nadali atakowi łączącemu dwie nowo odkryte luki w PHP, CVE-2026-109618 i CVE-2026-109619. Zostały one wykryte przez badaczy z Calif, Wiz i OpenAI i zgłoszone projektowi PHP w sierpniu.
W swoim biuletynie bezpieczeństwa projekt PHP informuje, że luki „mogą umożliwić zdalne wykonanie kodu bez uwierzytelnienia”. Mówiąc prościej, obca osoba może wysłać do Pana/Pani witryny specjalnie spreparowane żądanie i w najgorszym przypadku przejąć kontrolę nad obsługującym ją serwerem. Problem tkwi w samym PHP, jeszcze zanim zostanie uruchomiony jakikolwiek kod WordPressa, wtyczki czy motywu.
Kilka rzeczy, o których warto wiedzieć:
- Problem dotyczy niemal każdej witryny działającej na PHP, niezależnie od konfiguracji hostingu. Według PHP ryzyko jest najwyższe na serwerach, które uruchamiają PHP wewnątrz Apache (mod_php).
- Ataki rozpoczęły się natychmiast. Amazon odnotował pierwszą próbę 17 października, jeszcze przed ogłoszeniem, a prezes Cloudflare mówił o milionach prób w ciągu kilku godzin od ogłoszenia. Według stanu na 22 października nie potwierdzono publicznie żadnego udanego włamania.
- Aktualizacja WordPressa, wtyczek lub motywów nie rozwiązuje problemu. Pomaga wyłącznie zaktualizowana wersja PHP.
Które wersje PHP zostały poprawione
Wersje PHP są pogrupowane w rodziny, zwane gałęziami, np. 8.3. Każda gałąź otrzymuje drobne aktualizacje oznaczane trzecią liczbą, np. 8.3.35 i 8.3.36. Poprawka trafiła do najnowszego wydania każdej wspieranej gałęzi:
| Pana/Pani gałąź PHP | Poprawiona wersja | Aktualizacje bezpieczeństwa do |
| PHP 8.5 | 8.5.12 lub nowsza | 31 grudnia 2029 |
| PHP 8.4 | 8.4.27 lub nowsza | 31 grudnia 2028 |
| PHP 8.3 | 8.3.36 lub nowsza | 31 grudnia 2027 |
| PHP 8.2 | 8.2.35 lub nowsza | 31 grudnia 2026 (wkrótce się kończy) |
| PHP 8.1, 8.0, 7.4 i starsze | Brak oficjalnego wydania | Zakończone (koniec cyklu życia) |
Daty pochodzą ze strony wspieranych wersji PHP. WordPress zaleca PHP 8.3 lub nowsze, a mimo to około jedna trzecia witryn na WordPressie nadal działa na PHP 8.1 lub starszym, według statystyk WordPress.org.

Zanim sprawdzi Pan/Pani własną witrynę, warto poznać dwa wyjątki:
- Niektórzy dostawcy hostingu poprawiają PHP bez zmiany numeru wersji. Ubuntu, Plesk, cPanel, CloudLinux oraz kilka firm hostingowych udostępniło poprawione kompilacje, które zachowują stary numer wersji, w tym poprawki dla PHP 7.4, 8.0 i 8.1. Jeśli numer wersji się nie zmienił, decydujące znaczenie ma komunikat dostawcy hostingu.
- Stara gałąź pozostaje ryzykowna, nawet po załataniu. PHP 8.1 i starsze nie otrzymują już oficjalnych poprawek bezpieczeństwa, więc kolejna luka może w ogóle nie zostać naprawiona. Warto zaplanować przejście na PHP 8.3 lub 8.4.
Sposób 1: Sprawdzenie wersji PHP za pomocą PCrisk Website Scanner
To najszybszy sposób, który nie wymaga logowania. Bezpłatny PCrisk Website Scanner odczytuje wersję PHP, którą Pana/Pani witryna zgłasza każdemu odwiedzającemu, i porównuje ją z najnowszymi wydaniami.
1. Proszę otworzyć scanner.pcrisk.com i wpisać adres swojej witryny, na przykład your-site.com.
2. Proszę uruchomić skanowanie i poczekać na raport. Zwykle trwa to minutę lub dwie.
3. Proszę znaleźć wiersz PHP Version pod kafelkami informacyjnymi. Należy kliknąć „Details” , aby zobaczyć zgłaszaną wersję, gałąź, datę zakończenia wsparcia oraz najnowsze wydanie.

Wiersz pokazuje jeden z następujących wyników:
- Up to date: witryna zgłasza najnowsze wydanie swojej gałęzi.
- Update available: istnieje nowsze wydanie. W powyższym przykładzie witryna zgłasza wersję 8.3.35, czyli o jedno wydanie starszą od poprawionej 8.3.36.
- Support ends soon lub End of life: gałąź przestaje lub przestała otrzymywać poprawki bezpieczeństwa.
- Version hidden: witryna działa na PHP, ale nie ujawnia, jakiej wersji. Większość witryn ją ukrywa, co jest dobrą praktyką, dlatego należy skorzystać ze sposobu 2, 3 lub 4.
Skaner odczytuje wersję zgłaszaną przez serwer. Nie atakuje witryny ani nie sprawdza, czy można wykorzystać lukę. To samo skanowanie sprawdza również witrynę za pomocą ponad 90 silników bezpieczeństwa i 10 baz danych zagrożeń.
Inne bezpłatne narzędzia online. Dwie firmy zajmujące się bezpieczeństwem również udostępniły bezpłatne narzędzia do sprawdzania podatności na PHP2Shell:
Brandefense PHP2Shell check: odczytuje wersję PHP zgłaszaną przez witrynę, podobnie jak skaner PCrisk, i informuje, czy mieści się ona w zakresie podatnych wersji. Ostrzega również, gdy usługa taka jak Cloudflare może ukrywać wersję.
Aikido PHP2Shell checker: zamiast odczytywać wersję, wysyła do witryny żądania testowe i mierzy reakcję PHP. Należy używać go wyłącznie na własnej witrynie i pozostawić opcjonalną funkcję „definitive check” wyłączoną na działającej witrynie, ponieważ może ona spowodować awarię procesu PHP.
Każde zewnętrzne sprawdzenie ma swoje ograniczenia. Narzędzie odczytujące wersję nie wykryje poprawki dodanej przez dostawcę hostingu bez zmiany numeru, a Aikido przyznaje, że sam test czasowy nie pozwala odróżnić załatanego PHP od podatnego. Każdy wynik należy traktować jako punkt wyjścia i potwierdzić go sposobem 2, 3 lub 4.
Sposób 2: Sprawdzenie wersji PHP w WordPressie
WordPress pokazuje dokładną wersję PHP, na której działa witryna, nawet jeśli jest ona ukryta przed odwiedzającymi.
1. Proszę zalogować się do kokpitu WordPressa i przejść do sekcji Narzędzia, a następnie Kondycja witryny.
2. Proszę otworzyć kartę Informacje i rozwinąć sekcję Serwer.
3. Proszę odczytać wiersz z wersją PHP. W poniższym przykładzie witryna działa na wersji 8.3.33, więc wymaga aktualizacji do 8.3.36.

Nie należy polegać na zielonych znacznikach na karcie Stan. Kondycja witryny określa każde PHP 8.3 lub nowsze jako „zalecaną wersję PHP”, nawet jeśli brakuje w nim poprawki PHP2Shell, jak w tym samym przykładzie:

To samo dotyczy kokpitu. WordPress wyświetla okno „Wymagana aktualizacja PHP” tylko w przypadku PHP 8.0 i starszych, takich jak 7.4 poniżej. Brak tego okna nie oznacza, że wersja jest aktualna.

Inne systemy do tworzenia witryn mają podobną stronę: w Joomla należy otworzyć „System”, a następnie „Informacje o systemie”. W Drupalu należy otworzyć „Raporty”, a następnie „Raport stanu”. Sklepy WooCommerce mogą również sprawdzić wersję PHP w sekcji „WooCommerce”, „Status”.
Sposób 3: Sprawdzenie panelu sterowania hostingu
Panel hostingu pokazuje, z której gałęzi PHP korzysta witryna, i to właśnie w nim można ją zmienić. W cPanel należy otworzyć „MultiPHP Manager” (lub Select PHP Version u wielu tanich dostawców hostingu). W Plesk należy otworzyć „Websites & Domains”, a następnie „PHP”. Dostawcy z własnymi panelami, tacy jak Hostinger, SiteGround, GoDaddy i Kinsta, mają stronę PHP w ustawieniach witryny (patrz tabela w sekcji o aktualizacji poniżej).
Większość paneli pokazuje tylko gałąź, np. „PHP 8.3”, a nie pełny numer wersji. Plesk i PHP Manager w SiteGround pokazują pełny numer, a Hostinger i Bluehost mają osobną stronę PHP Info, która go wyświetla. Drobne aktualizacje bezpieczeństwa w obrębie gałęzi instaluje dostawca hostingu, dlatego przed założeniem, że poprawka PHP2Shell jest zainstalowana, należy sprawdzić pełny numer lub zapytać dostawcę.
Jeśli korzysta Pan/Pani z własnego serwera (VPS lub serwera dedykowanego), Pan/Pani lub Pana/Pani programista może sprawdzić wersję bezpośrednio na serwerze. Należy pamiętać, że PHP wiersza poleceń może różnić się od PHP obsługującego witrynę, a także nigdy nie pozostawiać online tymczasowej strony wyświetlającej ustawienia PHP.
Sposób 4: Zapytanie dostawcy hostingu
To najbardziej wiarygodna odpowiedź, ponieważ tylko dostawca hostingu wie, jaką kompilację zainstalował. Większość dużych dostawców opublikowała informacje o aktualizacji PHP2Shell na swoim blogu lub stronie statusu 21 lub 22 października, więc warto najpierw tam zajrzeć. Jeśli nic Pan/Pani nie znajdzie, proszę wysłać do pomocy technicznej krótką wiadomość, na przykład:
„Czy PHP na moim koncie hostingowym zostało zaktualizowane pod kątem CVE-2026-109618 i CVE-2026-109619 (PHP2Shell)? Jakiej wersji i kompilacji PHP używam i czy PHP zostało ponownie uruchomione po aktualizacji? Jeśli nie zostało jeszcze zaktualizowane, kiedy to nastąpi?”
Jak zaktualizować PHP
Istnieją dwa różne rodzaje aktualizacji PHP, a to, kto je przeprowadza, zależy od hostingu.
Aktualizację bezpieczeństwa w obrębie gałęzi (na przykład z 8.3.35 do 8.3.36) instaluje dostawca na hostingu współdzielonym i zarządzanym. Nie ma do tego żadnego przycisku i taka aktualizacja prawie nigdy nie psuje witryny. Oto co przekazali więksi dostawcy według stanu na 22 października 2026:
| Dostawca | Komunikat (stan na 22 października 2026) | Czy trzeba coś zrobić? |
| Hostinger | Aktualizacje zakończone na wszystkich serwerach hostingu zarządzanego (blog) | Nie; właściciele VPS aktualizują samodzielnie |
| GoDaddy | Hosting Managed WordPress i Windows załatany; wdrażanie w cPanel Web Hosting w toku (aktualizacja) | Nie; właściciele VPS aktualizują samodzielnie |
| Bluehost i HostGator | Większość serwerów załatana, w międzyczasie wdrożono zabezpieczenia. (HostGator aktualizacja) | Nie |
| SiteGround | Zabezpieczenia dodane przed wydaniem (blog) | Nie, według SiteGround |
| Kinsta | Wdrażanie poprawek dla PHP od 7.4 do 8.5 | Nie |
| WP Engine | Poprawki zastosowane, incydent zamknięty | Nie |
| Cloudways | Łatanie wszystkich wspieranych wersji, prawie zakończone | Nie |
| WordPress.com | Witryny chronione na poziomie infrastruktury | Nie |
Przejście na nowszą gałąź (na przykład z 7.4 lub 8.1 na 8.3) wykonuje się samodzielnie w panelu hostingu. Należy to zrobić teraz, jeśli witryna działa na PHP 8.2 lub starszym; wersje 8.1 i starsze nie są już wspierane, a wsparcie dla 8.2 kończy się 31 grudnia 2026. Proszę wybrać PHP 8.3 lub 8.4.
1. Proszę wykonać pełną kopię zapasową plików i bazy danych za pomocą narzędzia do kopii zapasowych dostawcy hostingu lub wtyczki do tworzenia kopii zapasowych.
2. Proszę najpierw zaktualizować WordPressa, wtyczki i motyw. Nieaktualne wtyczki to najczęstsza przyczyna awarii witryny po zmianie PHP.
3. Proszę przetestować zmianę na kopii testowej (staging), jeśli dostawca ją oferuje (oferują ją m.in. Kinsta, WP Engine, Cloudways, SiteGround i WordPress.com).
4. Proszę zmienić wersję PHP w panelu hostingu:
| Panel lub dostawca | Gdzie zmienić PHP |
| cPanel | Software>MultiPHP Manager: zaznacz domenę, wybierz wersję PHP, kliknij Apply |
| cPanel z CloudLinux (Namecheap i wielu tanich dostawców) | Software>Select PHP Version: wybierz wersję, następnie Apply lub Set as current |
| Plesk | Websites & Domains>PHP: wybierz wersję PHP, kliknij OK |
| Hostinger | Websites>Dashboard>PHP Configuration: wybierz wersję, kliknij Update |
| SiteGround | Site Tools>Devs>PHP Manager: kliknij ikonę ołówka, wybierz Managed PHP lub konkretną wersję, kliknij Confirm |
| Bluehost | Websites>Manage Site>karta Advanced>PHP Version: Change Version, następnie Apply |
| GoDaddy Web Hosting | Web Hosting>Manage>karta Settings>Server Settings: Change obok PHP Version, następnie Save Changes |
| Kinsta | Sites>Twoja witryna>Tools: Change w ustawieniach PHP |
| WP Engine | Sites>Twoje środowisko>sekcja Updates: kliknij numer wersji PHP, wybierz wersję, Confirm |
| Cloudways | Twoja aplikacja>Application Settings>PHP Settings: edytuj PHP Version |
| WordPress.com | Hosting Dashboard>Twoja witryna>Settings>Server: PHP, wybierz wersję, Save |
5. Proszę od razu sprawdzić witrynę. Należy otworzyć stronę główną i kilka podstron, zalogować się do kokpitu, wysłać wiadomość testową przez formularz kontaktowy, a w przypadku sklepu dodać produkt do koszyka i przejść jak najdalej w procesie składania zamówienia.
6. Jeśli coś przestanie działać, proszę przywrócić poprzednią wersję w tym samym miejscu i poprosić twórcę wtyczki lub motywu o aktualizację. WordPress wysyła też administratorowi witryny e-mail z linkiem do trybu odzyskiwania, jeśli po zmianie wtyczka ulegnie awarii. W Hostinger powrót do starszej wersji działa tylko w ramach tej samej sesji logowania, dlatego należy testować od razu.
Jeśli korzysta Pan/Pani z własnego serwera, należy zainstalować aktualizacje bezpieczeństwa PHP z systemu operacyjnego, a następnie ponownie uruchomić PHP i serwer WWW. Do czasu ponownego uruchomienia nadal działa stare, podatne PHP. Ubuntu, Debian, Red Hat, cPanel, Plesk i CloudLinux wydały poprawione pakiety 21 lub 22 października.
Jeśli nie może Pan/Pani od razu zaktualizować
Aktualizacja to jedyne pełne rozwiązanie, ale poniższe kroki zmniejszają ryzyko w oczekiwaniu na nią:
- Proszę użyć zapory aplikacji internetowych (WAF). Cloudflare automatycznie włączył reguły PHP2Shell we wszystkich planach ze swoją zaporą, łącznie z planem bezpłatnym (wpis Cloudflare). W planach płatnych należy sprawdzić, czy wdrożono Cloudflare Managed Ruleset; jeśli w kokpicie widoczne jest ostrzeżenie php2shell, należy kliknąć Deploy Cloudflare Managed Ruleset. Wielu dostawców hostingu dodało podobne reguły na własnych serwerach.
- Proszę poprosić dostawcę hostingu o zastosowanie tymczasowych ustawień wymienionych w biuletynie PHP, takich jak wyłączenie śledzenia postępu przesyłania w sesji i zmniejszenie maksymalnego rozmiaru przesyłanych plików. Muszą być one ustawione na serwerze, więc powinien zrobić to dostawca hostingu.
- Proszę wyłączyć witrynę, jeśli działa na PHP 8.1 lub starszym, a dostawca hostingu nie może ani jej załatać, ani zaktualizować.
Należy unikać wtyczek i fragmentów kodu, które obiecują „naprawić PHP2Shell”. Luka znajduje się w samym PHP, więc wtyczka WordPressa nie jest w stanie jej naprawić.
Podsumowanie
PHP2Shell to poważny problem, ponieważ dotyczy jednocześnie ogromnej liczby witryn, ale dla większości właścicieli witryn rozwiązanie jest proste: należy potwierdzić, że dostawca hostingu zainstalował zaktualizowane PHP, i przejść na PHP 8.3 lub 8.4, jeśli nadal korzysta się ze starej gałęzi. Sprawdzenie zajmuje kilka minut, a można zacząć od bezpłatnego skanowania PCrisk.
Często zadawane pytania (FAQ)
Czy PHP2Shell dotyczy mojej witryny na WordPressie?
Tak, jeśli witryna działa na wersji PHP starszej niż 8.2.35, 8.3.36, 8.4.27 lub 8.5.12, a dostawca hostingu nie zainstalował poprawionej kompilacji. Luka znajduje się w PHP, więc w taki sam sposób dotyczy WordPressa, Joomla, Drupala, WooCommerce i każdego innego oprogramowania napisanego w PHP.
Czy aktualizacja WordPressa lub wtyczek naprawia PHP2Shell?
Nie. PHP2Shell trzeba naprawić poprzez załatanie PHP na serwerze. Aktualizacja WordPressa, wtyczek lub motywów nie aktualizuje oprogramowania PHP, na którym działa witryna. Dostawca hostingu lub administrator serwera musi zainstalować poprawione wydanie PHP lub kompilację załataną przez dostawcę i potwierdzić, że witryna z niej korzysta.
Numer wersji PHP się nie zmienił. Czy nadal jestem zagrożony/zagrożona?
Niekoniecznie. Ubuntu, Plesk, cPanel, CloudLinux i niektórzy dostawcy hostingu załatali PHP bez zmiany numeru wersji. Proszę sprawdzić komunikat dostawcy hostingu lub zapytać pomoc techniczną, czy Pana/Pani kompilacja zawiera poprawkę.
Raport PCrisk pokazuje „Version hidden”. Co to oznacza?
Witryna korzysta z PHP, ale nie ujawnia wersji odwiedzającym, co jest dobrą praktyką. Nie wynika z tego jednak, czy witryna jest załatana, dlatego aby uzyskać tę informację, należy sprawdzić wersję w Kondycji witryny WordPressa lub w panelu hostingu albo zapytać dostawcę hostingu.
Jaką wersję PHP wybrać?
PHP 8.3 lub 8.4. Obie wersje będą wspierane jeszcze przez lata i są zalecane przez WordPress i WooCommerce. Należy unikać wersji 8.2, która przestaje otrzymywać aktualizacje bezpieczeństwa 31 grudnia 2026.
Czy zmiana wersji PHP zepsuje moją witrynę?
Aktualizacja bezpieczeństwa w obrębie gałęzi prawie nigdy tego nie robi. Przejście na nowszą gałąź może spowodować problemy z nieaktualnymi wtyczkami lub motywami, dlatego najpierw należy wykonać kopię zapasową, zaktualizować wszystko, w miarę możliwości przetestować zmiany na kopii testowej i przywrócić poprzednią wersję, jeśli coś pójdzie nie tak.
Udostępnij:
Rimvydas Iliavicius
Autor poradników na stronie PCrisk.
Rimvydas jest badaczem z ponad czteroletnim doświadczeniem w branży cyberbezpieczeństwa. Studiował na Uniwersytecie Technicznym w Kownie, a w 2017 roku uzyskał tytuł magistra tłumaczeń i lokalizacji tekstów technicznych. Jego zainteresowania komputerami i technologią sprawiły, że stał się wszechstronnym autorem w branży IT. W PCrisk jest odpowiedzialny za pisanie szczegółowych artykułów poradnikowych dla systemu Microsoft Windows.
Portal bezpieczeństwa PCrisk jest prowadzony przez firmę RCS LT.
Połączone siły badaczy bezpieczeństwa pomagają edukować użytkowników komputerów na temat najnowszych zagrożeń bezpieczeństwa w Internecie. Więcej informacji o firmie RCS LT.
Nasze poradniki usuwania malware są bezpłatne. Jednak, jeśli chciałbyś nas wspomóc, prosimy o przesłanie nam dotacji.
Przekaż darowiznęPortal bezpieczeństwa PCrisk jest prowadzony przez firmę RCS LT.
Połączone siły badaczy bezpieczeństwa pomagają edukować użytkowników komputerów na temat najnowszych zagrożeń bezpieczeństwa w Internecie. Więcej informacji o firmie RCS LT.
Nasze poradniki usuwania malware są bezpłatne. Jednak, jeśli chciałbyś nas wspomóc, prosimy o przesłanie nam dotacji.
Przekaż darowiznę
▼ Pokaż dyskusję