Stručně: Zranitelností PHP2Shell jsou postiženy větve 8.2 až 8.5 do vydání z 21. října 2026, podle odborného tisku téměř všechny verze zpětně až po PHP 5.4. Opravena je v PHP 8.5.12, 8.4.27, 8.3.36 a 8.2.35. Pro PHP 8.1 a starší už oficiální aktualizace neexistují, jen minimální zdrojové backporty pro 7.4, 8.0 a 8.1.
Které verze zranitelnost PHP postihla?
PHP2Shell zahrnuje obě zranitelnosti CVE-2026-109618 a CVE-2026-109619, každou hodnocenou CVSS v4.0 9.2. Obě umožňují spuštění škodlivého kódu na dálku bez přihlášení. Dne 21. října 2026 ve 14:00 UTC (16 hodin německého času) vydal projekt PHP opravy pro všechny podporované větve.
| Větev PHP | Poslední stav před opravou | Opraveno od | Podpora |
|---|---|---|---|
| 8.5 | 8.5.11 | 8.5.12 | oficiálně podporováno |
| 8.4 | 8.4.26 | 8.4.27 | oficiálně podporováno |
| 8.3 | 8.3.35 | 8.3.36 | oficiálně podporováno |
| 8.2 | 8.2.34 | 8.2.35 | končí 31. 12. 2026 |
| 8.1, 8.0, 7.4 | všechny stavy | žádné oficiální vydání | jen minimální zdrojové backporty |
| 7.3 až 5.4 | podle odborného tisku postiženy téměř všechny | žádná aktualizace | roky bez podpory |
Údaje o verzích 8.2 až 8.5 pocházejí z oznámení php.net. Tvrzení o verzích až po PHP 5.4 pochází z odborného tisku; úplný oficiální seznam pro staré verze neexistuje.
Pro netechniky několika větami: pokud je na vašem serveru verze ze sloupce „Opraveno od“ nebo vyšší a poté byly restartovány všechny procesy PHP, je PHP2Shell uzavřeno. Pokud je tam starší číslo, buď jde o backport, který musí potvrdit váš poskytovatel, nebo je zranitelnost otevřená. Zeptejte se své IT nebo poskytovatele hostingu v případě pochybností přesně na tyto tři body: verze, backport, restart.
Postižené provozní režimy
Číslo verze je jen poloviční odpověď. Postiženy jsou všechny běžné způsoby provozu PHP na webovém serveru: PHP-FPM, Apache s mod_php, php-cgi, FrankenPHP a LiteSpeed. Tým PHP hodnotí riziko u mod_php jako nejvyšší, protože tam byl předveden exploit ještě předtím, než se vůbec spustí kód aplikace. Podrobnosti najdete na stránce Proč nese mod_php nejvyšší riziko.
Žádná ochrana nevyplývá z aplikace: ať už jde o WordPress, Shopware, TYPO3, Laravel nebo vlastní vývoj, aktualizace aplikace zranitelnost v PHP neuzavře.
Backporty: když číslo verze klame
Mnoho distribucí Linuxu a poskytovatelů hostingu dodává PHP ve vlastních balíčcích. Místo skoku na novou verzi upstreamu přebírají opravu jako backport do své stávající verze. To má praktický důsledek: zobrazené číslo zůstane staré. Příkladem z aktuální situace je Plesk, který může dál zobrazovat 8.2.34, přestože je chyba opravena.
Pro vás z toho plyne: tabulka výše platí pro oficiální vydání z php.net. U balíčků z vaší distribuce nebo od poskytovatele hostingu rozhodují stav balíčku a potvrzení poskytovatele. Jak obojí ověřit, ukazuje stránka Jak správně ověřit verzi PHP a stav záplaty. Pro rychlý test na příkazové řádce:
php -v
apt policy php8.3-fpm # Debian/Ubuntu, název balíčku se liší podle verze a zdroje
dnf info php-fpm # rodina RHEL
Opravené číslo verze na disku ještě neznamená, že běží. Teprve po restartu všech procesů PHP pracuje server s opraveným kódem.
Co platí pro PHP 8.1 a starší?
Pro PHP 8.1, 8.0 a 7.4 existují jen minimální zdrojové backporty, tedy opravy ve zdrojovém kódu, které si musí někdo sám převzít a zkompilovat. Oficiální vydání nevycházejí. Některé distribuce s dlouhodobou péčí takové opravy do svých balíčků zabudovávají; zda to platí pro váš systém, lze objasnit jen podle changelogu balíčku nebo u poskytovatele.
Dlouhodobě nevede cesta mimo podporovanou verzi. Kterou verzi PHP snese vaše CMS nebo e-shop, ověřte podle systémových požadavků výrobce, například na wordpress.org, shopware.com nebo typo3.org. Více na stránce PHP 8.1 a starší: co nyní platí.
A CVE-2026-115560?
Dne 23. října zveřejnil php.net upozornění na třetí zranitelnost. Uplatní se jen při neobvyklé konfiguraci session. Opravená verze podle stavu z 25. října zatím neexistuje; do dalšího řádného bugfixového vydání platí náprava session.upload_progress.enabled=0. Seznam verzí se očekává až s úplným advisory.
Jak konkrétně pomáhá PHP SOS?
- Inventář: Zjistíme všechny verze PHP na vašich serverech, i druhé instalace pro jednotlivé weby, které se rády přehlédnou.
- Porovnání: U každé instalace ujasníme, zda jde o oficiální vydání, backport distribuce, nebo zda oprava chybí.
- Aktualizace s dokladem: Prostřednictvím služby záplatování PHP nasadíme opravu a restartujeme všechny procesy.
- Plán migrace: Pro verze bez oficiálních aktualizací naplánujeme přechod v rámci migrace z PHP 8.1 a starší a do té doby server zabezpečíme.
Časté dotazy
Je PHP 8.3.35 ještě bezpečné?
Ne, pokud váš poskytovatel nenasadil backport. 8.3.35 je poslední stav před opravou; PHP2Shell je ve větvi 8.3 opraveno od 8.3.36. U balíčků distribucí může číslo zůstat stejné, přestože je chyba opravena. Pak rozhoduje changelog balíčku nebo potvrzení poskytovatele.
Týká se PHP2Shell i PHP 7.4?
Podle odborného tisku jsou postiženy téměř všechny verze zpětně až po PHP 5.4. Pro 7.4, 8.0 a 8.1 existují jen minimální zdrojové backporty a žádná oficiální vydání. Přechod na podporovanou verzi je spolehlivou cestou.
Proč Plesk zobrazuje 8.2.34, přestože bylo záplatováno?
Distribuce a poskytovatelé hostingu někdy přebírají opravy jako backport do svých stávajících balíčků. Číslo verze pak zůstává stejné, chyba je přesto opravena. Zkontrolujte stav balíčku nebo si nechte záplatu potvrdit od poskytovatele.
Jakou verzi PHP bych nyní měl zvolit?
Podporovanou verzi, kterou vaše aplikace podle systémových požadavků výrobce uvolňuje. PHP 8.2 dosáhne 31. 12. 2026 konce podpory; kdo nyní stejně přechází, měl by s tím počítat.