Premium novinky

CISA KEV: PHP2Shell umožňuje převzít webový proces

Premium novinky Date: Zobrazení: 16

CISA KEV: PHP2Shell umožňuje převzít webový proces

Dvě zneužívané chyby PHP dovolují za určitých podmínek spustit kód na webovém serveru bez přihlášení. Oprava patří do samotného běhového prostředí PHP; aktualizace redakčního systému nebo jeho doplňků ji nenahrazuje.

CISA zařadila CVE-2026-109618 a CVE-2026-109619 do katalogu KEV 26. října. Obě zranitelnosti známé jako PHP2Shell mají podle projektu PHP skóre CVSS 4.0 ve výši 9,2. Dopadem je spuštění kódu s oprávněními procesu obsluhujícího webové požadavky, nikoli automaticky s oprávněními správce celého systému. Konkrétní zneužitelnost závisí také na sestavení PHP, rozšířeních a způsobu provozu.

CVE-2026-109618 souvisí s chybovým zpracováním nedostatku paměti. Předčasné ukončení operace může ponechat interní data požadavku jen částečně připravená; následný úklid s nimi přesto zachází jako s platnými. U Apache s mod_php bylo spuštění kódu prokázáno už při zpracování vstupu před spuštěním aplikace. Její přihlašovací formulář tak tuto cestu nechrání. PHP-FPM při selhání úvodní fáze pracovní proces ukončí, ale nebezpečný stav může vzniknout i později během běhu aplikace. FPM proto nelze považovat za automaticky bezpečné.

CVE-2026-109619 využívá pozůstatky interního stavu mezi požadavky. Proces po uvolnění paměti uchová odkaz na její původní obsah a další požadavek obsloužený stejným procesem ho použije dříve, než proběhne běžná inicializace. Prokázané cesty zahrnují diagnostiku fatálních chyb v PHP 8.5 a sledování průběhu nahrávání souborů přes sessions. U session varianty výzkumníci ověřili spuštění kódu na mod_php i FPM. Vyšší počet pracovních procesů může snížit úspěšnost jednotlivého pokusu, ale chybu neodstraňuje.

Obě chyby opravují PHP 8.2.35, 8.3.36, 8.4.27 a 8.5.12, vydané 21. října, nebo novější verze příslušných větví. U balíčků linuxových distribucí a dodavatelských produktů ověřte, zda obsahují zpětně přenesenou opravu. PHP 8.1 a starší již nemají standardní bezpečnostní podporu projektu; pro některé starší větve existují mimořádné zdrojové opravy či balíčky dodavatelů, jejich dostupnost ale neobnovuje běžnou podporu.

Ilustrační mechanismus třídění dokumentů s narušenou cestou

Úpravy konfigurace omezují jen konkrétní útokové cesty. Pro druhou chybu PHP doporučuje mimo jiné vypnout session.upload_progress.enabled, v PHP 8.5 také fatal_error_backtraces, a restartovat všechny pracovní procesy. Nastavení musí platit před zpracováním požadavku; ini_set() uvnitř aplikace může přijít pozdě. Pouhé skrytí chybových hlášení ochranu neposkytuje. Úplnou nápravou těchto dvou chyb zůstává aktualizace.

Projekt PHP navíc 23. října doporučil ponechat session.upload_progress.enabled=0 do dalšího běžného opravného vydání kvůli samostatné chybě CVE-2026-115560. Ta vyžaduje neobvyklou kombinaci: aplikace má nastavený session.serialize_handler na php_binary nebo php_serialize a za běhu jej před session_start() změní na php, přičemž sledování nahrávání zůstává zapnuté. Aplikace, které serializační mechanismus za běhu nemění, podle PHP mohou funkci ponechat zapnutou. Toto upozornění není třetím přírůstkem dnešního KEV přehledu.

Podrobnější vysvětlení dopadů, omezení dočasných opatření a kontroly u poskytovatele hostingu najdete v našem článku PHP2Shell: dvě kritické chyby vyžadují okamžitou aktualizaci PHP: https://acresia.com/cs/novinky/php2shell-kriticke-opravy.

Další články