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 →

cPanel a WHM: zabezpečenie PHP

cPanel spravuje PHP cez EasyApache 4 s vlastnými balíkmi pre každú verziu. Takto skontrolujete stav, reštartujete všetky procesy a správne nastavíte prechodné hodnoty.

Stav 4 min čítaniaServer a hosting

Stručne: Aktualizácia PHP v cPanel po PHP2Shell zahŕňa tri kroky: dostať všetky balíky ea-php a prípadne alt-php na opravený stav, úplne reštartovať PHP-FPM a Apache a zdokumentovať stav balíkov. Zákazníci na serveri najdôležitejšie prechodné hodnoty sami nastaviť nemôžu, musí to urobiť správca WHM.

Východisková situácia na serveroch s cPanel

PHP2Shell zahŕňa zraniteľnosti CVE-2026-109618 a CVE-2026-109619 v samotnom PHP. Obe umožňujú spustenie škodlivého kódu bez prihlásenia a majú hodnotenie CVSS v4.0 9.2. Dotknuté sú PHP-FPM, Apache s mod_php, php-cgi, FrankenPHP a LiteSpeed. Projekt PHP zverejnil 21. 10. 2026 verzie 8.5.12, 8.4.27, 8.3.36 a 8.2.35.

cPanel dodáva PHP nie ako jediný balík, ale cez EasyApache 4 s jednou sadou balíkov pre každú verziu, napríklad ea-php83 alebo ea-php84. Na niektorých serveroch pribúdajú balíky operačného systému a na CloudLinux verzie alt-php. Každý zdroj má vlastný stav. Úplný obraz vznikne až vtedy, keď skontrolujete všetky tri.

Aktualizácia PHP v cPanel: skontrolujte stav a priradenie

Začnite inventúrou. Nasledujúce príkazy iba čítajú a nič nemenia. Cesty a názvy balíkov sú príklady a môžu sa podľa inštalácie líšiť.

# Nainštalované verzie PHP podľa API WHM
whmapi1 php_get_installed_versions

# Verzia každej inštalácie ea-php
for p in /opt/cpanel/ea-php*/root/usr/bin/php; do echo "$p"; "$p" -v | head -1; done

# Stav balíkov (systémy založené na RPM, príklad)
rpm -qa | grep -E '^ea-php[0-9]+-php-(cli|fpm|common)' | sort

V MultiPHP Manager vidíte, ktorá doména používa ktorú verziu a či je zapnuté PHP-FPM. Zaznamenajte si verzie, ktoré sú nainštalované, ale nie sú priradené žiadnej doméne. Aj ony patria medzi aktualizované alebo odstránené.

Správne zaradenie backportov

Ako u iných poskytovateľov platí: zobrazené číslo verzie nie je jediným meradlom. Ak sa oprava dodáva ako backport, číslo môže zostať nezmenené. Skontrolujte preto navyše changelog balíka a upozornenia poskytovateľa.

# Vyhľadanie čísel CVE v changelogu balíka (príklad)
rpm -q --changelog ea-php84-php-cli | grep -iE 'CVE-2026-1096(18|19)'

Ak sa záznam nenájde, neznamená to automaticky, že oprava chýba. Znamená to však, že pred zaradením servera medzi záplatované potrebujete písomné potvrdenie. Ako správne čítať verzie, opisuje stránka Kontrola verzie PHP a stavu záplat.

Aktualizácia, reštart a kontrola

Aktualizáciu nasadíte vo WHM cez systémovú aktualizáciu alebo cez správcu balíkov. Potom reštartujte všetky procesy PHP. Nové súbory samy nestačia, kým v pamäti bežia staré procesy.

# Reštart služieb PHP-FPM všetkých verzií (skript cPanel)
/scripts/restartsrv_apache_php_fpm

# Úplný reštart Apache
/scripts/restartsrv_httpd

# Kontrola času spustenia procesov PHP
ps -eo pid,lstart,cmd | grep -E 'php-fpm|lsphp|php-cgi' | grep -v grep

Každý proces PHP by mal mať čas spustenia po aktualizácii. Ak to tak nie je, cielene ho ukončite cez príslušnú službu. Pri viacerých serveroch sa oplatí krátky záznam pre každý stroj, ktorý môžete neskôr použiť ako dôkaz.

Dôležité

Aktualizácia CMS cez nástroje cPanel, ako je WP Toolkit, zraniteľnosť PHP neuzavrie. Je užitočná, ale nenahrádza ani aktualizáciu PHP, ani reštart.

Nastavte prechodné hodnoty centrálne

Ak verzia ešte nie je opravená, php.net odporúča prechodné opatrenia, ktoré neposkytujú úplnú ochranu. V cPanel ich nastavíte v MultiPHP INI Editor v režime pre administrátorov alebo priamo v php.ini príslušnej verzie ea-php. Hodnoty v .user.ini zákazníckych účtov pre session.upload_progress.enabled nestačia.

; celoserverová php.ini dotknutej verzie (príklad)
session.upload_progress.enabled = 0
post_max_size = 32M
upload_max_filesize = 24M

Bez funkcie nahrávania php.net uvádza post_max_size = 8M. Pri PHP 8.5 pribúda fatal_error_backtraces=0. Potom znova reštartujte všetkých workerov. Obmedzenie pamäte nastavte cez cgroups, napríklad pomocou limitov CloudLinux, nie cez RLIMIT_AS alebo RLIMIT_DATA. Ďalšie podrobnosti nájdete na stránke Okamžité opatrenia bez záplaty.

Zodpovednosť medzi prevádzkovateľom servera a majiteľmi účtov

Na serveri cPanel s mnohými účtami nesie zodpovednosť za PHP, služby a celoserverovú konfiguráciu správca WHM. Majitelia jednotlivých účtov zodpovedajú za svoje aplikácie, pluginy a prístupové údaje. Informujte majiteľov účtov, kedy a ako sa záplatovalo, a odporučte im, aby svoje aplikácie skontrolovali na nápadnosti. Ako vyzerá situácia z pohľadu zákazníka, opisuje stránka Zdieľaný hosting.

Uchovajte logy od 20. 10. 2026. Záplata neodstráni škodlivý softvér, ktorý bol zavlečený predtým.

Na dôkaz stačí jednoduchý záznam pre každý server: dátum a čas aktualizácie, zoznam balíkov ea-php a alt-php s verziou pred a po, zoznam procesov s časmi spustenia po reštarte a prípadne potvrdenie dodávateľa balíkov k backportom. Záznam uložte mimo servera. Neskôr poslúži ako doklad voči zákazníkom, poisťovateľom alebo kontrolným orgánom a uľahčí ďalšiu núdzovú aktualizáciu, pretože kroky sú už opísané. Ak prevádzkujete viac serverov cPanel, oplatí sa zhrnúť čítacie príkazy z tejto stránky do malého skriptu, ktorý beží na všetkých strojoch rovnako a zbiera výsledky. Takto na prvý pohľad rozpoznáte odchýlky medzi servermi, napríklad zabudnutú verziu PHP.

Ako konkrétne pomáha PHP SOS?

  • Zaznamenáme balíky ea-php, alt-php a systémové balíky a priradíme všetky účty k ich verzii PHP.
  • Cez našu službu záplatovania PHP aktualizujeme, reštartujeme všetky služby a stav preukážeme zoznamami balíkov a časmi procesov.
  • Kde je to potrebné, nastavíme prechodné hodnoty celoserverovo a tak, aby sa nedali prepísať.
  • Účty kontrolujeme na typické stopy kompromitácie a pri náleze spustíme odstránenie malvéru.
  • Potom znížime počet verzií PHP a spevníme konfiguráciu.

Časté otázky

Kde vo WHM vidím, ktorá doména používa ktorú verziu PHP?

V MultiPHP Manager vo WHM vidíte pre každú doménu priradenú verziu a to, či je PHP-FPM aktívne. Na úplný zoznam sa hodí aj dotaz z príkazového riadku. Poznačte si aj verzie, ktoré nie sú priradené žiadnej doméne.

Smie zákazník cPanel nastaviť prechodné hodnoty sám v .user.ini?

Pre session.upload_progress.enabled php.net výslovne uvádza, že .user.ini a ini_set() nestačia. Hodnota patrí do php.ini, poolu FPM alebo konfigurácie servera. To môže urobiť iba správca servera.

Stačí graceful reštart Apache?

Pri PHP-FPM sa musia reštartovať samotné služby FPM, reload Apache ich neobnoví. Pri handleroch PHP založených na Apache je bezpečnou cestou úplný reštart. Potom skontrolujte čas spustenia všetkých procesov PHP.

Ako je to s CloudLinux a alt-php?

Na serveroch s CloudLinux bežia weby sčasti s vlastnými balíkmi alt-php namiesto ea-php. Tie majú vlastný stav balíkov a musia sa kontrolovať a aktualizovať osobitne.

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