# Bezpieczeństwo Contao po PHP2Shell: jak prawidłowo zabezpieczyć strony

> Bezpieczeństwo Contao po PHP2Shell: sprawdź PHP dla WWW i Contao Managera, skontroluj .env i szablony, chroń backend oraz dostęp do Managera.

Źródło: https://phpsos.de/pl/plattformen/contao/  
Stan: 25.10.2026  
Dostawca: PHP SOS, Pomoc awaryjna PHP i bezpieczeństwo serwerów. Natychmiastowa pomoc przez WhatsApp: https://wa.me/491736494914?text=Dzie%C5%84%20dobry%2C%20PHP%20SOS%2C%20potrzebujemy%20pomocy%20z%20naszym%20serwerem%20PHP.%20Firma%3A%20%E2%80%A6%20Strona%20internetowa%3A%20%E2%80%A6

**Krótko:** Bezpieczeństwo Contao zależy przy PHP2Shell od PHP serwera, a nie od Contao. Proszę zadbać o to, aby zarówno PHP sieciowe, jak i PHP wiersza poleceń Contao Managera były załatane. Następnie należy sprawdzić `.env`, własne szablony, folder `files` oraz dostępy do backendu i Managera.

## Contao i PHP2Shell: o co chodzi

Contao to CMS rozpowszechniony w krajach niemieckojęzycznych, oparty od wersji 4 na frameworku Symfony. Luki PHP CVE-2026-109618 i CVE-2026-109619 umożliwiają według zespołu PHP zdalne wykonanie złośliwego kodu bez logowania. Dotyczą samego PHP, a więc także każdej instalacji Contao na niezałatanym serwerze.

Wiele stron Contao należy do średnich firm, związków i gmin i jest prowadzonych przez agencje. Proszę dlatego najpierw ustalić, kto odpowiada za PHP: firma hostingowa, agencja czy własny dział IT.

Częsty błąd dotyczy trybu konserwacji. Contao potrafi zablokować stronę dla odwiedzających, lecz ta blokada jest sama dostarczana przez PHP. Każde żądanie nadal trafia więc do interpretera PHP. Przed PHP2Shell tryb konserwacji nie chroni. Kiedy BSI (niemiecki Federalny Urząd ds. Bezpieczeństwa w Technice Informatycznej) zaleca odłączenie serwerów WWW od sieci do czasu aktualizacji, ma na myśli blokadę na poziomie serwera lub hostingu, a nie ustawienie w CMS.

## Bezpieczeństwo Contao zaczyna się od dwóch wersji PHP

Contao używa PHP na dwa sposoby. Serwer WWW obsługuje wywołania stron zwykle przez PHP-FPM. Contao Manager i konsola Contao pracują dodatkowo z PHP wiersza poleceń, na przykład przy instalacjach, aktualizacjach i zadaniach cron. W pakietach hostingowych z kilkoma wersjami PHP mogą to być dwa różne programy.

Contao Manager pokazuje w konfiguracji serwera, jakiego pliku programu PHP używa. Wersję sieciową zobaczą Państwo w panelu hostingu. Naprawione wersje upstream to 8.5.12, 8.4.27, 8.3.36 i 8.2.35; backporty mogą nosić starsze numery. Obie ścieżki muszą być załatane, a wszystkie procesy zrestartowane. To, które wersje PHP obsługuje Państwa wersja Contao, można sprawdzić w wymaganiach systemowych na contao.org. Więcej o kontroli w artykule [Jak prawidłowo sprawdzić wersję PHP i stan poprawek](https://phpsos.de/pl/php2shell/php-version-pruefen/).

## Katalogi i pliki w Contao

| Miejsce | Zawartość | Punkt kontroli |
|---|---|---|
| `.env`, `.env.local` | Dane dostępowe do bazy danych, `APP_SECRET` | Po podejrzeniu odnowić |
| `config/config.yaml` | Konfiguracja instalacji | Nieoczekiwane zmiany |
| `public/` (starsze wersje `web/`) | Katalog główny dokumentów z `index.php`, plikiem Contao Managera, zasobami | Dodatkowe pliki PHP |
| `files/` | Zarządzanie plikami redaktorów | Brak plików PHP |
| `templates/` | Własne szablony, klasycznie jako `.html5` z PHP | Nieznane lub zmienione szablony |
| `system/config/localconfig.php` | Starsze ustawienia | Dopisany kod |
| `var/` | Pamięć podręczna i logi | Zabezpieczyć logi, wygenerować pamięć podręczną od nowa |

Właśnie `templates/` bywa niedoceniany: klasyczne szablony Contao z rozszerzeniem `.html5` to pliki PHP. Dopisane polecenie we własnym szablonie wykonuje się przy każdym wywołaniu strony i przetrwa aktualizacje Contao.

Bezpieczne pierwsze kontrole:

```bash
# Pliki PHP w zarządzaniu plikami
find files -type f -name "*.php"
# Szablony zmienione od 17.10.2026
find templates -type f -newermt "2026-10-17"
# Sprawdzenie dostępnych poleceń Contao i zależności
vendor/bin/contao-console list contao
composer audit
```

> **Ważne:**
> Contao Manager może instalować pakiety, a tym samym wprowadzać na serwer dowolny kod. W razie podejrzenia proszę sprawdzić jego konta użytkowników, nadać nowe hasła i usunąć dostępy byłych dostawców usług.

## Backend, Manager i rozszerzenia

Backend znajduje się pod `/contao`. Proszę sprawdzić użytkowników z uprawnieniami administratora oraz grupy użytkowników z daleko idącymi prawami, na przykład do zarządzania plikami, szablonów lub zarządzania użytkownikami. Contao ma uwierzytelnianie dwuskładnikowe; proszę z niego korzystać dla wszystkich kont z podwyższonymi uprawnieniami.

Rozszerzenia instaluje się przez Composera lub Contao Managera. Każde wnosi kod PHP, a starsze rozszerzenia bez opieki hamują aktualizacje PHP. Na serwerach z kilkoma stronami każda instalacja powinna działać osobno, aby incydent nie przenosił się na sąsiednie strony; więcej na ten temat w artykule [open_basedir i izolacja każdej strony](https://phpsos.de/pl/ratgeber/open-basedir/).

## Co potrafi aktualizacja Contao, a czego nie

Aktualizacja Contao przez Managera lub Composera zamyka znane błędy w Contao i rozszerzeniach. Nie łata PHP i nie restartuje ani PHP-FPM, ani procesów w tle. Własne szablony, pliki w `files/` i obce konta użytkowników pozostają bez zmian. Po zmianie głównej wersji PHP należy wygenerować pamięć podręczną od nowa i sprawdzić stronę w środowisku testowym.

W przypadku stron z wieloma redaktorami po zainstalowaniu poprawki warto przyjrzeć się uprawnieniom w backendzie. Kto może edytować szablony, może zapisać kod PHP w klasycznych szablonach `.html5`. To uprawnienie powinno trafić tylko do niewielu, technicznie biegłych osób. To samo dotyczy dostępu do zarządzania plikami z prawem przesyłania do publicznie dostępnych folderów.

## Jak konkretnie pomaga PHP SOS?

- Ustalamy PHP sieciowe i CLI Państwa instalacji Contao oraz prosimy o potwierdzenie poprawki i restartu.
- Zabezpieczamy logi, pliki i bazę danych, zanim cokolwiek zmienimy.
- Sprawdzamy szablony, `files/`, katalog główny dokumentów oraz konta backendu i Managera.
- Zmianę PHP z dokumentacją przejmuje na życzenie nasza [usługa łatania PHP](https://phpsos.de/pl/leistungen/php-patch-service/), uzgodniona z Państwa agencją.


## Częste pytania

**Czy Contao jest dotknięte przez PHP2Shell?**  
Samo Contao nie ma nowej luki. Jeśli jednak strona działa na niezałatanym PHP, jest podatna na atak jak każda aplikacja PHP. Aktualizacja Contao nie zamyka luki w PHP.

**Dlaczego Contao Manager ma znaczenie dla bezpieczeństwa?**  
Contao Manager potrafi instalować, aktualizować i usuwać pakiety. Kto ma do niego dostęp, może wgrać dowolny kod. Dostęp wymaga więc silnego hasła i niewielu uprawnionych osób.

**Czy szablony Contao zawierają kod PHP?**  
Klasyczne szablony z rozszerzeniem .html5 są szablonami PHP. Własne szablony w folderze templates mogą więc zawierać PHP. Nieznane lub niedawno zmienione szablony powinni Państwo umieć wyjaśnić.

## Źródła

- [php.net: komunikaty bezpieczeństwa](https://www.php.net/)
- [Contao](https://contao.org/)
- [Obsługiwane wersje PHP](https://www.php.net/supported-versions.php)
- [OWASP Cheat Sheets](https://cheatsheetseries.owasp.org/)
