Aktuálna situácia: PHP2Shell. Dve kritické zraniteľnosti PHP (CVSS 9.2) umožňujú spustenie škodlivého kódu bez prihlásenia. Záplaty od 21. 10. 2026.Čo treba urobiť teraz →

Služba záplatovania PHP: aktualizácia s reštartom a dokladom

Aktualizáciu PHP nasadíme na vaše servery, reštartujeme všetky procesy PHP a dodáme písomný doklad o verzii, stave balíkov a reštarte.

Stav 4 min čítaniaSlužby

Stručne: Kto si chce nechať nasadiť aktualizáciu PHP, potrebuje viac než nové balíky: rozhodujú správny stav balíkov, reštart všetkých procesov PHP a doklad o tom. Presne to poskytuje naša služba záplatovania PHP. Dostanete písomný doklad pre každý server, ktorý môžete predložiť interne alebo tretím stranám.

Prečo samotná aktualizácia PHP často nestačí

Od 21. 10. 2026 existujú záplaty pre zraniteľnosti PHP2Shell CVE-2026-109618 a CVE-2026-109619. BSI (nemecký Spolkový úrad pre informačnú bezpečnosť) odporúča okamžitú aktualizáciu. V praxi vidíme tri typické úskalia.

Po prvé, číslo verzie nie vždy ukazuje skutočný stav. Distribúcie a poskytovatelia hostingu čiastočne nasadzujú backporty; Plesk potom napríklad naďalej hlási 8.2.34, hoci stav balíka je záplatovaný. Po druhé, po nasadení často bežia ďalej staré procesy PHP. Nové súbory na disku nechránia, kým pracujú starí workeri v pamäti. Po tretie, na jednom serveri často beží paralelne viac verzií PHP a jedna z nich sa zabudne.

Aktualizácia PHP na kľúč: opravené verzie

Vetva Opravené od Predchádzajúci stav Poznámka
PHP 8.5 8.5.12 8.5.11 navyše skontrolovať fatal_error_backtraces
PHP 8.4 8.4.27 8.4.26
PHP 8.3 8.3.36 8.3.35
PHP 8.2 8.2.35 8.2.34 podpora končí 31. 12. 2026
PHP 8.1 a staršie žiadne oficiálne aktualizácie – iba minimálne backporty zdrojového kódu pre 7.4, 8.0, 8.1

Pri balíkoch z distribúcií alebo od poskytovateľov hostingu nerozhoduje číslo za slovom „PHP“, ale stav balíka, ktorý poskytovateľ potvrdí ako záplatovaný. Ako si to preveriť sami, nájdete na stránke Správne overenie verzie a stavu záplat PHP.

Ako konkrétne pomáha PHP SOS?

  1. Inventúra: Zaznamenáme všetky inštalácie PHP na serveri, spôsob prevádzky (PHP-FPM, mod_php, php-cgi, FrankenPHP, LiteSpeed) a ktorý web používa ktorú verziu.
  2. Nasadenie aktualizácie: Nainštalujeme opravené verzie zo zdroja balíkov vašej distribúcie, vášho panelu alebo oficiálneho projektu. Pre kontajnery s vami zostavíme nové image.
  3. Reštart všetkých procesov: PHP-FPM, Apache, LiteSpeed alebo príslušných workerov úplne reštartujeme a skontrolujeme, že žiadny proces nie je starší než aktualizácia. Súvislosti nájdete na stránke Reštart PHP-FPM a všetkých workerov.
  4. Kontrola funkčnosti: Otvoríme najdôležitejšie stránky a funkcie, napríklad úvodnú stránku, prihlásenie, formuláre a pokladňu, a skontrolujeme chybové protokoly.
  5. Doklad: Pre každý server dostanete protokol s verziou, stavom balíkov, časom reštartu a otvorenými bodmi.

Typický kontrolný krok po reštarte vyzerá takto:

# Verzia PHP CLI a binárky FPM (cesta podľa systému)
php -v
php-fpm8.3 -v
# Čas spustenia procesov FPM: musí byť po aktualizácii
ps -o pid,lstart,cmd -C php-fpm8.3

Osobitné prípady: panely, kontajnery a viac verzií PHP

Na serveroch s Plesk alebo cPanel pochádzajú verzie PHP často zo zdrojov balíkov panelu, a nie z distribúcie. Tam preveríme každú nainštalovanú verziu zvlášť, aj tie, ktoré momentálne nie sú priradené k žiadnemu webu. Nepoužívané, zastarané verzie po dohode odstránime, aby sa omylom znova neaktivovali.

V prostrediach Docker a Kubernetes nestačí aktualizácia na hostiteľovi. PHP sa nachádza v image a zraniteľnosť uzavrie až novo zostavený image so záplatovaným základom, nasadený na všetky bežiace kontajnery. Pritom kontrolujeme aj to, či sa v registroch alebo nasadeniach ešte nepoužívajú staršie image. Podrobnosti nájdete na stránke Záplatovanie PHP v kontajneroch Docker.

Pri mod_php beží PHP priamo v procese Apache. Tím PHP tam hodnotí riziko ako najvyššie. Po aktualizácii sa preto musí Apache úplne reštartovať, samotné opätovné načítanie konfigurácie nie vždy stačí.

Čo od nás dostanete

  • protokol o záplatovaní pre každý server: nainštalované balíky, verzie, zdroj, čas
  • doklad, že všetky procesy PHP boli reštartované
  • zoznam preverených webov a funkcií
  • upozornenia na systémy, ktoré sa nepodarilo záplatovať, s odôvodnením
  • odporúčanie na ďalší postup, napríklad pri PHP 8.2 kvôli blízkemu koncu podpory

Čo potrebujeme od vás

  • Prístup: SSH s právami administrátora alebo prístup do panelu (Plesk, cPanel a pod.)
  • Servisné okno: kedy sa smie uskutočniť krátky reštart
  • Kontaktná osoba: na doplňujúce otázky a na schválenie po kontrole funkčnosti
  • Zálohy: potvrdenie, že existuje aktuálna záloha, alebo zadanie, aby sa predtým vytvorila
  • Pokyny k vlastným vývojom: osobitné rozšírenia PHP alebo konfigurácie, ktoré treba rešpektovať

Pri zdieľanom hostingu bez vlastného prístupu na server nemôžeme záplatovať sami. Pomôžeme vám potom položiť poskytovateľovi hostingu správne otázky a zhodnotiť odpoveď.

Čo nesľubujeme

Služba záplatovania uzavrie známu zraniteľnosť. Neodpovedá na to, či bol server pred aktualizáciou už kompromitovaný, a neodstraňuje zavlečený škodlivý softvér. Ak to chcete vedieť, vhodným zadaním je okamžitá pomoc pri PHP2Shell s hľadaním stôp.

Pre PHP 8.1 a staršie už neexistujú oficiálne aktualizácie. Tu zavedieme prechodné opatrenia a odporúčame migráciu na podporovanú verziu. Záruku kompatibility pre vaše CMS nedávame z pamäte, ale preverujeme ju podľa systémových požiadaviek výrobcu.

Časté otázky

Prečo môj server po aktualizácii stále zobrazuje starú verziu PHP?

Môžu byť dva dôvody. Buď distribúcia nasadila backport, a potom číslo verzie zostane rovnaké, hoci stav balíka je záplatovaný. Alebo staré procesy PHP ešte bežia v pamäti a treba ich reštartovať.

Ktoré verzie PHP uzatvárajú PHP2Shell?

Zraniteľnosť je opravená v PHP 8.5.12, 8.4.27, 8.3.36 a 8.2.35, zverejnených 21. 10. 2026. Pri distribučných balíkoch rozhoduje stav balíka, ktorý poskytovateľ potvrdí ako záplatovaný.

Môže aktualizácia vyradiť môj web z prevádzky?

Aktualizácia v rámci tej istej hlavnej verzie, napríklad z 8.3.35 na 8.3.36, je spravidla nekritická. Krátky reštart procesov PHP je však nutný. Časové okno s vami dohodneme a stránky potom skontrolujeme.

Je so záplatou všetko vybavené?

Pre samotnú zraniteľnosť áno, hneď ako sú všetky procesy reštartované. Či sa niekto dostal dnu už pred záplatou, záplata neukáže. Na to je potrebná samostatná kontrola.

Zdroje

Okamžitý kontakt

Každá hodina sa počíta. Napíšte nám hneď.

Stručne opíšte systém, verziu PHP a svoje pozorovanie. Ozveme sa, vyjasníme situáciu a budeme pracovať na diaľku, kým nebude incident uzavretý a zdokumentovaný.

Okamžitá pomoc