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 →

Prečo update WordPress proti PHP2Shell nepomáha

Mnohí prevádzkovatelia po titulkoch aktualizovali WordPress a cítia sa bezpečne. Prečo to pri PHP2Shell nestačí a čo namiesto toho rozhoduje.

Stav 4 min čítaniaSituácia a zaradenie

Stručne: Update WordPress proti zraniteľnosti PHP2Shell nepomôže, pretože chyba nie je vo WordPress, ale v PHP, softvéri na serveri, ktorý WordPress spúšťa. Podľa Dr. Web preto WordPress.org neplánuje ani vlastnú aktualizáciu. Ochrániť môže iba aktualizácia PHP na serveri s reštartom všetkých procesov PHP. Tú spravidla nasadí váš poskytovateľ hostingu alebo prevádzkovateľ servera.

Východisko: „Veď sme všetko aktualizovali“

Po prvých titulkoch o PHP2Shell urobili mnohí prevádzkovatelia to, čo bolo najbližšie: otvorili dashboard WordPress, klikli na „Aktualizovať teraz“, zásuvné moduly a témy hneď s tým. Potom je všetko zelené a pocit hovorí: vybavené.

Pri tejto zraniteľnosti pocit klame. Nie je to chyba WordPress, ale miesta, kde chyba sedí. Aj Cloudflare vo svojom hlásení upozorňuje, že aktualizácia kódu aplikácie alebo zásuvných modulov zraniteľnosti neodstráni.

Update WordPress a zraniteľnosť PHP: model vrstiev

Web WordPress sa skladá z viacerých vrstiev, ktoré na seba nadväzujú. Každá vrstva má vlastné aktualizácie a často vlastných zodpovedných:

Vrstva Príklad Kto typicky aktualizuje Dotknutá PHP2Shell?
Operačný systém Debian, Ubuntu, AlmaLinux poskytovateľ hostingu alebo správca servera nie, ale často dodáva balík PHP
Webový server Apache, Nginx, LiteSpeed poskytovateľ hostingu alebo správca servera režim prevádzky ovplyvňuje riziko
Runtime PHP PHP-FPM, mod_php poskytovateľ hostingu alebo správca servera áno, tu leží zraniteľnosť
Jadro WordPress WordPress prevádzkovateľ alebo agentúra nie
Zásuvné moduly a témy WooCommerce, page builder prevádzkovateľ alebo agentúra nie

Tlačidlo aktualizácie v dashboarde dosiahne len dolné dva riadky. Runtime PHP leží pod nimi a pre WordPress je neviditeľný. Ako sa ďalšie systémy opierajú o PHP, popisuje príspevok CMS a obchody na PHP.

Prečo WordPress zraniteľnosť uzavrieť nemôže

Dalo by sa myslieť, že WordPress môže „programovať okolo“. Pri PHP2Shell to z dvoch dôvodov nefunguje.

Po prvé, obe chyby ležia v spôsobe, ako PHP spracúva požiadavky a potom upratuje. To sa deje nezávisle od toho, aký program v PHP beží. Po druhé, tím PHP predviedol pre Apache s mod_php exploit, ktorý zaberie ešte predtým, než sa vôbec vykoná kód aplikácie. WordPress, jeho zásuvné moduly a každý bezpečnostný zásuvný modul sa potom vôbec nedostanú k slovu.

Z rovnakého dôvodu nepomôže ani „zosilňujúci zásuvný modul“, ktorý mení nastavenia cez ini_set(). php.net výslovne odrádza od nastavovania prechodných opatrení touto cestou.

A pri spravovanom WordPress?

Pri ponukách spravovaného WordPress sa poskytovateľ často stará nielen o aktualizácie WordPress, ale aj o server pod ním. Pre PHP2Shell je to výhoda, nie však automatizmus. Opýtajte sa konkrétne, či bola aktualizácia PHP nasadená a všetky procesy PHP reštartované. Výrok „Udržiavame váš WordPress aktuálny“ na túto otázku neodpovedá.

Veľa webov, jedna inštalácia PHP

Agentúry a podniky s viacerými webmi by mali poznať jednu zvláštnosť: na jednom serveri sa o rovnakú verziu PHP často delí veľa inštalácií WordPress. Ak je nezaplátaná, sú dotknuté všetky, bez ohľadu na to, ako dobre je spravovaný každý jednotlivý web. Naopak, aktualizácia PHP ochráni všetky inštalácie naraz, pokiaľ sa potom reštartujú všetky príslušné procesy PHP. Kto prevádzkuje paralelne viac verzií PHP, musí aktualizovať každú zvlášť.

Dôležité

Zelený dashboard WordPress nehovorí o PHP2Shell nič. Rozhodujúci je stav záplat PHP na serveri a reštart všetkých procesov PHP.

Ako správne čítať verziu PHP vo WordPress

WordPress zobrazuje verziu PHP: v dashboarde pod Nástroje, Stav webu, v oblasti Správa v sekcii Server. Je to dobrý prvý náznak, ale nie dôkaz.

Ak tam stojí vetva ako 8.1 alebo staršia, je to jasný varovný signál, pretože pre ňu už neexistujú oficiálne aktualizácie. Ak tam stojí 8.2.35, 8.3.36, 8.4.27 alebo 8.5.12, je nainštalovaný opravený stav. Ak tam stojí staršie číslo podporovanej vetvy, môže byť napriek tomu nasadený backport. Distribúcie a poskytovatelia hostingu pritom číslo často nemenia. Jasno urobí len potvrdenie poskytovateľa hostingu alebo pohľad do changelogu balíka. Ako na to, nájdete pod Kontrola verzie PHP a stavu záplat.

Čo by mali prevádzkovatelia WordPress urobiť namiesto toho

  1. Opýtať sa poskytovateľa hostingu alebo prevádzkovateľa servera: Je PHP zaplátané, kedy, a boli reštartované všetky procesy PHP? Odpoveď písomne.
  2. Skontrolovať vetvu PHP: Ak web beží na 8.1 alebo staršom, naplánovať prechod na podporovanú vetvu. Ktorú verziu vaša verzia WordPress podporuje, nájdete v systémových požiadavkách na wordpress.org. Zmenu v zákazníckom menu popisuje Zmena verzie PHP v zákazníckej zóne hostingu.
  3. Skontrolovať stopy: nové súbory PHP v wp-content/uploads, neznáme administrátorské účty, cudzie záznamy v mu-plugins. Typické úkryty popisuje stránka WordPress a PHP2Shell.
  4. WordPress napriek tomu udržiavať aktuálny: Jadro, zásuvné moduly a témy uzatvárajú iné zraniteľnosti. Zostáva to povinnosťou, len inou.
  5. Vyjasniť zodpovednosť: Ak web spravuje agentúra, zaznamenať, či zodpovedá aj za PHP, alebo len za WordPress.

Práve posledný bod často spôsobuje medzery. Agentúra spravuje WordPress, poskytovateľ hostingu server a každý verí, že PHP2Shell má na očiach ten druhý.

Ako konkrétne pomáha PHP SOS?

  • Vyjasniť vrstvy: Zistíme, kto zodpovedá pri vašom webe WordPress za ktorú vrstvu.
  • Aktualizovať PHP: Na vlastných alebo spravovaných serveroch nasadíme aktualizáciu PHP a reštartujeme všetky procesy.
  • Skontrolovať WordPress: Hľadáme stopy útoku v súboroch, databáze a účtoch.
  • Doklad: Stav záplat dostanete písomne, aj na odovzdanie agentúre alebo zákazníkom.

Postup popisuje služba záplatovania PHP.

Záver

Update WordPress je dobrá údržba, ale proti PHP2Shell nesprávna vrstva. Zraniteľnosť sedí o poschodie nižšie, v PHP na serveri. Kto to chápe, kladie správnu otázku na správnom mieste: Je PHP zaplátané, reštartované a doložené?

Časté otázky

Prináša WordPress bezpečnostnú aktualizáciu proti PHP2Shell?

Podľa Dr. Web WordPress.org neplánuje žiadnu aktualizáciu proti PHP2Shell, pretože zraniteľnosť leží v interpreteri PHP na serveri. Pomôže len aktualizácia PHP od poskytovateľa hostingu alebo prevádzkovateľa servera.

Kde vidím vo WordPress verziu PHP?

V dashboarde pod Nástroje, Stav webu, v oblasti Správa v sekcii Server. Zobrazené číslo však s istotou nehovorí, či je záplata nasadená, pretože poskytovatelia hostingu často zabudujú opravy ako backport bez nového čísla verzie.

Chráni pred PHP2Shell bezpečnostný zásuvný modul?

Len veľmi obmedzene. Zásuvný modul beží sám v PHP a aktivuje sa až po načítaní WordPress. Pri Apache s mod_php bol podľa tímu PHP predvedený exploit ešte predtým, než sa vôbec spustí kód aplikácie. Tam zásuvný modul zasiahnuť nemôže.

Mám napriek tomu aktualizovať WordPress?

Áno. Aktuálne verzie WordPress, tém a zásuvných modulov uzatvárajú iné zraniteľnosti a sú súčasťou dobrej údržby. Problém PHP2Shell však nevyriešia.

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