Stručne: Zraniteľnosť PHP2Shell sa v TYPO3 netýka samotného TYPO3, ale PHP pod ním. Aktualizácia TYPO3 preto nepomôže. Skontrolujte stav PHP a reštart, zablokujte Install Tool a skontrolujte fileadmin, typo3temp a nainštalované rozšírenia (extensions).
Prečo by mali prevádzkovatelia TYPO3 teraz konať
TYPO3 je v Nemecku rozšírené u obcí, vysokých škôl, združení a v stredných firmách. Mnohé z týchto webov bežia roky stabilne a len zriedka sa na ne siaha. Práve to ich robí pri PHP2Shell zraniteľnými: zraniteľnosti CVE-2026-109618 a CVE-2026-109619 sú v interpreteri PHP a podľa tímu PHP umožňujú spustenie škodlivého kódu na diaľku bez prihlásenia.
BSI (nemecký Spolkový úrad pre informačnú bezpečnosť) vyhlásilo stupeň varovania 3 (oranžový) a odporúča okamžitú aktualizáciu. Ak to nie je možné, majú sa webové servery dočasne odpojiť od siete. Zhrnutie oficiálnej situácie nájdete na stránke Čo BSI k PHP2Shell odporúča.
Zraniteľnosť PHP v TYPO3: skontrolovať stav PHP v backende
Administrátori vidia verziu PHP v TYPO3 na dvoch miestach: v systémových informáciách v hornej lište backendu a pod Admin Tools > Environment (v novších verziách v module System). TYPO3 tam kontroluje aj to, či prostredie zodpovedá požiadavkám.
Opravené upstream verzie sú 8.5.12, 8.4.27, 8.3.36 a 8.2.35. Mnohé servery s TYPO3 bežia na linuxových distribúciách, ktoré dodávajú opravy ako backport; číslo verzie potom zostane rovnaké. Rozhodujúci je stav balíkov a potvrdenie prevádzkovateľa. Ktoré verzie PHP vaša verzia TYPO3 podporuje, skontrolujte podľa systémových požiadaviek na typo3.org.
Mnohé inštalácie TYPO3 navyše spúšťajú Scheduler cez cron úlohu s PHP z príkazového riadku. Toto CLI PHP môže byť iná verzia než webové PHP a musí byť záplatované rovnako. Pri pochybnostiach skontrolujte, aká cesta k PHP je v cron úlohe. Pri viacserverových nastaveniach to platí pre každý jednotlivý server, aj pre redakčné a náhľadové servery, na ktoré sa často zabúda.
Na starších úradných serveroch PHP často stále beží ako modul Apache. Tento režim prevádzky tím PHP hodnotí ako najvyššie riziko; prečo, vysvetľuje stránka Prečo mod_php nesie najvyššie riziko.
Adresáre a konfigurácia v TYPO3
Štruktúra závisí od verzie a spôsobu inštalácie. Novšie inštalácie cez Composer oddeľujú verejné a interné súbory, staršie klasické inštalácie nie.
| Miesto | Obsah | Bod kontroly |
|---|---|---|
config/system/settings.php resp. typo3conf/LocalConfiguration.php (staršie verzie) |
Prístup k databáze, šifrovací kľúč, heslo Install Toolu | Dátum zmeny, hodnoty pri podozrení obnoviť |
fileadmin/ |
Súbory redaktorov | Súbory PHP sem nepatria |
typo3temp/ |
Zapisovateľné dočasné súbory | Neočakávané súbory PHP |
typo3conf/ext/ resp. vendor/ |
Rozšírenia (extensions) | Neznáme alebo zmenené rozšírenia |
var/log/ resp. typo3temp/var/log/ |
Protokoly | Pred zmenami zálohovať |
Neškodné kontroly v príkazovom riadku, cesty prosím prispôsobte svojej inštalácii:
# Súbory PHP v adresároch redaktorov a dočasných súborov
find public/fileadmin public/typo3temp -type f -name "*.php"
# Povaľuje sa niekde súbor na sprístupnenie Install Toolu?
find . -name "ENABLE_INSTALL_TOOL"
# Zobraziť aktívne rozšírenia (inštalácia cez Composer)
vendor/bin/typo3 extension:list
Zabráňte spúšťaniu PHP v fileadmin a typo3temp na úrovni webového servera. Webshell tam uložená tak nebude priamo volateľná, ani keď sa dostala na server.
Backend, Install Tool a rozšírenia
Backend je pod /typo3. Skontrolujte používateľov backendu na neznáme účty s právami administrátora a na účty bývalých zamestnancov alebo agentúr. TYPO3 pozná navyše „System Maintainer“ s mimoriadne rozsiahlymi právami v oblasti Admin Tools; tento zoznam by mal byť veľmi krátky.
Install Tool má vlastné heslo. Pri podozrení ho obnovte rovnako ako šifrovací kľúč. Rozšírenia z TYPO3 Extension Repository a vlastné vývoje sú dodatočný kód; práve staršie vlastné vývoje často brzdia aktualizáciu PHP. Zistite, ktoré rozšírenia sa skutočne potrebujú.
Čo aktualizácia TYPO3 dokáže a čo nie
Aktualizácia TYPO3 uzatvára známe chyby v jadre, aktualizácia rozšírenia chyby v rozšírení. Ani jedno nezáplatuje PHP, nereštartuje procesy a neodstráni webshell z fileadmin. Aj čerstvo aktualizované TYPO3 teda môže obsahovať zadné vrátka z čias pred záplatou. K tomu pristupuje, že prechod na novšiu verziu PHP môže pri starých verziách TYPO3 vyžadovať upgrade TYPO3. Potom potrebujete prechodnú ochranu a časový plán.
Pre verejné orgány pribúda dokumentácia. Zaznamenajte, kedy sa záplata nasadila, kedy sa reštartovalo a ktoré kontroly s akým výsledkom prebehli. Uľahčí to otázky informačnej bezpečnosti, ochrany údajov a kontroly hospodárenia. Aj váš dodávateľ by vám mal tieto body potvrdiť písomne.
Ako konkrétne pomáha PHP SOS?
- Zisťujeme verziu PHP, režim prevádzky a stav backportov vášho servera s TYPO3 a necháme si potvrdiť reštart.
- Zálohujeme logy od 20. 10. 2026 a aktuálny stav súborov a databázy.
- Kontrolujeme
fileadmin,typo3temp, konfiguráciu, rozšírenia a účty backendu na nezrovnalosti. - V rámci spevnenia servera zablokujeme spúšťanie PHP v adresároch na nahrávanie a stav zdokumentujeme pre vašu informačnú bezpečnosť.
Časté otázky
Musím kvôli PHP2Shell aktualizovať TYPO3?
Aktualizácia TYPO3 PHP2Shell neuzatvorí, pretože zraniteľnosť je v PHP servera. TYPO3 však napriek tomu udržiavajte aktuálne. Pre PHP2Shell potrebujete aktualizáciu PHP alebo potvrdený backport a reštart všetkých procesov PHP.
Kde v TYPO3 vidím verziu PHP?
Administrátori ju vidia v systémových informáciách v hornej lište backendu a v oblasti Admin Tools pod Environment. Či bol nasadený backport, TYPO3 neukazuje; potvrdí to poskytovateľ hostingu alebo správca servera.
Čo je súbor ENABLE_INSTALL_TOOL?
Sprístupňuje Install Tool, ktorým sa dajú meniť centrálne nastavenia. V bežnej prevádzke by tento súbor nemal existovať. Ak sa nečakane nájde, je to dôvod na podrobnejšiu kontrolu.
Platia pre úrady s TYPO3 osobitné povinnosti?
Verejné orgány sa často riadia nemeckým IT-Grundschutz od BSI (nemecký Spolkový úrad pre informačnú bezpečnosť) a predpismi svojej krajiny. Aké povinnosti platia v konkrétnom prípade, vyjasnite so svojou zodpovednou osobou za informačnú bezpečnosť a ochranu údajov.