Dziennik techniczny

php2shell (CVE-2026-109618 / 109619) nie da się ocenić przez php -v: gdzie numery wersji rozjeżdżają się w FPM, Dockerze i dystrybucjach

Opublikowano: 2026-10-22 · Autor: GRAMSHIFT

Wersje CLI i FPM, tagi Dockera, backporty dystrybucji i co sprawdzić na hostingu współdzielonym

php2shell (CVE-2026-109618 / 109619) nie da się ocenić przez php -v: gdzie numery wersji rozjeżdżają się w FPM, Dockerze i dystrybucjach

Ta strona została przetłumaczona przez AI z oryginału w języku japońskim. W razie jakichkolwiek różnic obowiązuje wersja w języku japońskim: 日本語

Jeśli PHP obsługujące żądania WWW (PHP-FPM, mod_php w Apache, php-cgi, FrankenPHP, LiteSpeed) jest starsze niż 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12, dotyczą go luki CVE-2026-109618 i CVE-2026-109619, znane jako php2shell. Rozwiązaniem jest aktualizacja do jednej z tych wersji (a w przypadku pakietów dystrybucji — do poprawionego pakietu) i restart procesów. Sprawdzać należy nie lokalne php -v, lecz „PHP faktycznie obsługujące WWW” oraz „wersję zainstalowanego pakietu”.

Artykuł skupia się na czterech miejscach, w których ocena wyłącznie po numerze wersji prowadzi do błędnych wniosków. Wszystkie liczby i informacje o stanie są podane według stanu na 2026-10-22, a źródła poszczególnych elementów wymieniono na końcu.

Co wiadomo (stan na 2026-10-22)

PozycjaSzczegóły
CVECVE-2026-109618 (GHSA-w8hw-w9fx-j79w) / CVE-2026-109619 (GHSA-6wmf-4rv5-p3rp)
WagaObie luki mają w komunikacie PHP ocenę CVSS v4.0 9.2 (Critical)
Wersje poprawione8.5.12 / 8.4.27 / 8.3.36 / 8.2.35 (wydane 2026-10-21)
Wersje podatneWersje starsze niż powyższe wersje poprawione (według advisories na GitHubie)
ZakresKażde PHP obsługujące żądania WWW. Komunikat wymienia PHP-FPM, mod_php, php-cgi, FrankenPHP i LiteSpeed, przy czym mod_php opisano jako najbardziej zagrożone. W advisories na GitHubie wykorzystanie luki zostało zademonstrowane dla mod_php, a FPM i FrankenPHP oznaczono jako „niezademonstrowane” lub „warunkowe”. Brak demonstracji nie oznacza bezpieczeństwa, dlatego niezależnie od sposobu uruchamiania PHP zaktualizuj do wersji poprawionej
8.1 i starszeProjekt PHP nie wydaje aktualizacji. Dla 7.4 / 8.0 / 8.1 opublikowano minimalne backporty w źródłach, a niektóre dystrybucje i dostawcy LTS mogą dostarczać poprawki
8.2Koniec wsparcia 2026-12-31 (według informacji o wydaniu 8.2.35)

W komunikacie PHP stwierdzono, że „jedyną kompletną poprawką jest aktualizacja”. Środki łagodzące na czas do aktualizacji opisano w dalszej części artykułu.

Pułapka 1: php -v i PHP obsługujące WWW mogą być różne

php -v wpisane przez SSH pokazuje wersję PHP w CLI. Żądania WWW obsługują procesy PHP-FPM albo mod_php załadowany do Apache, czyli osobne pliki binarne i osobne pakiety. Jeśli nowsze PHP zainstalowano tylko dla CLI, równolegle działa kilka wersji albo pula FPM wskazuje inną wersję, strona WWW może pozostać stara, nawet gdy php -v pokazuje wersję poprawioną.

Jest kilka sposobów, by zobaczyć rzeczywistą wersję po stronie WWW.

# FPM w Debianie / Ubuntu (nazwa zależy od wersji)
php-fpm8.3 -v

# FPM w systemach z rodziny RHEL
php-fpm -v

# Sprawdzenie, czy mod_php jest załadowany w Apache
apachectl -M | grep -i php

Najpewniejsza metoda to polecenie, by PHP faktycznie uruchamiane przez WWW samo podało swoją wersję. Umieść tymczasowo plik o trudnej do odgadnięcia nazwie i usuń go zaraz po sprawdzeniu.

<?php echo PHP_VERSION, ' ', PHP_SAPI;

Jeśli PHP_SAPI to fpm-fcgi, PHP działa pod FPM; apache2handler oznacza mod_php; cgi-fcgi oznacza CGI. Nie zostawiaj wystawionego phpinfo(), ponieważ samo w sobie ujawnia ono informacje.

Restart to kolejny krok, który łatwo pominąć. Nawet po wymianie pakietu już działające procesy php-fpm lub Apache mogą nadal wykonywać stary kod. Niektóre konfiguracje restartują się automatycznie po aktualizacji pakietów, inne nie. Po aktualizacji zrestartuj FPM / Apache i ponownie sprawdź wersję po stronie WWW powyższymi metodami.

Pułapka 2: w Dockerze nie oceniaj po nazwie tagu

Oficjalny obraz php ma „ruchome tagi”, takie jak 8.3 i 8.3-fpm, których zawartość jest podmieniana, oraz tagi przypięte, takie jak 8.3.30, które utrzymują stałą wersję.

  • Nawet gdy ruchomy tag na Docker Hub wskazuje już wersję poprawioną, Twoja lokalna kopia pozostaje starym obrazem, dopóki nie wykonasz ponownie pull. Działające kontenery również używają starego obrazu, dopóki nie zostaną odtworzone. Dockerfile z FROM php:8.3-fpm nadal zbuduje się na starej bazie, jeśli ta pozostaje w pamięci podręcznej budowania.
  • Tag przypięty pozostaje stary na zawsze, dopóki sam nie zmienisz numeru.

Czy opublikowano tagi z wersjami poprawionymi, możesz sprawdzić przez API Docker Hub.

curl -s "https://hub.docker.com/v2/repositories/library/php/tags?name=8.3.36&page_size=100"

Oto wyniki zapytań dla czterech linii wydań z 2026-10-22 (czasy w UTC).

Wersja poprawionaZnalezione tagiKiedy pojawiły się tagi oparte na Debianie (-fpm, -apache itd.)Tagi oparte na Alpine
8.5.1254 (w tym RC1)2026-10-21 18:59–22:132026-10-21 22:12–10-22 01:05
8.4.2754 (w tym RC1)2026-10-21 22:09–22:112026-10-21 22:09–10-22 03:58
8.3.36272026-10-21 22:04–22:062026-10-21 22:04–10-22 03:56
8.2.35272026-10-21 21:59–22:012026-10-21 22:00–10-22 00:58

Podczas sprawdzania wyszły trzy miejsca, w których ocena po samych numerach może wprowadzić w błąd.

  1. „Ostatnio zaktualizowany” nie znaczy „naprawiony”. Przypięty tag 8.3.35 został przebudowany 2026-10-21, ale PHP_VERSION w środku nadal wynosiło 8.3.35. Patrz na wersję wewnątrz obrazu, a nie na datę aktualizacji.
  2. Różne digesty mogą oznaczać tę samą zawartość. Tagi 8.3 i 8.3.36 miały różne digesty (wartość indeksu obejmującego wiele architektur), ale obraz amd64 był identyczny i w obu PHP_VERSION=8.3.36. Tak samo w przypadku 8.3-fpm / 8.3.36-fpm, 8.4-apache / 8.4.27-apache, latest / 8.5.12, 8.5-fpm i 8.2-fpm: PHP_VERSION obrazu amd64 była wersją poprawioną.
  3. Dla wersji 8.1 i starszych nie ma poprawionych oficjalnych obrazów. 8.1-fpm był ostatnio aktualizowany 2025-12-31.

Aby sprawdzić lokalne obrazy i działające kontenery:

# Wersja PHP w obrazie pobranym lokalnie
docker image inspect php:8.3-fpm --format '{{range .Config.Env}}{{println .}}{{end}}' | grep PHP_VERSION

# Pobierz ponownie i odtwórz kontenery
docker compose pull
docker compose up -d

# Jeśli budujesz własny obraz, pobierz ponownie obraz bazowy i dopiero zbuduj
docker compose build --pull

# Wersja wewnątrz działającego kontenera
docker compose exec app php -r 'echo PHP_VERSION, PHP_EOL;'

W ostatnim poleceniu zamień app na nazwę własnej usługi. Każdy oficjalny obraz jest budowany z jedną wartością PHP_VERSION, więc wersja CLI w kontenerze odpowiada wersji FPM / Apache w tym kontenerze (Pułapka 1 dotyczy PHP zainstalowanego bezpośrednio na hoście).

FrankenPHP osadza PHP, więc wersja FrankenPHP i wersja wbudowanego PHP to różne numery. W informacjach o wydaniu FrankenPHP 1.13.2, opublikowanego 2026-10-21, podano, że obrazy Docker zbudowano z PHP 8.2.35 / 8.3.36 / 8.4.27 / 8.5.12, a statyczne pliki binarne z PHP 8.5.12.

Pułapka 3: pakiety dystrybucji są „naprawione pod starym numerem”

Ubuntu i RHEL przenoszą do starszych wersji tylko poprawki (backporting). Numer wyświetlany przez php -v pozostaje stary, więc ocena liczbowa w stylu „niższa niż 8.3.36, więc podatna” oznaczy jako podatny system, który jest już naprawiony. I odwrotnie, na numerze nie można też opierać poczucia bezpieczeństwa. Decyduj na podstawie wersji pakietu i trackera bezpieczeństwa danej dystrybucji.

Poprawione pakiety wymienione w poszczególnych trackerach (stan na 2026-10-22; takie same dla obu CVE):

DystrybucjaPakietWersja poprawionaŹródło
Ubuntu 22.04 (jammy)php8.18.1.2-1ubuntu2.28USN-8948-1
Ubuntu 24.04 (noble)php8.38.3.6-0ubuntu0.24.04.13USN-8948-1
Ubuntu 26.04 (resolute)php8.58.5.4-0ubuntu1.5USN-8948-1
Ubuntu (stonking)php8.58.5.9-0ubuntu2.1USN-8948-1
Ubuntu 14.04 / 16.04 / 18.04 / 20.04php5 / php7.0 / php7.2 / php7.4Dostępne w ramach Ubuntu Pro (w tym Legacy Support)USN-8948-2
Debian 12 (bookworm)php8.28.2.35-1~deb12u1DLA-4848-1
Debian 13 (trixie)php8.48.4.27-1~deb13u1DSA-6574-1
RHEL 10php / php8.48.3.36-1.el10_2 / 8.4.27-1.el10_2Red Hat
RHEL 9php (domyślny)8.0.30-8.el9_8.1Red Hat
RHEL 9moduł php 8.2 / 8.38.2.35-1.module+el9.8.0… / 8.3.36-1.module+el9.8.0…Red Hat
RHEL 8moduł php 7.4 / 8.27.4.33-8.module+el8.10.0… / 8.2.35-1.module+el8.10.0…Red Hat

Ta tabela pokazuje wprost, dlaczego same numery nie wystarczają. Poprawiony PHP w Ubuntu 24.04 to wersja zaczynająca się od 8.3.6, dużo niższa niż 8.3.36 z upstreamu. Domyślny PHP w RHEL 9 jest naprawiony, choć pozostaje na 8.0.30, mimo że upstream nie wydaje już poprawek dla 8.0. Debian przeszedł na te same numery co upstream (8.2.35 / 8.4.27).

Niektóre pakiety nie są jeszcze naprawione (stan na 2026-10-22).

  • Moduł php 8.4 w RHEL 9 jest oznaczony jako „affected, no fix” (podatny, bez poprawki).
  • Debian forky (testing) ma php8.4 8.4.26-1, oznaczony jako „vulnerable”. Pakiet php8.4 w sid (unstable) ma wersję 8.4.27-1 i jest naprawiony.

Przykładowe polecenia do sprawdzenia własnego serwera:

# Debian / Ubuntu: zainstalowana i dostępna wersja
apt-cache policy php8.3-fpm libapache2-mod-php8.3

# Ubuntu: czy to CVE jest naprawione na tym serwerze
pro fix CVE-2026-109618
pro fix CVE-2026-109619

# Rodzina RHEL: czy istnieje aktualizacja naprawiająca to CVE oraz zainstalowana wersja
dnf updateinfo list --cve CVE-2026-109618
rpm -q php-fpm php-cli

Dostosuj nazwę pakietu (php8.3-fpm itd.) do swojego środowiska. Porównaj wyświetloną wersję z „wersją poprawioną” w tabeli powyżej lub w trackerze; jeśli jest taka sama lub wyższa, poprawka jest wdrożona. Następnie wykonaj restart i sprawdzenie po stronie web opisane w Pułapce 1.

Jeśli instalujesz PHP z zewnętrznego repozytorium, a nie z pakietów dystrybucji, musisz śledzić aktualizacje tego repozytorium. Komunikat PHP zauważa, że prowadzone przez wolontariuszy rpms.remirepo.net nie będzie miało aktualizacji w dniu ujawnienia, i zaleca przejście na pakiety dystrybucji lub własne kompilacje.

Pułapka 4: na hostingu współdzielonym i w środowiskach zarządzanych nie możesz sam zaktualizować PHP

W hostingu współdzielonym i zarządzanych środowiskach PHP środowisko uruchomieniowe PHP wymienia dostawca. Tutaj też sam numer wersji nie wystarcza: jeśli dostawca buduje PHP samodzielnie lub przenosi poprawki (backport), numer wersji może pozostać stary.

Są trzy rzeczy, które możesz zrobić samodzielnie.

  1. Sprawdź wersję po stronie WWW. Użyj tymczasowego pliku z pułapki 1, aby wypisać PHP_VERSION i PHP_SAPI, a następnie od razu go usuń. Jeśli panel zarządzania ma wybór wersji PHP, zanotuj też, którą wersję wybrano.
  2. Przeczytaj komunikat dostawcy, a jeśli go nie ma, zapytaj. Zapytaj: „Dla jakich wersji PHP w moim planie zostaną wdrożone (lub zostały wdrożone) poprawki CVE-2026-109618 i CVE-2026-109619 i kiedy?”. Pytanie o numer CVE, a nie o numer wersji, daje odpowiedź obejmującą także backporty.
  3. Jeśli wybrano wersję bez wsparcia, zaktualizuj ją. Projekt PHP nie wydaje poprawek dla wersji 8.1 i starszych, a wsparcie dla 8.2 kończy się 2026-12-31. Jeśli dostawca nie przeniósł poprawek, pewną drogą jest zmiana wersji.

Stan u dostawców hostingu (stan na 2026-10-22)

W hostingu współdzielonym środowisko PHP zwykle aktualizuje dostawca, a w wielu komunikatach można przeczytać, że „użytkownik nie musi nic robić”. Użytkownik ma dwie rzeczy do zrobienia: sprawdzić oficjalny komunikat swojego dostawcy oraz, jeśli w panelu wybrał starą wersję PHP, zdecydować, czy przełączyć się na wersję zalecaną w komunikacie (taką, która ma wydaną poprawkę).

Poniższa tabela zawiera wyłącznie to, co jest napisane na oficjalnych stronach dostawców (ogłoszenia i informacje o pracach serwisowych), w parafrazie treści komunikatów. Komunikaty są aktualizowane w miarę postępu prac, dlatego rzeczywisty stan zawsze potwierdzaj na wskazanej stronie oficjalnej.

Dostawca / usługaNajważniejsze punkty oficjalnego komunikatuData/godzina komunikatuŹródło
エックスサーバー„Dla PHP 8.2–8.5 zakończono wdrażanie poprawki na wszystkich objętych serwerach.” W przypadku starszych wersji komunikat mówi, że „poprawki są gotowe dla części wersji i będą wdrażane kolejno po zakończeniu weryfikacji”, a pozostałe stare wersje są również w opracowaniuZapis z 10/22 6:45 (strona aktualizowana do 13:15)メンテナンスの進捗状況
シン・レンタルサーバーNa stronie ogłoszeń znajduje się ten sam „postęp prac serwisowych” co w Xserver, ale nie znalazłem wzmianki odnoszącej się konkretnie do stanu PHP w Shin Rental Server (zapytaj pomoc techniczną)-お知らせ
ConoHa WING„Wdrażamy poprawki bezpieczeństwa, zachowując używaną obecnie wersję PHP.” Komunikat mówi, że zazwyczaj użytkownik nie musi zmieniać wersji, ale w przypadku PHP 5.x i 7.x zmiana może być konieczna. Menedżer plików i poczta webowa zostały prewencyjnie tymczasowo wyłączone; wyświetlanie stron i wysyłanie/odbieranie poczty działają normalnie10/22【重要】PHPの脆弱性への弊社対応について
さくらのレンタルサーバ„Zakończyliśmy reakcję na podatność dla wszystkich wersji PHP wybieralnych w naszym panelu.” Komunikat stwierdza, że „nie są wymagane pilne działania ze strony klientów”, i zaleca przejście w przyszłości na najnowszą wspieraną wersję. Według komunikatu poczta webowa została zabezpieczona 10/22 o 13:45, a phpMyAdmin jest nadal w opracowaniu10/22 (aktualizacja 13:45)PHPの脆弱性(CVE-2026-109618、CVE-2026-109619)への対応状況について
ロリポップ!Komunikat o prewencyjnych pracach serwisowych przed wydaniem wersji z poprawkami (strona serwisu, strony użytkowników itp. będą kolejno wyłączane; strony mogą być wyłączone lub ograniczone bez uprzedzenia). Na 10/22 nie znalazłem komunikatu o zakończeniu poprawki PHP (zapytaj pomoc techniczną)10/21【重要】PHPの脆弱性への予防措置に伴うメンテナンス実施のお知らせ
ヘテムル„Dla PHP 8.x i PHP 7.4 zastosowaliśmy oficjalne wersje z poprawkami”; dla pozostałych wersji „wprowadziliśmy własne poprawki na podstawie oficjalnej poprawki”. Ponieważ „część funkcji (session.upload_progress) została wyłączona we wszystkich wersjach”, użytkownicy są proszeni o sprawdzenie, czy ich strony działają. Ponieważ stare wersje mogą nie otrzymać dalszych poprawek, komunikat zaleca przejście na nowszą wersjęOpublikowano 10/21 19:44; zaktualizowano 10/22 12:18 i 13:20【一部完了】【重要】PHPの脆弱性への予防措置に伴うメンテナンス実施のお知らせ
mixhost„Wdrożenie pakietów z poprawką PHP zakończono około godz. 10:18 dnia 22 października 2026 r.” „Zastosowano bez zmiany numeru wersji PHP”; „klienci nie muszą nic robić”. Komunikat zaleca użytkownikom wersji poniżej PHP 8.2 korzystanie z wersji wspieranej (8.2 lub nowszej)10/22【完了】PHPの重大な脆弱性への対応について
KAGOYAW usłudze serwerów wynajmowanych PHP 8.2–8.5 będzie aktualizowane kolejno po zweryfikowaniu wersji z poprawkami (wersje docelowe są jeszcze ustalane). Dla serwerów zarządzanych dedykowanych, współdzielonych i przeznaczonych dla WordPressa trwale rozwiązanie jest nadal planowane; jako środki tymczasowe komunikat proponuje rozważenie wyłączenia stron lub ograniczenia dostępuOpublikowano 10/21 18:20; zaktualizowano 10/22 10:35PHPの脆弱性に関する当社サービスへの影響について
Zenlogic(IDCフロンティア)Poprawki wdrażane podczas awaryjnych prac serwisowych (10/21 22:00–10/22 18:00; czas zakończenia może się zmienić). PHP 5.3 zostanie zaktualizowane do najnowszej wersji i nie będzie można tego cofnąć; 7.4 i 8.1 mogą zostać zaktualizowane. Komunikat mówi, że jeśli po aktualizacji pojawią się problemy z wyświetlaniem lub działaniem, trzeba je naprawić po stronie aplikacji10/21【ホスティング】緊急メンテナンス作業のお知らせ
ColorfulBox„Zakończyliśmy po stronie serwera aktualizację do wersji z poprawkami, zachowując używaną obecnie wersję PHP.” Komunikat stwierdza, że „klienci nie muszą samodzielnie zmieniać ani przełączać wersji PHP”10/22【重要】PHPの脆弱性に対するセキュリティアップデート完了のお知らせ
お名前.com レンタルサーバー„Wdrażamy poprawki bezpieczeństwa, zachowując używaną obecnie wersję PHP.” Komunikat mówi, że zmiana wersji zazwyczaj nie jest potrzebna, ale w przypadku PHP 5.x i 7.x może być konieczna. Menedżer plików i poczta webowa zostały prewencyjnie tymczasowo wyłączone10/22【重要】PHPの脆弱性への弊社対応について
CORESERVER(V2)„Zakończyliśmy reakcję na podatność dla wszystkich oferowanych wersji PHP”; „po stronie klienta nie są wymagane żadne działania, takie jak zmiana wersji PHP”. Prace serwisowe trwały 10/22 0:00–11:13 i są opisane jako zakończoneOpublikowano 10/21 (zakończono 10/22)PHP脆弱性の対応(CORESERVER V2)【完了】
XREA„Zakończyliśmy reakcję na podatność dla PHP 7.4 i nowszych (7.4 / 8.0 / 8.1 / 8.2 / 8.3 / 8.4 / 8.5).” Użytkownicy tych wersji nie muszą zmieniać wersji. Komunikat nie mówi nic o wersjach poniżej 7.4Opublikowano 10/21 (zakończono 10/22 0:50)PHP脆弱性の対応(XREA)【完了】
バリューサーバー„Zakończyliśmy reakcję na podatność dla PHP 7.4 i nowszych.” Komunikat mówi, że użytkownicy tych wersji nie muszą zmieniać wersjiOpublikowano 10/21 (zakończono 10/22 0:50)PHP脆弱性の対応(VALUESERVER)【完了】
ABLENET„W związku z dwiema podatnościami wykrytymi w PHP przeprowadziliśmy wstępne aktualizacje zabezpieczeń w naszym środowisku serwerów wynajmowanych.” Komunikat nie podaje, jakie wersje obejmuje ani czy użytkownicy muszą coś zrobić10/22 13:04PHPの脆弱性に関するセキュリティアップデートの対応について
WebARENA(レンタルサーバー)Na 10/22 nie znalazłem oficjalnego komunikatu (zapytaj pomoc techniczną)-WebARENA お知らせ(2026年)

Tam, gdzie nie udało mi się znaleźć lub otworzyć oficjalnego komunikatu, w tabeli jest napisane „nie udało się potwierdzić” lub „nie znalazłem”. Brak informacji nie oznacza, że dostawca nie zareagował. Sprawdź to bezpośrednio w ogłoszeniach dostawcy i u jego pomocy technicznej.

Środki łagodzące, gdy nie można od razu zaktualizować

Komunikat PHP wymienia ustawienia zmniejszające powierzchnię ataku do czasu aktualizacji. Sam komunikat wyraźnie jednak stwierdza, że „nie zapewniają one bezpieczeństwa”. Najważniejsze z nich:

  • Dla CVE-2026-109619: ustaw session.upload_progress.enabled=0 w php.ini, w puli FPM lub w konfiguracji serwera i zrestartuj wszystkie procesy robocze (ini_set() i .user.ini w FPM tu nie działają). W PHP 8.5 ustaw też fatal_error_backtraces=0.
  • Dla CVE-2026-109618: ustaw memory_limit=-1 w sposób, którego aplikacja nie może nadpisać, i zmniejsz post_max_size (8M, jeśli nie ma przesyłania plików, 32M, jeśli jest). Nie używaj RLIMIT_AS / RLIMIT_DATA jako zamiennika.

Brytyjskie NCSC zaleca rozważenie wyłączenia z sieci każdego systemu, którego nie da się od razu zaktualizować ani zabezpieczyć, oraz sprawdzenie śladów włamania przed aktualizacją lub zastosowaniem środków łagodzących.

Źródła (sprawdzone 2026-10-22)

Najczęściej zadawane pytania

Czy jeśli php -v pokazuje poprawioną wersję, jestem chroniony przed php2shell (CVE-2026-109618 / 109619)?

Niekoniecznie. php -v pokazuje tylko wersję PHP w CLI. PHP-FPM lub mod_php w Apache, które obsługują żądania WWW, mogą być osobnym plikiem binarnym i osobnym pakietem. Wersję FPM sprawdzisz poleceniem php-fpm8.3 -v (w systemach z rodziny RHEL: php-fpm -v). Możesz też otworzyć przez WWW tymczasowy plik wypisujący PHP_VERSION i PHP_SAPI i usunąć go zaraz po sprawdzeniu. Jeśli po aktualizacji nie zrestartowano FPM ani Apache, mogą one nadal działać na starym kodzie.

Czy jeśli używam php:8.3-fpm z Dockera, php2shell jest naprawiony?

Stan na 2026-10-22: php:8.3-fpm na Docker Hub został zastąpiony przez PHP 8.3.36. Jednak lokalny obraz pozostaje stary, dopóki nie pobierzesz go ponownie, a działające kontenery używają starego obrazu, dopóki nie zostaną odtworzone. Uruchom docker compose pull oraz docker compose up -d (albo docker compose build --pull, jeśli budujesz własny obraz). Następnie wykonaj w kontenerze php -r 'echo PHP_VERSION;' i upewnij się, że wersja to 8.3.36 lub nowsza. Przypięte tagi, takie jak 8.3.30, pozostają stare, dopóki sam nie zmienisz numeru.

Ubuntu i RHEL nadal pokazują PHP 8.3.6 lub 8.0.30. Czy php2shell ich dotyczy?

Nie wynika to z samego numeru wersji. Ubuntu i RHEL przenoszą poprawki do starszych wersji (backport), więc pakiet może być poprawiony, a jego numer pozostaje stary. Stan na 2026-10-22: poprawka jest w php8.3 8.3.6-0ubuntu0.24.04.13 w Ubuntu 24.04 oraz w php 8.0.30-8.el9_8.1 w RHEL 9. Porównaj wersję zainstalowanego pakietu (apt-cache policy lub rpm -q) z poprawioną wersją podaną w trackerze bezpieczeństwa Twojej dystrybucji. Możesz też sprawdzić to poleceniem pro fix CVE-2026-109618 w Ubuntu albo dnf updateinfo list --cve CVE-2026-109618 w systemach z rodziny RHEL.