# Ασφάλεια Contao μετά το PHP2Shell: σωστή θωράκιση ιστοτόπων

> Ασφάλεια Contao μετά το PHP2Shell: έλεγχος PHP για web και Contao Manager, έλεγχος .env και templates, προστασία backend και πρόσβασης στον Manager.

Πηγή: https://phpsos.de/el/plattformen/contao/  
Ημερομηνία: 25/10/2026  
Πάροχος: PHP SOS, Επείγουσα βοήθεια PHP και ασφάλεια διακομιστών. Άμεση βοήθεια μέσω WhatsApp: https://wa.me/491736494914?text=%CE%93%CE%B5%CE%B9%CE%B1%20%CF%83%CE%B1%CF%82%2C%20PHP%20SOS%2C%20%CF%87%CF%81%CE%B5%CE%B9%CE%B1%CE%B6%CF%8C%CE%BC%CE%B1%CF%83%CF%84%CE%B5%20%CE%B2%CE%BF%CE%AE%CE%B8%CE%B5%CE%B9%CE%B1%20%CE%BC%CE%B5%20%CF%84%CE%BF%CE%BD%20%CE%B4%CE%B9%CE%B1%CE%BA%CE%BF%CE%BC%CE%B9%CF%83%CF%84%CE%AE%20PHP%20%CE%BC%CE%B1%CF%82.%20%CE%95%CF%84%CE%B1%CE%B9%CF%81%CE%B5%CE%AF%CE%B1%3A%20%E2%80%A6%20%CE%99%CF%83%CF%84%CF%8C%CF%84%CE%BF%CF%80%CE%BF%CF%82%3A%20%E2%80%A6

**Εν συντομία:** Η ασφάλεια του Contao εξαρτάται στο PHP2Shell από την PHP του διακομιστή, όχι από το Contao. Φροντίστε να έχουν patch τόσο η PHP του ιστού όσο και η PHP γραμμής εντολών του Contao Manager. Έπειτα ελέγξτε το `.env`, τα δικά σας templates, τον φάκελο `files` και τις προσβάσεις στο backend και στον Manager.

## Contao και PHP2Shell: περί τίνος πρόκειται

Το Contao είναι ένα CMS διαδεδομένο στον γερμανόφωνο χώρο, το οποίο από την έκδοση 4 βασίζεται στο framework Symfony. Οι ευπάθειες PHP CVE-2026-109618 και CVE-2026-109619 επιτρέπουν, σύμφωνα με την ομάδα της PHP, εξ αποστάσεως εκτέλεση κακόβουλου κώδικα χωρίς σύνδεση. Αφορούν την ίδια την PHP, άρα και κάθε εγκατάσταση Contao σε διακομιστή χωρίς patch.

Πολλοί ιστότοποι Contao ανήκουν σε μεσαίες επιχειρήσεις, ενώσεις και δήμους και τους φροντίζουν πρακτορεία. Διευκρινίστε γι' αυτό πρώτα ποιος είναι αρμόδιος για την PHP: ο πάροχος φιλοξενίας, το πρακτορείο ή η δική σας ομάδα IT.

Μια συχνή παρανόηση αφορά τη λειτουργία συντήρησης. Το Contao μπορεί να κλειδώσει έναν ιστότοπο για τους επισκέπτες, όμως αυτό το κλείδωμα το παραδίδει το ίδιο η PHP. Κάθε αίτημα συνεχίζει επομένως να φτάνει στον διερμηνέα PHP. Η λειτουργία συντήρησης δεν προστατεύει συνεπώς από το PHP2Shell. Όταν το BSI (Ομοσπονδιακή Υπηρεσία Ασφάλειας Πληροφοριών της Γερμανίας) συνιστά να αποσυνδεθούν οι διακομιστές ιστού από το δίκτυο μέχρι την ενημέρωση, εννοεί αποκλεισμό σε επίπεδο διακομιστή ή φιλοξενίας, όχι μια ρύθμιση στο CMS.

## Η ασφάλεια του Contao ξεκινά με δύο εκδόσεις PHP

Το Contao χρησιμοποιεί την PHP με δύο τρόπους. Ο διακομιστής ιστού επεξεργάζεται τις κλήσεις σελίδων συνήθως μέσω PHP-FPM. Ο Contao Manager και η κονσόλα του Contao εργάζονται επιπλέον με μια PHP γραμμής εντολών, για παράδειγμα για εγκαταστάσεις, ενημερώσεις και cronjobs. Σε πακέτα φιλοξενίας με περισσότερες εκδόσεις PHP αυτά μπορεί να είναι δύο διαφορετικά προγράμματα.

Ο Contao Manager δείχνει στη διαμόρφωση του διακομιστή ποιο εκτελέσιμο PHP χρησιμοποιεί. Την έκδοση ιστού τη βλέπετε στο πάνελ φιλοξενίας. Οι διορθωμένες εκδόσεις upstream είναι οι 8.5.12, 8.4.27, 8.3.36 και 8.2.35· τα backports μπορεί να φέρουν παλαιότερους αριθμούς. Και οι δύο δρόμοι πρέπει να έχουν patch και όλες οι διεργασίες να έχουν επανεκκινηθεί. Ποιες εκδόσεις PHP υποστηρίζει η έκδοση του Contao σας, ελέγξτε σύμφωνα με τις απαιτήσεις συστήματος στο contao.org. Περισσότερα για τον έλεγχο στο [Σωστός έλεγχος της έκδοσης PHP και του επιπέδου patch](https://phpsos.de/el/php2shell/php-version-pruefen/).

## Φάκελοι και αρχεία στο Contao

| Θέση | Περιεχόμενο | Σημείο ελέγχου |
|---|---|---|
| `.env`, `.env.local` | Στοιχεία πρόσβασης στη βάση δεδομένων, `APP_SECRET` | Ανανέωση μετά από υποψία |
| `config/config.yaml` | Διαμόρφωση της εγκατάστασης | Απρόσμενες αλλαγές |
| `public/` (παλαιότερες εκδόσεις `web/`) | Ρίζα εγγράφων με `index.php`, αρχείο Contao Manager, assets | Επιπλέον αρχεία PHP |
| `files/` | Διαχείριση αρχείων των συντακτών | Κανένα αρχείο PHP |
| `templates/` | Δικά σας templates, κλασικά ως `.html5` με PHP | Άγνωστα ή αλλαγμένα templates |
| `system/config/localconfig.php` | Παλαιότερες ρυθμίσεις | Εισαγόμενος κώδικας |
| `var/` | Cache και logs | Διάσωση logs, νέα δημιουργία cache |

Ειδικά τα `templates/` υποτιμώνται: τα κλασικά templates του Contao με την κατάληξη `.html5` είναι αρχεία PHP. Μια εντολή που έχει παρεμβληθεί σε ένα δικό σας template εκτελείται σε κάθε κλήση σελίδας και επιβιώνει των ενημερώσεων του Contao.

Ακίνδυνοι πρώτοι έλεγχοι:

```bash
# Αρχεία PHP στη διαχείριση αρχείων
find files -type f -name "*.php"
# Templates που άλλαξαν από τις 17/10/2026
find templates -type f -newermt "2026-10-17"
# Έλεγχος των διαθέσιμων εντολών Contao και των εξαρτήσεων
vendor/bin/contao-console list contao
composer audit
```

> **Σημαντικό:**
> Ο Contao Manager μπορεί να εγκαθιστά πακέτα και έτσι να φέρνει οποιονδήποτε κώδικα στον διακομιστή. Ελέγξτε μετά από υποψία τους λογαριασμούς χρηστών του, ορίστε νέους κωδικούς και αφαιρέστε προσβάσεις πρώην παρόχων υπηρεσιών.

## Backend, Manager και επεκτάσεις

Το backend βρίσκεται στο `/contao`. Ελέγξτε τους χρήστες με δικαιώματα διαχειριστή και τις ομάδες χρηστών με εκτεταμένα δικαιώματα, για παράδειγμα στη διαχείριση αρχείων, στα templates ή στη διαχείριση χρηστών. Το Contao διαθέτει σύνδεση δύο παραγόντων· χρησιμοποιήστε την για όλους τους λογαριασμούς με αυξημένα δικαιώματα.

Οι επεκτάσεις εγκαθίστανται με Composer ή μέσω του Contao Manager. Καθεμία φέρνει κώδικα PHP και οι παλαιότερες επεκτάσεις χωρίς συντήρηση καθυστερούν τις αναβαθμίσεις PHP. Σε διακομιστές με περισσότερους ιστοτόπους κάθε εγκατάσταση πρέπει να εκτελείται χωριστά, ώστε ένα περιστατικό να μην περάσει στους γειτονικούς ιστότοπους· περισσότερα στο [open_basedir και απομόνωση ανά ιστότοπο](https://phpsos.de/el/ratgeber/open-basedir/).

## Τι μπορεί μια ενημέρωση του Contao και τι όχι

Μια ενημέρωση του Contao μέσω του Manager ή του Composer κλείνει γνωστά σφάλματα στο Contao και στις επεκτάσεις. Δεν κάνει patch στην PHP και δεν επανεκκινεί ούτε το PHP-FPM ούτε διεργασίες παρασκηνίου. Τα δικά σας templates, τα αρχεία στο `files/` και οι ξένοι λογαριασμοί χρηστών παραμένουν αμετάβλητα. Μετά από αλλαγή της κύριας έκδοσης PHP πρέπει να δημιουργηθεί ξανά η cache και να ελεγχθεί ο ιστότοπος σε περιβάλλον δοκιμών.

Σε ιστοτόπους με πολλούς συντάκτες αξίζει μετά το patch μια ματιά στα δικαιώματα στο backend. Όποιος επιτρέπεται να επεξεργάζεται templates μπορεί να τοποθετήσει κώδικα PHP στα κλασικά templates `.html5`. Αυτό το δικαίωμα πρέπει να βρίσκεται μόνο στα χέρια λίγων, τεχνικά εξοικειωμένων ατόμων. Το ίδιο ισχύει για την πρόσβαση στη διαχείριση αρχείων με δικαιώματα upload σε δημόσια προσβάσιμους φακέλους.

## Πώς βοηθά συγκεκριμένα η PHP SOS;

- Διαπιστώνουμε την PHP ιστού και CLI της εγκατάστασης Contao σας και ζητάμε επιβεβαίωση του patch και της επανεκκίνησης.
- Διασώζουμε logs, αρχεία και βάση δεδομένων προτού αλλάξουμε οτιδήποτε.
- Ελέγχουμε templates, `files/`, τη ρίζα εγγράφων, τους λογαριασμούς backend και Manager.
- Την αλλαγή της PHP με αποδεικτικά την αναλαμβάνει, αν το επιθυμείτε, η [υπηρεσία patch PHP](https://phpsos.de/el/leistungen/php-patch-service/) μας, σε συντονισμό με το πρακτορείο σας.


## Συχνές ερωτήσεις

**Επηρεάζεται το Contao από το PHP2Shell;**  
Το ίδιο το Contao δεν έχει νέα ευπάθεια. Αν ο ιστότοπος όμως εκτελείται σε PHP χωρίς patch, είναι ευάλωτος όπως κάθε εφαρμογή PHP. Μια ενημέρωση του Contao δεν κλείνει την ευπάθεια της PHP.

**Γιατί είναι σημαντικός για την ασφάλεια ο Contao Manager;**  
Ο Contao Manager μπορεί να εγκαθιστά, να ενημερώνει και να αφαιρεί πακέτα. Όποιος έχει πρόσβαση σε αυτόν μπορεί να εισαγάγει οποιονδήποτε κώδικα. Η πρόσβαση χρειάζεται γι' αυτό ισχυρό κωδικό και λίγους εξουσιοδοτημένους.

**Περιέχουν τα templates του Contao κώδικα PHP;**  
Τα κλασικά templates με την κατάληξη .html5 είναι templates PHP. Τα δικά σας templates στον φάκελο templates μπορούν επομένως να περιέχουν PHP. Άγνωστα ή πρόσφατα αλλαγμένα templates πρέπει να μπορείτε να τα εξηγήσετε.

## Πηγές

- [php.net: Ανακοινώσεις ασφαλείας](https://www.php.net/)
- [Contao](https://contao.org/)
- [Υποστηριζόμενες εκδόσεις PHP](https://www.php.net/supported-versions.php)
- [OWASP Cheat Sheets](https://cheatsheetseries.owasp.org/)
