PHP únik z 21. října: co se stalo a jak to nyní vypadá
Ve středu 21. října byly zveřejněny dvě závažné bezpečnostní chyby v PHP, programovacím jazyce, na kterém běží naprostá většina všech webových stránek, včetně WordPressu. Možná jste si toho všimli, protože webové stránky byly u nás část dne offline. V tomto článku shrnujeme, co se stalo, jak jsme postupovali a jak je situace nyní.
Co se stalo?
Tyto chyby (CVE-2026-109618 a CVE-2026-109619) umožňovaly neoprávněným osobám spustit kód na webovém serveru. To je zhruba nejhorší typ chyby, jaký může existovat: útočník k tomu nepotřebuje heslo a chyba se týká prakticky celého internetu.
Jak jsme postupovali
- Dočasné opatření
V tu chvíli bylo známo pouze to, že ve všech verzích PHP se nacházejí dvě závažné chyby se skóre CVE 9,2. Podrobnosti ještě nebyly známy a nebyly zaznamenány žádné úspěšné útoky, i když například Cloudflare zaznamenával stále více pokusů. Protože podrobnosti o chybě nebyly známy, nikdo přesně nevěděl, o co jde a co lze udělat pro omezení rizika. Postupně se objevovalo stále více zmírňujících opatření a možných kroků ke snížení rizika. Ty jsme vždy okamžitě zaváděli, například vypnutí určitých funkcí PHP a opakovanou aktualizaci firewallu.
Od 10:00 jsme také nepřetržitě spouštěli velmi přísné kontroly na malware, abychom okamžitě zaznamenali, pokud by někde na našich serverech nebo v účtech našich klientů byl umístěn skript. K tomu nedošlo. - Webové stránky offline
Přestože jsme na našich serverech nezaznamenali žádné pokusy o zneužití, rozhodli jsme se zvolit nejbezpečnější možnost: vše dát offline. Hlavním důvodem bylo, že jsme měli pochybnosti o účinnosti zmírňujících opatření (dočasných řešení), která kolovala po internetu, protože nikdo nemohl potvrdit, že poskytují dostatečnou ochranu.
V situaci s tolika nejasnostmi a potenciálně obrovskými následky je několik hodin výpadku obhajitelné, riskovat nikoli. - Oficiální řešení
Tvůrci PHP vydali oficiální aktualizaci s opravou pro verze 8.3, 8.4 a 8.5. Poté jsme čekali na aktualizované balíčky od CloudLinuxu, dodavatele verzí PHP na našich serverech.
Při zveřejnění aktualizace byly také zveřejněny podrobnosti o zranitelnostech, což potvrdilo naše obavy: známá zmírňující opatření a dodatečná pravidla firewallu sice snižovala riziko napadení, ale nebyla dostatečná k ochraně serveru. - Dočasné řešení
Bohužel trvalo mnohem déle, než jsme doufali a očekávali, než měl CloudLinux aktualizace připravené. Z našeho kontaktu s jinými poskytovateli vyplynulo, že jsme nebyli jediní, koho to zaskočilo. Protože jsme viděli, že CloudLinux již několikrát nedodržel vlastní stanovené termíny, pracovali jsme na dočasném řešení.
Sami jsme nainstalovali verzi PHP 8.3.36 na všechny naše servery a dočasně na ni přepnuli všechny naše klienty. 90 % webových stránek se znovu dostalo online mezi 19:00 a 20:30. Jediné webové stránky, které se nepodařilo znovu zprovoznit, byly zastaralé a nedokázaly fungovat s moderní verzí PHP. - Aktualizace
Aktualizace byly zpřístupněny a my jsme okamžitě začali s jejich instalací a kontrolou, server po serveru.
- Vyřešeno
Všechny servery byly aktualizovány a všechny webové stránky byly opět online, na stejné verzi PHP, jakou používaly dříve.
Dobře chápeme, že je nepříjemné, pokud je Vaše webová stránka odpoledne a večer nedostupná. Toto nepohodlí však nepřevažuje nad možnými následky. Nikdy předtím jsme nemuseli rozhodnout o preventivním vypnutí všeho, ale pokud by se stejná situace opakovala, postupovali bychom úplně stejně.
Jak je situace nyní?
- Všechny verze PHP, které nabízíme, od 5.2 až po 8.5, obsahují bezpečnostní opravy pro obě chyby.
- Několik webových stránek, které běžely na ještě starší verzi PHP, pro kterou oprava neexistuje, jsme převedli na opravenou verzi.
- Servery jsme během a po zveřejnění chyby zkontrolovali, zda nenesou stopy zneužití, například zaseknuté procesy PHP, podezřelé procesy, nahrané soubory a požadavky odpovídající známému útoku. Nenašli jsme žádné známky toho, že by chyba byla na našich serverech zneužita, a ani před tím, než jsme šli offline, jsme nenalezli žádné pokusy o zneužití.
Je moje webová stránka oddělena od webových stránek ostatních?
Ano. Každý hostingový balíček u nás běží ve vlastním, odděleném prostředí. PHP běží pod uživatelem Vašeho balíčku, bez administrátorských práv na serveru, a nemá přístup k souborům ani databázím jiných klientů. Rovněž využití procesoru a paměti je omezeno pro každý balíček zvlášť. Další podrobnosti o naší bezpečnosti záměrně nezveřejňujeme: čím méně toho útočník ví, tím lépe.
Přečíst další články

Přecházíme na Euro-Office: nová kancelářská sada ve Vašem Nextcloudu
Novinka: server MCP pro AI. Nechte svou vlastní AI pracovat na vašem webu
Vaše AI teď může pracovat přímo na vašem webu u WebOké: upravovat soubory, hledat chyby, vytvořit nový design nebo převést WordPress na rychlý statický web. Vysvětlíme, co je server MCP, co vám přinese, pro které balíčky platí a kolik stojí (nic navíc).

