Εν συντομία: Το PHP2Shell είναι το όνομα για δύο κρίσιμες ευπάθειες ασφαλείας στην ίδια την PHP, τα CVE-2026-109618 και CVE-2026-109619. Μέσω αυτών οι επιτιθέμενοι μπορούν να εκτελέσουν κακόβουλο κώδικα σε ευάλωτους διακομιστές ιστού χωρίς σύνδεση. Λύση προσφέρει μόνο η ενημέρωση σε διορθωμένη έκδοση PHP με επακόλουθη επανεκκίνηση όλων των διεργασιών PHP.
Τι είναι το PHP2Shell;
Η PHP είναι η γλώσσα προγραμματισμού πάνω στην οποία εκτελείται ένα μεγάλο μέρος όλων των ιστοτόπων: εταιρικές σελίδες με WordPress ή TYPO3, ηλεκτρονικά καταστήματα με Shopware ή WooCommerce, εσωτερικές πύλες και ιδιόκτητες εφαρμογές. Στις 21 Οκτωβρίου 2026 το έργο PHP δημοσίευσε ενημερώσεις ασφαλείας για δύο ευπάθειες που έγιναν γνωστές με το όνομα PHP2Shell.
Και οι δύο ευπάθειες έχουν βαθμολογία CVSS v4.0 9,2, δηλαδή κρίσιμες. Η συνέπεια είναι και στις δύο περιπτώσεις η ίδια: εκτέλεση κακόβουλου κώδικα εξ αποστάσεως, χωρίς να χρειάζεται να συνδεθεί ο επιτιθέμενος. Οι ειδικοί μιλούν για «unauthenticated Remote Code Execution». Όποιος μπορεί να εκτελέσει κώδικα στον διακομιστή, μπορεί στη χειρότερη περίπτωση να διαβάσει δεδομένα, να εγκαταστήσει κερκόπορτες ή να χρησιμοποιήσει τον διακομιστή για περαιτέρω επιθέσεις.
Σημαντικό για την κατανόηση: η ευπάθεια δεν βρίσκεται σε ένα συγκεκριμένο CMS ή plugin, αλλά στην PHP. Μια ενημέρωση του WordPress, του Shopware ή του TYPO3 δεν την κλείνει γι' αυτό.
Γιατί είναι τόσο σοβαρή η ευπάθεια;
Τρία σημεία κάνουν το PHP2Shell ιδιαίτερα ευαίσθητο από τη σκοπιά των αρχών ασφαλείας:
- Εύρος: Επηρεάζονται οι συνήθεις τρόποι λειτουργίας της PHP, δηλαδή PHP-FPM, Apache με mod_php, php-cgi, FrankenPHP και LiteSpeed. Η Palo Alto Networks (Unit 42) μέτρησε περισσότερες από 22,6 εκατομμύρια εκτεθειμένες, δυνητικά ευάλωτες εγκαταστάσεις.
- Δεν απαιτείται σύνδεση: Ο επιτιθέμενος δεν χρειάζεται ούτε κωδικό ούτε λογαριασμό χρήστη.
- Πρώιμο σημείο: Στον Apache με mod_php, σύμφωνα με την ομάδα της PHP, επιδείχθηκε exploit προτού καν εκτελεστεί κώδικας της εφαρμογής. Οι λειτουργίες προστασίας εντός του ιστότοπου δεν ενεργοποιούνται τότε.
Το BSI κήρυξε επίπεδο προειδοποίησης 3 (πορτοκαλί). Συνιστά άμεση ενημέρωση και, όταν αυτή δεν είναι άμεσα εφικτή, προσωρινή αποσύνδεση των επηρεαζόμενων διακομιστών ιστού από το δίκτυο.
Ποιοι διακομιστές επηρεάζονται από το PHP2Shell;
Οι ευπάθειες έχουν διορθωθεί στις PHP 8.5.12, 8.4.27, 8.3.36 και 8.2.35. Παλαιότερες εκδόσεις αυτών των κλάδων επηρεάζονται. Για την PHP 8.1 και παλαιότερες δεν υπάρχουν πλέον επίσημες ενημερώσεις· σύμφωνα με τον ειδικό τύπο επηρεάζονται σχεδόν όλες οι εκδόσεις μέχρι και την PHP 5.4. Την πλήρη επισκόπηση θα βρείτε στη σελίδα Ποιες εκδόσεις PHP επηρεάζονται;.
Μια ιδιαιτερότητα: οι διανομές Linux και οι πάροχοι φιλοξενίας εφαρμόζουν τις διορθώσεις εν μέρει ως backport. Τότε, για παράδειγμα, το Plesk εξακολουθεί να δείχνει 8.2.34, παρότι το σφάλμα έχει διορθωθεί. Καθοριστικά είναι το επίπεδο των πακέτων και η επιβεβαίωση του παρόχου. Πώς θα το ελέγξετε, εξηγούμε στο Σωστός έλεγχος έκδοσης PHP και επιπέδου patch.
Τι είναι τεκμηριωμένο και τι παραμένει ανοιχτό;
Τεκμηριωμένα είναι οι δύο αριθμοί CVE, οι διορθωμένες εκδόσεις και τα προσωρινά μέτρα που δημοσίευσε το php.net. Στις 23 Οκτωβρίου προστέθηκε μια υπόδειξη για μια ακόμη ευπάθεια, το CVE-2026-115560, που ενεργοποιείται μόνο σε μια ασυνήθιστη διαμόρφωση.
Πιθανό είναι ότι οι επιτιθέμενοι εξακολουθούν να αναζητούν ενεργά διακομιστές χωρίς patch. Σύμφωνα με δημοσιεύματα παρατηρήθηκε μια πρώτη απόπειρα επίθεσης ήδη στις 17 Οκτωβρίου, δηλαδή πριν από τη δημοσίευση των patches. Η Cloudflare ανέφερε απόπειρες επίθεσης και διέθεσε κανόνες προστασίας, επισημαίνει όμως ότι οι κανόνες με βάση μόνο τα δεδομένα του αιτήματος δεν αρκούν.
Ανοιχτό είναι πόσοι διακομιστές έχουν ήδη δεχθεί επιτυχή επίθεση. Επιβεβαιωμένες επιτυχείς επιθέσεις σε μεγάλη κλίμακα δεν ήταν αρχικά γνωστές σύμφωνα με το BSI. Δεν υπάρχουν δημοσιευμένα, επιβεβαιωμένα Indicators of Compromise. Το αν ένας διακομιστής επηρεάστηκε μπορεί γι' αυτό να εκτιμηθεί μόνο μέσω ανάλυσης συμπεριφοράς. Τη χρονική εξέλιξη συνοψίζει η Χρονολόγηση από 17 έως 25 Οκτωβρίου.
Τι πρέπει να κάνουν τώρα οι εταιρείες
- Διευκρινίστε ποιος είναι αρμόδιος: δικός σας διακομιστής, διαχειριζόμενος διακομιστής ή πάροχος φιλοξενίας.
- Ενημερώστε την PHP σε διορθωμένη έκδοση ή σε επιβεβαιωμένο backport.
- Επανεκκινήστε όλες τις διεργασίες PHP. Τα νέα αρχεία από μόνα τους δεν αρκούν, όσο παλιές διεργασίες εκτελούνται στη μνήμη.
- Διασώστε τα logs, και μάλιστα από τις 20 Οκτωβρίου. Ο ειδικός τύπος συνιστά να φυλάσσονται αυτά τα δεδομένα.
- Ελέγξτε για ίχνη. Ένα patch δεν αφαιρεί κακόβουλο λογισμικό που έχει ήδη εισαχθεί και δεν αποδεικνύει ότι δεν συνέβη τίποτα νωρίτερα. Υποδείξεις δίνει η σελίδα Έχω ήδη παραβιαστεί;.
Μια ενημέρωση κλείνει την πόρτα, αλλά δεν συγυρίζει. Αν ο διακομιστής σας ήταν προσβάσιμος μεταξύ 17 Οκτωβρίου και του patch, ένας έλεγχος για ίχνη είναι υποχρέωση και όχι πολυτέλεια.
Πώς βοηθά συγκεκριμένα η PHP SOS;
Με την άμεση βοήθεια για το PHP2Shell αναλαμβάνουμε τα βήματα που πολλές εταιρείες δεν μπορούν να καλύψουν εσωτερικά σε σύντομο χρόνο:
- Καταγραφή: Εξακριβώνουμε την έκδοση PHP, τον τρόπο λειτουργίας και το επίπεδο πακέτων κάθε επηρεαζόμενου διακομιστή.
- Patch ή μετάβαση: Εφαρμόζουμε την ενημέρωση ή, όπου αυτό δεν είναι ακόμη εφικτό, ορίζουμε τα προσωρινά μέτρα του php.net και διευκρινίζουμε αν ο διακομιστής πρέπει να αποσυνδεθεί προσωρινά από το δίκτυο.
- Επανεκκίνηση και απόδειξη: Επανεκκινούμε όλες τις διεργασίες PHP και τεκμηριώνουμε την κατάσταση πριν και μετά.
- Έλεγχος ιχνών: Διασώζουμε logs από τις 20 Οκτωβρίου και ελέγχουμε για ανωμαλίες, μέχρι να ολοκληρωθεί και να τεκμηριωθεί το περιστατικό.
Συχνές ερωτήσεις
Είναι το PHP2Shell ευπάθεια του WordPress;
Όχι. Οι ευπάθειες βρίσκονται στην PHP, δηλαδή στη γλώσσα προγραμματισμού πάνω στην οποία εκτελούνται το WordPress, το Shopware, το TYPO3 και πολλά άλλα συστήματα. Μια ενημέρωση του CMS δεν τις κλείνει γι' αυτό. Αποφασιστική είναι η κατάσταση της PHP στον διακομιστή.
Πρέπει να κάνω κάτι ο ίδιος ως πελάτης ενός παρόχου φιλοξενίας;
Στο shared hosting την ενημέρωση της PHP την εφαρμόζει κατά κανόνα ο πάροχος. Θα πρέπει παρ' όλα αυτά να ζητήσετε γραπτή επιβεβαίωση ότι η έκδοση PHP που χρησιμοποιείτε έχει λάβει patch και έχει επανεκκινηθεί. Το αν συνέβη κάτι πριν από το patch, δεν το απαντά η ενημέρωση.
Από πού προέρχεται το όνομα PHP2Shell;
Το όνομα περιγράφει τη συνέπεια: μέσω της PHP ένας επιτιθέμενος μπορεί, στη χειρότερη περίπτωση, να αποκτήσει μια γραμμή εντολών, δηλαδή ένα shell, στον διακομιστή. Επίσημες ονομασίες είναι οι αριθμοί CVE, CVE-2026-109618 και CVE-2026-109619.
Έχει δεχθεί ήδη επίθεση ο ιστότοπός μου, αν τέθηκε εκτός σύνδεσης;
Όχι απαραίτητα. Ορισμένοι πάροχοι έθεσαν ιστοτόπους εκτός δικτύου προληπτικά, όπως συνιστά το BSI (η γερμανική Ομοσπονδιακή Υπηρεσία Ασφάλειας Πληροφοριών) όταν μια ενημέρωση δεν είναι άμεσα εφικτή. Πρόκειται για μέτρο προστασίας και όχι για απόδειξη επίθεσης.