PHP2Shell: κρίσιμα κενά απειλούν εκατομμύρια sites

Τα περισσότερα sites που ανοίγεις καθημερινά έχουν κάτι κοινό, ακόμα κι αν δεν το βλέπεις: από πίσω τρέχει PHP. Με βάση τα στοιχεία της W3Techs, η γλώσσα χρησιμοποιείται σε σχεδόν 7 στα 10 sites με γνωστή server-side τεχνολογία, και πάνω της στηρίζονται το WordPress, το Drupal, το Joomla και το Magento. Γι’ αυτό τα δύο κενά ασφαλείας που αποκαλύφθηκαν αυτή την εβδομάδα, με το όνομα PHP2Shell, δεν αφορούν μόνο τους developers.

Η ομάδα ασφαλείας της PHP κυκλοφόρησε έκτακτα patches στις 21 Οκτωβρίου για δύο ευπάθειες, τις CVE-2026-109618 και CVE-2026-109619, με βαθμολογία σοβαρότητας 9,2 στα 10. Και οι δύο επιτρέπουν σε έναν επιτιθέμενο να τρέξει δικό του κώδικα στον server. Χωρίς λογαριασμό, χωρίς κωδικό.

Ένα αίτημα είναι αρκετό

Το πρόβλημα δεν βρίσκεται σε κάποιο plugin, αλλά στην ίδια τη μηχανή της PHP και στον τρόπο που διαχειρίζεται τη μνήμη. Το ένα κενό εμφανίζεται όταν η PHP ξεμένει από μνήμη στη μέση ενός αιτήματος. Το άλλο, όταν δεδομένα από ένα προηγούμενο αίτημα μένουν πίσω σε μνήμη που έχει ήδη απελευθερωθεί.

Στην πράξη, ένα και μόνο αίτημα μπορεί να ενεργοποιήσει την επίθεση πριν καν τρέξει ο κώδικας του site. Δεν έχει σημασία αν το WordPress σου είναι ενημερωμένο ή αν έχεις μια απλή σελίδα «Hello World». Αν η έκδοση της PHP είναι ευάλωτη, ο server είναι εκτεθειμένος. Οι ερευνητές έδειξαν επιθέσεις σε συγκεκριμένες εκδόσεις των WordPress, Drupal, Joomla και Magento, αλλά και τρόπο να διαρρεύσουν από τη μνήμη κωδικοί, tokens και API keys.

Το ενοχλητικό είναι ότι ο προβληματικός κώδικας υπάρχει από την εποχή της PHP 5.4, δηλαδή από το 2012. Τα κενά τα εντόπισαν ερευνητές της Calif, της Wiz και της OpenAI, με τη βοήθεια μοντέλων AI που διευκόλυναν αισθητά το πιο δύσκολο κομμάτι: ένα λειτουργικό exploit.

Οι επιθέσεις ξεκίνησαν πριν από την ανακοίνωση

Η αποκάλυψη ήταν προγραμματισμένη για τις 22 Οκτωβρίου. Στις 20 όμως, τα αναγνωριστικά των ευπαθειών εμφανίστηκαν σε ένα δημοφιλές forum, οπότε η PHP έβγαλε τα patches μία μέρα νωρίτερα. Ούτε αυτό έφτανε. Τα honeypots της Amazon είχαν καταγράψει την πρώτη απόπειρα εκμετάλλευσης ήδη από τις 17 Οκτωβρίου, τέσσερις μέρες πριν από τη δημοσιοποίηση. Πώς έφτασαν οι πληροφορίες στον επιτιθέμενο, κανείς δεν ξέρει.

Από τις 21 Οκτωβρίου οι απόπειρες πλήθυναν, με πολλούς διαφορετικούς δράστες να δοκιμάζουν την τύχη τους. Οι εκτιμήσεις μιλούν για πάνω από 1,3 εκατομμύρια εκτεθειμένους servers και ο ερευνητής ασφαλείας Kevin Beaumont το χαρακτήρισε ένα από τα μεγαλύτερα κενά των τελευταίων ετών. Ευάλωτα βρέθηκαν ακόμα και τα firewalls της Palo Alto Networks, αφού και εκεί η PHP δουλεύει στο παρασκήνιο.

Τι πρέπει να κάνεις τώρα

Αν έχεις δικό σου site, η λύση είναι μία: αναβάθμιση σε PHP 8.5.12, 8.4.27, 8.3.36 ή 8.2.35. Σε shared hosting, έλεγξε την έκδοση από το control panel ή ρώτα τον πάροχο αν έχει περάσει τις διορθώσεις, γιατί οι μεγάλες διανομές Linux πήραν τα patches από νωρίς. Για τις 7.4 έως 8.1 υπάρχουν μόνο διορθώσεις στον πηγαίο κώδικα, ενώ οι παλιότερες μένουν ακάλυπτες. Μέχρι να γίνει η αναβάθμιση, η Cloudflare έχει ενεργοποιήσει κανόνες WAF για τις γνωστές επιθέσεις σε όλους τους πελάτες της, ακόμα και στο δωρεάν πλάνο, ως προσωρινή λύση.

Το πραγματικό πρόβλημα είναι όλα εκείνα τα ξεχασμένα sites, τα παλιά forums και οι συσκευές με ενσωματωμένη PHP που κανείς δεν πρόκειται να ενημερώσει. Και αν το AI βοήθησε να βρεθούν δύο τέτοια κενά σε κώδικα που υπάρχει από το 2012, δύσκολα θα είναι τα τελευταία.

Related news