Stručně: Bezpečnost Contao závisí u PHP2Shell na PHP serveru, ne na Contao. Dbejte na to, aby bylo záplatováno jak webové PHP, tak PHP příkazové řádky Contao Manageru. Poté zkontrolujte .env, vlastní šablony, složku files a přístupy do backendu a Manageru.
Contao a PHP2Shell: o co jde
Contao je CMS rozšířené v německy mluvících zemích, které od verze 4 vychází z frameworku Symfony. Zranitelnosti PHP CVE-2026-109618 a CVE-2026-109619 umožňují podle týmu PHP spuštění škodlivého kódu na dálku bez přihlášení. Týkají se samotného PHP, tedy i každé instalace Contao na nezáplatovaném serveru.
Mnoho webů na Contao patří středním firmám, svazům a obcím a spravují je agentury. Nejprve proto ujasněte, kdo za PHP odpovídá: poskytovatel hostingu, agentura, nebo vaše vlastní IT.
Častý omyl se týká režimu údržby. Contao umí web pro návštěvníky zablokovat, ale tuto blokaci doručuje samo PHP. Každý požadavek tedy dál dosáhne interpretu PHP. Režim údržby proto před PHP2Shell nechrání. Když BSI (německý spolkový úřad pro informační bezpečnost) doporučuje odpojit webové servery do aktualizace od sítě, myslí tím blokaci na úrovni serveru nebo hostingu, ne nastavení v CMS.
Bezpečnost Contao začíná dvěma verzemi PHP
Contao používá PHP dvěma cestami. Webový server zpracovává zobrazení stránek většinou přes PHP-FPM. Contao Manager a konzole Contao pracují navíc s PHP pro příkazovou řádku, například pro instalace, aktualizace a úlohy cron. U hostingových balíčků s více verzemi PHP to mohou být dva různé programy.
Contao Manager ve své konfiguraci serveru ukazuje, který spustitelný soubor PHP používá. Webovou verzi uvidíte v hostingovém panelu. Opravené verze upstreamu jsou 8.5.12, 8.4.27, 8.3.36 a 8.2.35; backporty mohou nést starší čísla. Obě cesty musí být záplatovány a všechny procesy restartovány. Které verze PHP vaše verze Contao podporuje, ověříte podle systémových požadavků na contao.org. Více ke kontrole najdete v článku Jak správně ověřit verzi PHP a stav záplaty.
Adresáře a soubory v Contao
| Místo | Obsah | Bod kontroly |
|---|---|---|
.env, .env.local |
Přístup k databázi, APP_SECRET |
při podezření obnovit |
config/config.yaml |
Konfigurace instalace | neočekávané změny |
public/ (starší verze web/) |
Kořen dokumentů s index.php, soubor Contao Manageru, assets |
další soubory PHP |
files/ |
Správa souborů redaktorů | žádné soubory PHP |
templates/ |
Vlastní šablony, klasicky .html5 s PHP |
neznámé nebo změněné šablony |
system/config/localconfig.php |
Starší nastavení | vložený kód |
var/ |
Cache a logy | zálohovat logy, cache vytvořit znovu |
Právě templates/ se podceňuje: klasické šablony Contao s příponou .html5 jsou soubory PHP. Vložený příkaz ve vlastní šabloně se spustí při každém zobrazení stránky a přežije aktualizace Contao.
Neškodné první kontroly:
# Soubory PHP ve správě souborů
find files -type f -name "*.php"
# Šablony změněné od 17. 10. 2026
find templates -type f -newermt "2026-10-17"
# Zkontrolovat dostupné příkazy Contao a závislosti
vendor/bin/contao-console list contao
composer audit
Contao Manager umí instalovat balíčky, a tím dostat na server libovolný kód. Po podezření zkontrolujte jeho uživatelské účty, nastavte nová hesla a odstraňte přístupy bývalých dodavatelů.
Backend, Manager a rozšíření
Backend leží na adrese /contao. Zkontrolujte uživatele s právy administrátora a skupiny uživatelů s rozsáhlými právy, například ke správě souborů, šablonám nebo správě uživatelů. Contao nabízí dvoufázové přihlášení; používejte je u všech účtů se zvýšenými právy.
Rozšíření se instalují přes Composer nebo přes Contao Manager. Každé přináší kód PHP a starší rozšíření bez péče brzdí upgrady PHP. Na serverech s více weby by měla každá instalace běžet odděleně, aby se incident nepřenesl na sousední weby; více v článku open_basedir a izolace pro každý web.
Co aktualizace Contao zvládne a co ne
Aktualizace Contao přes Manager nebo Composer uzavře známé chyby v Contao a rozšířeních. Nezáplatuje PHP a nerestartuje ani PHP-FPM, ani procesy na pozadí. Vlastní šablony, soubory ve files/ a cizí uživatelské účty zůstanou beze změny. Po změně hlavní verze PHP by se měla znovu vytvořit cache a web zkontrolovat v testovacím prostředí.
U webů s mnoha redaktory se po záplatě vyplatí pohled na práva v backendu. Kdo smí upravovat šablony, může do klasických šablon .html5 ukládat kód PHP. Toto oprávnění patří jen do rukou několika technicky zdatných osob. Totéž platí pro přístup ke správě souborů s právem nahrávání do veřejně dostupných složek.
Jak konkrétně pomáhá PHP SOS?
- Zjistíme webové a CLI PHP vaší instalace Contao a necháme si potvrdit záplatu a restart.
- Zálohujeme logy, soubory a databázi dříve, než cokoli změníme.
- Kontrolujeme šablony,
files/, kořen dokumentů a účty backendu i Manageru. - Přechod PHP s dokladem na přání převezme naše služba záplatování PHP, po dohodě s vaší agenturou.
Časté dotazy
Týká se PHP2Shell Contao?
Contao samo žádnou novou zranitelnost nemá. Pokud ale web běží na nezáplatovaném PHP, je napadnutelný jako každá aplikace v PHP. Aktualizace Contao zranitelnost PHP neuzavře.
Proč je Contao Manager z hlediska bezpečnosti důležitý?
Contao Manager umí instalovat, aktualizovat a odstraňovat balíčky. Kdo k němu má přístup, může nasadit libovolný kód. Přístup proto vyžaduje silné heslo a málo oprávněných osob.
Obsahují šablony Contao kód PHP?
Klasické šablony s příponou .html5 jsou šablony PHP. Vlastní šablony ve složce templates proto mohou obsahovat PHP. Neznámé nebo nedávno změněné šablony byste měli umět vysvětlit.