PHP2Shell – krytyczne podatności w PHP (CVE-2026-109618 i CVE-2026-109619). Co musisz wiedzieć i jak się zabezpieczyć
PHP2Shell – krytyczne podatności w PHP (CVE-2026-109618 i CVE-2026-109619). Co musisz wiedzieć i jak się zabezpieczyć
21 października 2026 zespół PHP wydał awaryjną aktualizację bezpieczeństwa, łatającą dwie krytyczne podatności w samym rdzeniu języka PHP. Błędy, określane w społeczności jako PHP2Shell, umożliwiają zdalne wykonanie kodu (RCE) bez uwierzytelnienia. Oba otrzymały ocenę CVSS v4.0 9.2.
Dotyczą one praktycznie wszystkich instalacji PHP obsługujących żądania HTTP – w tym PHP-FPM, Apache mod_php, php-cgi, FrankenPHP i LiteSpeed. Najwyższe ryzyko dotyczy konfiguracji mod_php, gdzie atak może zostać przeprowadzony jeszcze przed uruchomieniem jakiegokolwiek kodu aplikacji.
Jak działają podatności?
CVE-2026-109618 – korupcja pamięci przy braku pamięci (OOM)
Gdy PHP wyczerpie dostępną pamięć w trakcie przetwarzania żądania (np. przy przesyłaniu dużego pliku multipart), przerywa pracę i przechodzi do czyszczenia. W pewnych warunkach struktury danych są tylko częściowo zainicjalizowane. Procedura czyszczenia traktuje je jednak jako poprawne, co prowadzi do korupcji pamięci i możliwości wykonania dowolnego kodu.
CVE-2026-109619 – „stale global state” (use-after-free)
Stan wewnętrzny jednego żądania może przetrwać po zwolnieniu pamięci. Kolejne żądanie obsługiwane przez tego samego workera korzysta z tego nieaktualnego stanu, zanim PHP zdąży go zresetować. Jedną ze ścieżek ataku jest domyślnie włączona funkcja session.upload_progress.
Oba błędy istnieją w samym silniku PHP, więc nawet w pełni zaktualizowana aplikacja (WordPress, Joomla, Drupal, Laravel itd.) pozostaje podatna, jeśli działa na niezaktualizowanej wersji PHP.
Jakie niesie zagrożenia?
- Pełne przejęcie serwera (wykonanie kodu z uprawnieniami procesu PHP)
- Kradzież haseł, tokenów, kluczy API i certyfikatów z pamięci procesu
- Instalacja backdoorów, ransomware, kryptominerów
- Ataki na inne usługi działające na tym samym serwerze
- Masowe skanowanie i eksploatacja – już obserwowane w sieci (m.in. przez Amazon Threat Intelligence)
Ponieważ PHP napędza większość stron internetowych na świecie, skala potencjalnego zagrożenia jest ogromna.
Które wersje są podatne i jak je naprawić?
| Gałąź PHP | Podatne wersje | Naprawiona wersja |
|---|---|---|
| PHP 8.5 | przed 8.5.12 | 8.5.12 |
| PHP 8.4 | przed 8.4.27 | 8.4.27 |
| PHP 8.3 | przed 8.3.36 | 8.3.36 |
| PHP 8.2 | przed 8.2.35 | 8.2.35 |
| PHP 8.1 i starsze | wszystkie | brak oficjalnej łatki (tylko backports źródłowe) |
Jedynym kompletnym rozwiązaniem jest aktualizacja PHP.
Tymczasowe środki zaradcze (jeśli nie możesz od razu zaktualizować)
- Wyłącz session.upload_progress.enabled = 0 w php.ini
- Na PHP 8.5 ustaw również fatal_error_backtraces = 0
- Ustaw pm.max_requests = 1 (PHP-FPM) – ogranicza możliwość wykorzystania stanu między żądaniami
- Zrestartuj wszystkie workery PHP (Apache, PHP-FPM itd.)
Pamiętaj: te działania jedynie zmniejszają ryzyko, nie eliminują go całkowicie.
Co zrobić teraz?
- Sprawdź wersję PHP: php -v
- Zaktualizuj do najnowszej poprawionej wersji w swojej gałęzi
- Zrestartuj usługi PHP/Apache/Nginx
- Monitoruj logi pod kątem podejrzanych żądań (szczególnie multipart/form-data)
- Jeśli korzystasz z hostingu współdzielonego – skontaktuj się z dostawcą i dopytaj o aktualizację
Źródła: oficjalne advisories PHP (GHSA-w8hw-w9fx-j79w, GHSA-6wmf-4rv5-p3rp), CERT-EU, raporty firm bezpieczeństwa (Wiz, JFrog, Amazon).
Aktualizacja PHP powinna być priorytetem numer jeden dla każdego administratora serwerów webowych.
Jak wyłączyć Inteligentna kontrola aplikacji (Smart App Control)
Jak wyłączyć Inteligentna kontrola aplikacji (Smart App Control)
- Kliknij przycisk Start> i wpisz w polu wyszukiwania
Inteligentna kontrola aplikacji>(lubSmart App Control>), a następnie wybierz odpowiedni wynik.>>
- Kliknij przycisk Start> i wpisz w polu wyszukiwania
- Ewentualnie wejdź ścieżką: Ustawienia> > Prywatność i zabezpieczenia> > Zabezpieczenia Windows> > Kontrola aplikacji i przeglądarki>.>>
- Kliknij Ustawienia inteligentnej kontroli aplikacji>.>>
- Zmień ustawienie na Wyłączone>.>
- >
- Tryb wyłączenia:> Jeśli funkcja znajduje się obecnie w trybie oceny>, możesz ją wyłączyć bezpośrednio w tym miejscu.>>
- Pełne włączenie a ponowna instalacja:> Jeśli funkcja była już w pełni aktywna (włączona>), jej wyłączenie w tym menu może być niemożliwe bez przeprowadzenia ponownej instalacji systemu Windows.>>
- Bezpieczeństwo:> Wyłączenie tego mechanizmu obniża poziom ochrony systemu przed niezaufanymi programami.>
- >
Wyłączenie synchronizacji EDGE na komputerach podłączonych do wspólnego konta Microsoft
Po zalogowaniu tego samego konta Microsoft na kilku komputerach została włączona synchronizacja danych przeglądarki Microsoft Edge. Office sam w sobie nie powinien wymieniać haseł między komputerami, ale logowanie do konta Microsoft może spowodować uruchomienie synchronizacji Edge.
Na każdym komputerze możesz to zablokować.
1. Wyłącz synchronizację Edge
Na komputerze, na którym nie chcesz udostępniać haseł i ulubionych:
- Otwórz Microsoft Edge.
- Wpisz w pasku:
edge://settings/profiles/sync - Wyłącz Synchronizacja.
Jeżeli chcesz pozostawić synchronizację niektórych danych, ale bez haseł i ulubionych, wyłącz przynajmniej:
- Hasła
- Ulubione
- Autouzupełnianie
- Historia
- Ustawienia — jeśli również nie chcesz ich współdzielić.
2. Ważne: sprawdź konto używane przez Edge
Wejdź w:
edge://settings/profiles
Sprawdź, czy Edge jest zalogowany na to samo konto Microsoft, którego używasz do aktywacji Office 2024.
Jeżeli jest to wspólne konto firmowe używane na wielu komputerach, to właśnie to jest prawdopodobną przyczyną.
3. Jeżeli chcesz całkowicie rozdzielić komputery
Jeżeli każdy komputer ma mieć własne ulubione, własne hasła i własną historię, najlepszym rozwiązaniem jest:
- Office może być aktywowany zgodnie z licencją na właściwym koncie,
- ale Edge powinien być używany z osobnym kontem/proflem użytkownika albo bez synchronizacji.
Szczególnie w firmie nie polecam używania jednego konta Microsoft jako konta Edge na wszystkich komputerach, ponieważ oprócz ulubionych mogą synchronizować się również zapisane hasła.
4. Jeżeli hasła już się wymieszały
Samo wyłączenie synchronizacji niekoniecznie usunie już pobrane hasła i ulubione z poszczególnych komputerów.
Możemy zrobić to bezpiecznie, tak aby:
- na każdym komputerze zostały jego własne hasła,
- usunąć hasła pochodzące z innych komputerów,
- zatrzymać dalszą synchronizację,
- a jednocześnie nie utracić haseł, które są potrzebne.
Jeśli masz np. 10 komputerów z Office 2024 na jednym koncie Microsoft, można zablokować synchronizację haseł przez zasady grupy Windows (GPO) - administrator centralnie blokuje synchronizację haseł i ulubionych w Edge na wszystkich komputerach. To najlepsze rozwiązanie w środowisku firmowym.
Optima konfiguracja dwu kluczy klucz HASP + klucz virtualny do KSeF
W jaki sposób skonfigurować pracę w Comarch ERP Optima w przypadku posiadania wielu kluczy?
Posiadamy dwa klucze klucz HASP (fizyczny) oraz klucz virtualny z licencjami KSeF
Główny klucz musi zostać przypisany do bazy firmowej. W tym celu w konfiguracji firmy (Konfiguracja Firmy/ Ogólne/ Parametry) należy uzupełnić pole Dedykowany serwer klucza dla bazy firmowej. W polu tym po nazwie serwera SQL oraz dwóch dwukropkach „::” należy podać numer klucza, jeżeli chcemy pobierać moduły z określonej puli
Następnie trzeba skonfigurować klucz Virtualny:
- Wpisz numer klucza w konfiguracji:> Zaloguj się do Comarch ERP Optima, przejdź do ścieżki Konfiguracja → Firma → Dane firmy → KSeF> i w polu „Numer klucza KSeF” wpisz numer tego drugiego klucza wirtualnego (np.
5000000001>).> - Wykonaj aktualizację modułów:> Otwórz program Comarch ERP Menadżer Kluczy> na serwerze i upewnij się, że dla nowego klucza wirtualnego kliknięto opcję Aktualizuj moduły>, aby pobrać przypisane uprawnienia z serwerów Comarch.>
- Sprawdź wersję programu:> Upewnij się, że używasz wersji Optimy minimum
2026.4.1>lub2026.5.1 (x64)>, która w pełni obsługuje protokół KSeF API 2.0 i nowe pakiety.>
- Problemy z komunikacją Comarch Optima z KSeF
- Cyber Attack on MyDr – One of the Largest Data Breaches in Polish History. Detailed Incident Analysis
- Cyberatak na MyDr – jeden z największych wycieków danych w historii Polski. Szczegółowa analiza incydentu
- Najprostszy i najlepszy sposób na uruchomienie lokalnego AI na Rocky Linux to Ollama.
- XRDP - ROcky
Strona 1 z 126
