Τρέχουσα κατάσταση: PHP2Shell. Δύο κρίσιμες ευπάθειες της PHP (CVSS 9.2) επιτρέπουν κακόβουλο κώδικα χωρίς σύνδεση. Patches από τις 21/10/2026.Τι πρέπει να γίνει τώρα →

Γιατί το php -v δείχνει τον ίδιο αριθμό μετά την ενημέρωση

Η ενημέρωση έτρεξε, αλλά το php -v αναφέρει την παλιά έκδοση. Συνήθως είναι backport και όχι σφάλμα. Έτσι ξεχωρίζετε το αβλαβές από τα πραγματικά προβλήματα.

Ημερομηνία 5 λεπτά ανάγνωσηςΦιλοξενία και διανομές

Εν ολίγοις: Όταν το php -v δείχνει μετά την ενημέρωση την ίδια έκδοση, οφείλεται συνήθως σε backport: η διανομή ενσωματώνει μόνο τη διόρθωση ασφαλείας στην υπάρχουσα έκδοση PHP της και ο αριθμός μένει ίδιος. Η Ubuntu 24.04 αναφέρει έτσι ακόμη 8.3.6, παρόλο που το πακέτο είναι διορθωμένο ενάντια στο PHP2Shell. Διευκρινίστε το ζήτημα μέσω του επιπέδου πακέτου και του changelog, και ελέγξτε επιπλέον αν ο ιστότοπος τρέχει πράγματι με τον νέο κώδικα.

Μια τυπική στιγμή μετά το PHP2Shell

Ο διαχειριστής εγκατέστησε την ενημέρωση, όλα χωρίς σφάλμα. Για έλεγχο πληκτρολογεί php -v και βλέπει την ίδια έκδοση με πριν. Δεν λειτούργησε η ενημέρωση; Είναι ο διακομιστής ακόμη ανοιχτός; Αυτό το ερώτημα ανήκει στα συχνότερα από τις 21 Οκτωβρίου 2026.

Τα καλά νέα: στις περισσότερες περιπτώσεις όλα είναι εντάξει. Τα κακά: υπάρχουν και περιπτώσεις όπου ο ίδιος αριθμός δείχνει πράγματι πρόβλημα. Το άρθρο αυτό βοηθά να ξεχωρίσετε τα δύο.

Γιατί οι διανομές δεν αλλάζουν τον αριθμό

Οι επιχειρησιακές διανομές και οι διανομές LTS υπόσχονται σταθερότητα. Μέσα σε μια έκδοση η συμπεριφορά και οι διεπαφές πρέπει κατά το δυνατόν να μην αλλάζουν. Ένα άλμα από την PHP 8.3.6 στην 8.3.36 θα έφερνε όμως πολυάριθμες διορθώσεις σφαλμάτων και μικρές αλλαγές συμπεριφοράς, που θα μπορούσαν να ενοχλήσουν εφαρμογές.

Γι' αυτό πολλοί συντηρητές πακέτων ενσωματώνουν μόνο τη συγκεκριμένη διόρθωση ασφαλείας στην υπάρχουσα έκδοσή τους. Αυτή η διαδικασία ονομάζεται backport. Η έκδοση upstream, που η ίδια η PHP αναφέρει μέσω php -v, μένει ίδια. Αυτό που αλλάζει είναι το επίπεδο του πακέτου, που ορίζει η διανομή.

Στο παράδειγμα της Ubuntu 24.04 μοιάζει έτσι: η PHP αναφέρει 8.3.6. Το διορθωμένο επίπεδο πακέτου είναι όμως σύμφωνα με το USN-8948-1 8.3.6-0ubuntu0.24.04.13. Μετράει το πίσω μέρος. Το Debian αποφάσισε στο PHP2Shell διαφορετικά και παρέδωσε για τα bookworm και trixie τις νέες εκδόσεις upstream 8.2.35 και 8.4.27. Την επισκόπηση ανά έκδοση θα βρείτε στο άρθρο Debian και Ubuntu: έχει patch το πακέτο PHP μου;.

Αξίζει να αναλύσετε μία φορά μια τέτοια έκδοση πακέτου. Στο παράδειγμα 8.3.6-0ubuntu0.24.04.13: το τμήμα πριν από την παύλα είναι η έκδοση upstream, δηλαδή ό,τι αναφέρει η ίδια η PHP. Ακολουθεί η αναθεώρηση της διανομής. Το ubuntu0.24.04 παραπέμπει στην έκδοση, ο τελευταίος αριθμός μετρά τις αναθεωρήσεις. Κάθε διόρθωση ασφαλείας αυξάνει αυτόν τον αριθμό. Στο Ubuntu Pro εμφανίζεται επιπλέον μια κατάληξη όπως +esm5, στις ενημερώσεις ασφαλείας του Debian μια όπως ~deb12u1. Όποιος μπορεί να διαβάσει αυτά τα τμήματα, αναγνωρίζει με μια ματιά αν ένα πακέτο άλλαξε μετά από ανακοίνωση ασφαλείας.

Πού εμφανίζεται παντού ο παλιός αριθμός

Ο αμετάβλητος αριθμός εμφανίζεται όχι μόνο στο php -v. Βρίσκεται και σε σημεία που είναι ορατά από έξω ή αξιολογούνται από εργαλεία:

Σημείο Τι αναγράφεται εκεί Συνέπεια
php -v και php -i έκδοση upstream, ημερομηνία build οι διαχειριστές αμφιβάλλουν για την ενημέρωση
σελίδα phpinfo έκδοση upstream το ίδιο αποτέλεσμα στον περιηγητή
Κεφαλίδα X-Powered-By έκδοση upstream, αν το expose_php είναι ενεργό εξωτερικοί σαρωτές αναφέρουν ευπάθεια
Panels φιλοξενίας όπως το Plesk έκδοση upstream ένδειξη π.χ. 8.2.34 παρά το patch
Σαρωτές ευπαθειών σύγκριση κατά αριθμό ψευδής συναγερμός σε backports

Οι εξωτερικοί σαρωτές είναι ξεχωριστή περίπτωση. Όποιος τους χρησιμοποιεί, ίσως λάβει μετά το PHP2Shell ευρήματα για διακομιστές που έχουν προ πολλού διορθωθεί. Μην αγνοήσετε αυτά τα ευρήματα συλλήβδην, τεκμηριώστε για κάθε διακομιστή το επίπεδο του πακέτου και σημειώστε το εύρημα ως ελεγμένο. Έναν ακόμη λόγο για να κρύβετε πληροφορίες έκδοσης προς τα έξω, αναφέρει το άρθρο expose_php και κεφαλίδες διακομιστή.

Πότε ο ίδιος αριθμός είναι προειδοποιητικό σήμα

Υπάρχουν τρεις καταστάσεις όπου ο αμετάβλητος αριθμός δείχνει πράγματι πρόβλημα:

  1. Η πηγή πακέτων παραδίδει την έκδοση upstream. Αν η PHP προέρχεται από πηγή που κανονικά παραδίδει την τρέχουσα έκδοση upstream, όπως το Debian στο PHP2Shell ή πηγές τρίτων όπως Remi και sury.org, μετά την ενημέρωση πρέπει να εμφανίζεται 8.5.12, 8.4.27, 8.3.36 ή 8.2.35. Αν εκεί αναγράφεται ακόμη ο παλιός αριθμός, το πακέτο δεν ενημερώθηκε.
  2. Ελέγχετε λάθος εγκατάσταση. Το php -v δείχνει τη γραμμή εντολών. Αν ο ιστότοπος τρέχει μέσω άλλης έκδοσης, π.χ. από panel φιλοξενίας ή Software Collection, η έξοδος δεν λέει τίποτα για τον ιστότοπο.
  3. Το επίπεδο του πακέτου δεν άλλαξε. Αν και το επίπεδο του πακέτου είναι ίδιο με πριν από την ενημέρωση, η ενημέρωση δεν έφτασε για αυτό το πακέτο, για παράδειγμα επειδή έχει κρατηθεί ή λείπει η πηγή.

Για μη τεχνικούς μπορεί να συνοψιστεί έτσι: ο αριθμός έκδοσης περιγράφει το μοντέλο, το επίπεδο του πακέτου την κατάσταση συντήρησης. Δύο διακομιστές με την ίδια έκδοση PHP μπορεί να διαφέρουν σαφώς στην ασφάλεια. Μην ρωτάτε γι' αυτό την IT ή τον πάροχο υπηρεσιών σας για την έκδοση, αλλά για την απόδειξη του patch.

Έτσι το διευκρινίζετε σε πέντε λεπτά

Οι παρακάτω εντολές είναι αμιγώς ανάγνωσης. Τα παραδείγματα υποθέτουν Ubuntu ή Debian και PHP 8.3· σε συστήματα RHEL χρησιμοποιήστε rpm -q αντί για dpkg-query.

# 1. Τι αναφέρει η ίδια η PHP, συμπεριλαμβανομένης της ημερομηνίας build;
php -v

# 2. Ποιο επίπεδο πακέτου είναι εγκατεστημένο, από ποια πηγή;
apt policy php8.3-fpm

# 3. Περιέχει το changelog τους αριθμούς CVE;
apt changelog php8.3-fpm 2>/dev/null | grep -E "CVE-2026-10961[89]"

# 4. Από πότε εκτελούνται οι διεργασίες PHP του ιστότοπου;
ps -eo pid,lstart,cmd | grep "[p]hp-fpm"

Η ημερομηνία build στην έξοδο του php -v είναι ένδειξη, αλλά όχι απόδειξη. Την αξιόπιστη απόδειξη δίνει η εγγραφή στο changelog. Πώς τη βρίσκετε και την καταγράφετε όταν είναι διατυπωμένη διαφορετικά ή λείπει, περιγράφει το άρθρο Απόδειξη των αριθμών CVE στο changelog του πακέτου.

Συμβουλή

Σημειώνετε μετά από κάθε έλεγχο και τους δύο αριθμούς: την έκδοση upstream από το php -v και το επίπεδο του πακέτου. Όποιος ρωτήσει αργότερα γιατί ο διακομιστής «έχει ακόμη 8.3.6», λαμβάνει έτσι σαφή απάντηση.

Τον γενικό έλεγχο μέσω έκδοσης, πακέτου και διεργασιών συνοψίζει η σελίδα Σωστός έλεγχος έκδοσης PHP και επιπέδου patch.

Πώς βοηθά συγκεκριμένα η PHP SOS;

  • Διευκρινίζουμε για κάθε διακομιστή αν ένας αμετάβλητος αριθμός έκδοσης είναι backport ή ελλείπουσα ενημέρωση.
  • Αξιολογούμε ευρήματα από σαρωτές ευπαθειών και τεκμηριώνουμε τους ψευδείς συναγερμούς με το επίπεδο του πακέτου και το changelog.
  • Ελέγχουμε ποια εγκατάσταση PHP χρησιμοποιεί πράγματι ο ιστότοπος και αν επανεκκινήθηκαν οι διεργασίες της.
  • Στην υπηρεσία patch PHP τεκμηριώνουμε δίπλα δίπλα την έκδοση upstream και το επίπεδο του πακέτου.

Συχνές ερωτήσεις

Είναι ο διακομιστής μου χωρίς patch αν το php -v δείχνει τον παλιό αριθμό;

Όχι απαραίτητα. Πολλές διανομές ενσωματώνουν διορθώσεις ως backport στην υπάρχουσα έκδοση. Η Ubuntu 24.04 δείχνει για παράδειγμα ακόμη 8.3.6, παρόλο που το πακέτο είναι διορθωμένο σύμφωνα με το USN-8948-1. Αποφασιστικά είναι το επίπεδο του πακέτου και το changelog.

Γιατί ο σαρωτής ασφαλείας μου αναφέρει ευπάθεια παρά την ενημέρωση;

Πολλοί σαρωτές διαβάζουν μόνο τον αριθμό έκδοσης, για παράδειγμα από την κεφαλίδα X-Powered-By. Σε backports αυτό οδηγεί σε ψευδείς συναγερμούς. Ελέγξτε το επίπεδο του πακέτου και τεκμηριώστε το αποτέλεσμα, αντί να αγνοήσετε απλώς το εύρημα.

Μπορεί το php -v να δείχνει νέο αριθμό, ο ιστότοπος όμως όχι;

Ναι. Το php -v δείχνει τη γραμμή εντολών. Ο ιστότοπος μπορεί να τρέχει μέσω άλλης εγκατάστασης ή μέσω διεργασιών που ξεκίνησαν πριν από την ενημέρωση. Ελέγξτε γι' αυτό και την υπηρεσία FPM ή τον Apache και τον χρόνο εκκίνησής τους.

Βοηθά η ημερομηνία build στην έξοδο του php -v;

Είναι ένδειξη, αλλά όχι απόδειξη. Μια ημερομηνία build μετά τις 21 Οκτωβρίου 2026 ταιριάζει σε διορθωμένο πακέτο, δεν αποδεικνύει όμως ότι περιλαμβάνεται η διόρθωση. Η εγγραφή στο changelog είναι η καλύτερη απόδειξη.

Πηγές

Άμεση επικοινωνία

Κάθε ώρα μετράει. Γράψτε μας τώρα.

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

Άμεση βοήθεια