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 →

Debian a Ubuntu: je môj balík PHP zaplátaný?

Ktoré balíky PHP Debian a Ubuntu proti PHP2Shell opravili, ako presne porovnať nainštalovaný stav a na čom doklad zlyháva.

Stav 5 min čítaniaHosting a distribúcie

Stručne: Či je váš balík PHP v Debiane alebo Ubuntu zaplátaný proti PHP2Shell, poznáte podľa presného stavu balíka, nie podľa verzie PHP. Ubuntu zverejnilo 21. októbra 2026 opravené balíky pre všetky podporované vydania, staršie cez Ubuntu Pro. Debian opravil php8.2 v bookworm a php8.4 v trixie. Nainštalovaný stav porovnajte pomocou dpkg --compare-versions a potom reštartujte všetky služby PHP.

Otázka za otázkou

„Je môj balík PHP zaplátaný?“ znie ako otázka na áno alebo nie. V praxi závisí odpoveď od troch vecí: z akého zdroja balík pochádza, aký stav je nainštalovaný a beží tento stav aj skutočne? Tento príspevok odpovedá na prvé dva body pre oficiálne balíky Debianu a Ubuntu. Ako vo všeobecnosti skontrolovať verziu a bežiace procesy, nájdete pod Správna kontrola verzie PHP a stavu záplat.

Údaje v oficiálnych bezpečnostných hláseniach Ubuntu a v Debian Security Tracker sme získali 25. októbra 2026. Obe CVE, CVE-2026-109618 a CVE-2026-109619, sú tam uvedené s rovnakými opravenými stavmi.

Opravené stavy balíkov v Ubuntu

Ubuntu zverejnilo opravy dvoma hláseniami. USN-8948-1 pokrýva aktuálne vydania, USN-8948-2 staršie, ktoré dostávajú bezpečnostné aktualizácie už len cez Ubuntu Pro. Pri 16.04 a 14.04 uvádza Ubuntu navyše ponuku Legacy Support.

Vydanie Ubuntu Zdrojový balík Opravený stav
26.10 php8.5 8.5.9-0ubuntu2.1
26.04 LTS php8.5 8.5.4-0ubuntu1.5
24.04 LTS php8.3 8.3.6-0ubuntu0.24.04.13
22.04 LTS php8.1 8.1.2-1ubuntu2.28
20.04 LTS (Ubuntu Pro) php7.4 7.4.3-4ubuntu2.29+esm5
18.04 LTS (Ubuntu Pro) php7.2 7.2.24-0ubuntu0.18.04.17+esm14

Nápadné je, že všetky stavy si ponechávajú pôvodnú verziu PHP. Ubuntu 24.04 zostáva pri 8.3.6, hoci oprava bola prevzatá z 8.3.36. Prečo to tak je a ako s tým naložiť, vysvetľuje príspevok Prečo php -v ukazuje to isté číslo. Dotknuté sú vždy okrem iného binárne balíky pre FPM, CLI, CGI a modul Apache, napríklad php8.3-fpm a libapache2-mod-php8.3.

Opravené stavy balíkov v Debiane

Debian tu ide inou cestou a dodáva nové verzie upstream. Podľa Security Tracker vyzerá stav takto:

Vydanie Debianu Zdrojový balík Predchádzajúci stav Opravený stav Hlásenie
12 bookworm php8.2 8.2.32-1~deb12u1 8.2.35-1~deb12u1 DLA-4848-1
13 trixie php8.4 8.4.24-1~deb13u1 8.4.27-1~deb13u1 DSA-6574-1
forky, sid php8.4 8.4.27-1

Hlásenie pre bookworm vyšlo ako DLA, teda cez Debian LTS. Pre php8.2 v unstable tracker pri získaní údajov ešte opravený stav neuvádza. Kto prevádzkuje testovacie systémy na unstable, mal by to mať na očiach.

Staršie vydania Debianu sa v oboch záznamoch CVE pri získaní údajov neobjavujú. Ak server ešte beží na takomto vydaní, napríklad Debian 11 s PHP 7.4, nemôžete sa spoliehať na bezpečnostnú aktualizáciu z oficiálneho archívu. Potom zostávajú tri cesty: povýšiť operačný systém na podporované vydanie, využiť komerčnú ponuku dlhodobej podpory, ktorej pokrytie pre PHP2Shell si nechajte písomne potvrdiť, alebo server do migrácie zabezpečiť prechodnými opatreniami a obmedziť jeho dostupnosť. Dlhodobo je udržateľná len prvá cesta.

Ako presne porovnať nainštalovaný stav

Pohľad na číslo verzie nestačí, pretože verzie Debianu sa radia podľa vlastných pravidiel. dpkg --compare-versions porovnáva správne. Nasledujúce príkazy sú čisto čítacie; názvy balíkov a cieľový stav prispôsobte svojmu vydaniu.

# Nainštalovaný stav a pôvod balíka
apt policy php8.3-fpm

# Všetky nainštalované balíky PHP s verziou
dpkg-query -W -f='${Package}\t${Version}\n' 'php*' 'libapache2-mod-php*' 2>/dev/null

# Presné porovnanie s opraveným stavom (príklad Ubuntu 24.04)
v=$(dpkg-query -W -f='${Version}' php8.3-fpm)
dpkg --compare-versions "$v" ge 8.3.6-0ubuntu0.24.04.13 && echo "korrigiert: $v" || echo "PRÜFEN: $v"

Vo výstupe apt policy sledujte riadok so zdrojom balíka. Ak tam nestojí bezpečnostný archív vašej distribúcie, ale napríklad packages.sury.org alebo PPA, uvedené tabuľky neplatia. Potom rozhoduje stav tohto externého zdroja, ktorý riešime v príspevku Repozitár sury.org.

Navyše sa oplatí pohľad do priloženého changelogu. Ako tam nájdete čísla CVE a zaznamenáte ich ako doklad, popisuje príspevok Doložiť čísla CVE v changelogu balíka.

Typické pasce pri kontrole

Skontrolovaný len jeden balík: PHP sa skladá z mnohých binárnych balíkov. Ak je php8.3-cli aktuálny, ale php8.3-fpm nie, web zostáva otvorený. Skontrolujte všetky balíky vetvy, najmä FPM, CGI a modul Apache.

Balík zadržaný: Balíky zadržané pomocou apt-mark hold zostanú pri aktualizácii stáť. apt-mark showhold ich zobrazí.

Ubuntu Pro nie je aktívne: Na 20.04 a starších prichádzajú opravy len vtedy, ak je Ubuntu Pro zriadené. Bez Pro zostáva systém napriek behu aktualizácie zraniteľný.

Zastaraný zrkadlový server: Ak server získava balíky cez interné zrkadlo alebo proxy, nové bezpečnostné aktualizácie uvidí až po jeho aktualizácii. V prípade pochybností skontrolujte, či apt update skutočne dosiahne bezpečnostný zdroj.

Zabudnutý reštart: Nové balíky zaberú až po reštarte všetkých služieb, ktoré načítali PHP. needrestart, ak je nainštalovaný, ukáže služby so zastaraným kódom.

Dôležité

Opravený stav balíka dokazuje len to, že zraniteľnosť je odteraz uzavretá. Či bol server predtým napadnutý, nezodpovie. Zálohujte logy od 20. októbra.

Ako konkrétne pomáha PHP SOS?

  • Pre každý server zisťujeme pôvod všetkých balíkov PHP a porovnávame stav s oficiálnymi hláseniami.
  • Nasadzujeme aktualizácie, aj cez Ubuntu Pro, a reštartujeme všetky dotknuté služby.
  • So službou záplatovania PHP dostanete pre každý server doklad so stavom balíka, zhodou v changelogu a časom reštartu.
  • Na systémoch s externými zdrojmi alebo starými verziami objasňujeme, ktorá cesta vedie k doložiteľne opravenému stavu.

Časté otázky

Ktorá verzia Ubuntu obsahuje opravu PHP2Shell?

Podľa USN-8948-1 sú Ubuntu 22.04, 24.04, 26.04 a 26.10 zásobené riadnymi aktualizáciami. Pre 14.04, 16.04, 18.04 a 20.04 dodáva Ubuntu opravy podľa USN-8948-2 cez Ubuntu Pro.

Prečo Ubuntu 24.04 stále zobrazuje PHP 8.3.6?

Ubuntu preberá bezpečnostné opravy ako backport do existujúcej verzie. Číslo upstream zostáva 8.3.6, mení sa len stav balíka. Podľa USN-8948-1 je opravený stav 8.3.6-0ubuntu0.24.04.13.

Je Debian 12 bookworm ešte podporovaný?

Áno. Podľa Debian Security Tracker existuje pre php8.2 v bookworm opravený stav 8.2.35-1~deb12u1, oznámený ako DLA-4848-1 v rámci Debian LTS.

Platí to aj pre PHP z repozitára sury?

Nie. Balíky z externých zdrojov, ako sury.org, majú vlastné stavy verzií a vlastné changelogy. Údaje Debianu a Ubuntu platia len pre ich oficiálne balíky.

Stačí apt upgrade?

Nainštaluje nové balíky, ale bežiace procesy PHP-FPM alebo Apache si ponechávajú starý kód v pamäti. Až reštart všetkých služieb, ktoré načítavajú PHP, urobí záplatu účinnou.

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