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 →

Časové okno medzi záplatou a útokom

Pri PHP2Shell boli pokusy o útok už pred záplatou. Vysvetľujeme fázy časového okna, ako zmerať vlastné a ako ho skrátiť.

Stav 4 min čítaniaSituácia a zaradenie

Stručne: Časové okno medzi záplatou a útokom bolo pri PHP2Shell záporné: podľa mediálnych správ bol prvý pokus o útok už 17. októbra 2026, štyri dni pred aktualizáciami. Pre prevádzkovateľov preto nerozhoduje otázka „Koľko času zostáva?“, ale „Ako dlho je môj server otvorený?“. Toto osobné okno sa končí až vtedy, keď je aktualizácia nainštalovaná a všetky procesy PHP reštartované.

Východisko: útoky pred záplatou

Dlho platil pohodlný predpoklad: medzi bezpečnostnou aktualizáciou a prvými útokmi uplynie niekoľko dní, dosť času na ďalšie servisné okno. PHP2Shell tento predpoklad vyvrátil. Podľa mediálnych správ, ktoré sa odvolávajú na Amazon, bol prvý pokus o útok pozorovaný už 17. októbra. Cloudflare takisto informoval o skorých útokoch. Záplaty prišli 21. októbra o 14:00 UTC.

Tento príspevok vysvetľuje, ako takéto časové okná vznikajú a ako vaše skrátiť. Presný sled dátumov nájdete v časovej osi PHP2Shell.

Časové okno medzi záplatou a útokom po fázach

Okolo bezpečnostnej zraniteľnosti sa dá rozlíšiť niekoľko fáz. Pri PHP2Shell vyzerali takto:

Fáza Všeobecne Pri PHP2Shell
Pred zverejnením zraniteľnosť je známa len objaviteľom a výrobcovi vývoj opravy pod embargom
Prvé útoky bez záplaty útočníci zneužívajú zraniteľnosť, kým aktualizácia neexistuje podľa mediálnych správ prvý pokus 17. 10.
Oznámenie vopred výrobca oznámi aktualizáciu 20. 10., php.net oznamuje vydanie
Záplata k dispozícii vychádza aktualizácia a bezpečnostné hlásenie 21. 10., 14:00 UTC
Vyhodnotenie záplaty výskumníci a útočníci analyzujú zmeny watchTowr podľa vlastných údajov zreprodukoval CVE-2026-109618
Široké zneužívanie automatizované kampane proti nezaplátaným serverom očakávané BSI; potvrdené úspešné útoky vo väčšom rozsahu spočiatku neboli známe
Vaša záplata aktualizácia a reštart na vašich serveroch individuálne

Posledný riadok je jediný, ktorý môžete ovplyvniť. Všetko pred ním určujú iní.

Prečo samotná záplata zvyšuje tlak

Bezpečnostná aktualizácia zraniteľnosť uzavrie, no zároveň ju sprístupní pohľadu. Zmeny zdrojového kódu v open-source projektoch, ako je PHP, sú verejné. Kto porovná rozdiely medzi starou a novou verziou, zistí, na ktorom mieste chyba bola. To nie je výčitka projektu PHP, ale normálny stav otvoreného softvéru a základ toho, aby distribúcie mohli zostavovať backporty.

Pre prevádzkovateľov z toho vyplýva: s každým dňom po záplate rastie počet tých, ktorí vedia, ako zraniteľnosť funguje. Zároveň klesá počet nezaplátaných serverov. Zostávajúce sa tak stávajú najbližšími cieľmi. Ako PHP dodáva bezpečnostné aktualizácie v rámci svojej údržby verzií, vysvetľuje príspevok o cykle vydávania PHP.

Konajte hneď

Ak bol váš server dostupný medzi 17. októbrom a vašou záplatou, patrí k tomu kontrola stôp. Zálohujte logy od 20. októbra predtým, než sa stratia rotáciou.

Zmerať vlastné časové okno

Vaše osobné časové okno začína najneskôr zverejnením záplat a končí reštartom posledného procesu PHP. Zaznamenajte pre každý server:

  • Vedomosť: Kedy sa niekto vo firme dozvedel o zraniteľnosti?
  • Dostupnosť: Kedy bol balík vašej distribúcie alebo poskytovateľa hostingu k dispozícii?
  • Inštalácia: Kedy bol nasadený?
  • Reštart: Kedy už nebežali žiadne staré procesy PHP?

Práve reštart sa často zabúda. Nainštalovaná aktualizácia zaberie až vtedy, keď sa staré procesy ukončia. Ako to skontrolovať, popisuje Reštart PHP-FPM a všetkých procesov PHP. Či ešte bežia procesy spred aktualizácie, ukáže pohľad na časy spustenia:

# Zobraziť čas spustenia všetkých procesov PHP
ps -eo pid,lstart,cmd | grep -E "php-fpm|php-cgi|lsphp" | grep -v grep

Ak je čas spustenia pred inštaláciou aktualizácie, okno je stále otvorené.

Prečo vaše okno závisí od zdroja

Ako rýchlo môžete záplatovať, nezávisí len od vás, ale aj od toho, odkiaľ vaše PHP pochádza. Distribúcie dodali backporty podľa správ čiastočne ešte 21. októbra. Kto získava PHP z repozitára tretej strany, je odkázaný na jeho tempo. Kto používa kontajnery, musí obrazy zostaviť nanovo a nasadiť, pouhá aktualizácia v bežiacom kontajneri nestačí. A pri zdieľanom hostingu určuje čas poskytovateľ hostingu.

Ak poznáte zdroj každého servera, viete aj, kde zostáva vaše okno otvorené najdlhšie. Práve tam sa príprava oplatí najviac, napríklad dohodou s poskytovateľom hostingu alebo odskúšaným postupom pre nové obrazy kontajnerov.

Ako okno skrátiť nabudúce

  1. Odoberať hlásenia: Bezpečnostné hlásenia php.net a vašej distribúcie dostávať priamo, nie až cez tlač.
  2. Určiť zodpovednosť: Pre každý server zodpovednú osobu so zástupom.
  3. Využívať automatiku tam, kde sedí: Bezpečnostné aktualizácie z distribúcie sa dajú nasadzovať automaticky. Čo hovorí za a čo proti, popisujú Automatické bezpečnostné aktualizácie.
  4. Naplánovať reštart: Reštart služieb PHP patrí pevne do postupu, nie do dodatočnej práce.
  5. Pripraviť núdzovú cestu: Núdzová stránka a rozhodnutie o dočasnom vypnutí pre prípad, že aktualizácia nie je okamžite možná.
  6. Viesť doklad: Zdokumentovať časy inštalácie a reštartu, aby ste svoje okno mohli neskôr doložiť.

Trvalý proces, ktorý tieto body spája, je opísaný v príspevku o procese správy záplat.

Ako konkrétne pomáha PHP SOS?

  • Záplata a reštart: Nasadíme aktualizáciu a zabezpečíme, aby už nebežali žiadne staré procesy PHP.
  • Doložiť časové okno: Zdokumentujeme inštaláciu a reštart pre každý server s časom.
  • Kontrola stôp: Pre obdobie, keď bol váš server otvorený, zálohujeme logy a kontrolujeme nápadnosti.
  • Proces do budúcnosti: Spolu s vami zriadime cesty hlásenia, zodpovednosti a postupy aktualizácií.

Viac pod služba záplatovania PHP.

Záver

Pri PHP2Shell neexistovala žiadna ochranná lehota. Časové okno medzi záplatou a útokom je pri kritických zraniteľnostiach dnes často nulové alebo dokonca záporné. Čo môžete riadiť, je vaše vlastné okno: končí sa reštartom a prípravou sa dá skrátiť z dní na hodiny.

Časté otázky

Koľko času zostáva po bezpečnostnej aktualizácii do útokov?

Pevná lehota neexistuje. Pri PHP2Shell bol podľa mediálnych správ prvý pokus o útok pozorovaný už 17. októbra, teda štyri dni pred záplatami. Pri kritických zraniteľnostiach v rozšírenom softvéri by ste mali vychádzať z toho, že prakticky neexistuje žiadna ochranná lehota.

Čo je zero-day?

Zraniteľnosť, ktorá sa napáda skôr, než je k dispozícii aktualizácia. Výrobca mal akoby nulu dní na jej odstránenie. Potom sa často hovorí o známej zraniteľnosti alebo N-Day, pre ktorú už záplata existuje.

Prečo sa útoky po záplate často zintenzívnia?

So záplatou sa zverejní, na ktorom mieste chyba bola. Bezpečnostní výskumníci a útočníci môžu zmeny vyhodnotiť. Zároveň mnohé servery zostávajú ešte dni alebo týždne nezaplátané, a teda lákavými cieľmi.

Kedy je môj server skutočne chránený?

Keď je aktualizácia nainštalovaná a všetky procesy PHP boli reštartované. Samotné nové súbory nezaberú, kým v pamäti bežia staré procesy. Koniec vášho osobného časového okna je teda reštart, nie stiahnutie.

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