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

Σκλήρυνση διακομιστή για διακομιστές ιστού PHP

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

Ημερομηνία 5 λεπτά ανάγνωσηςΥπηρεσίες

Εν συντομία: Όποιος θέλει να σκληρύνει τον διακομιστή του για PHP φροντίζει ώστε μια μεμονωμένη ευπάθεια να μην ανοίγει ολόκληρο τον διακομιστή. Διαχωρίζουμε τους ιστοτόπους μεταξύ τους, ρυθμίζουμε με ασφάλεια την PHP και τον διακομιστή ιστού, περιορίζουμε δικαιώματα και προσβάσεις και τεκμηριώνουμε κάθε αλλαγή. Έτσι η ζημιά παραμένει μικρότερη, αν παρ' όλα αυτά συμβεί κάτι.

Γιατί η σκλήρυνση έγινε πιο σημαντική μετά το PHP2Shell

Το PHP2Shell έδειξε πόσο γρήγορα μια ευπάθεια στην ίδια την PHP γίνεται πρόβλημα για όλους τους ιστοτόπους ενός διακομιστή. Με τα CVE-2026-109618 και CVE-2026-109619 οι επιτιθέμενοι μπορούν να εκτελέσουν κώδικα χωρίς σύνδεση. Το patch κλείνει αυτή την πόρτα. Η σκλήρυνση απαντά σε ένα άλλο ερώτημα: τι μπορεί να κάνει κάποιος που παρ' όλα αυτά εισέρχεται, μέσω αυτής ή της επόμενης ευπάθειας;

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

Σκλήρυνση διακομιστή για PHP: τι προσαρμόζουμε συγκεκριμένα

Απομόνωση ανά ιστότοπο

Κάθε ιστότοπος λαμβάνει δικό του χρήστη συστήματος και δικό του pool PHP-FPM. Με το open_basedir και κατάλληλα δικαιώματα αρχείων, μια εφαρμογή βλέπει μόνο τον δικό της κατάλογο. Περισσότερα στο open_basedir και απομόνωση ανά ιστότοπο.

Ασφαλής διαμόρφωση PHP

Ρυθμίζουμε το php.ini και τη διαμόρφωση των pools ώστε οι εφαρμογές να μην μπορούν να αντικαταστήσουν μόνες τους τιμές που αφορούν την ασφάλεια. Ένα απόσπασμα, όπως μπορεί να μοιάζει σε ένα pool FPM:

; καθορίστε τις τιμές σταθερά στο pool FPM, ώστε να μην αλλάζουν με ini_set()
php_admin_flag[expose_php] = off
php_admin_flag[display_errors] = off
php_admin_flag[log_errors] = on
php_admin_value[open_basedir] = /var/www/kunde1/:/tmp/
php_admin_flag[session.upload_progress.enabled] = off
php_admin_flag[allow_url_include] = off

Ποιες συναρτήσεις μπορούν να αποκλειστούν επιπλέον εξαρτάται από την εφαρμογή. Υποδείξεις υπάρχουν στο Ασφαλής διαμόρφωση του php.ini και στο Σωστή χρήση του disable_functions.

Δικαιώματα αρχείων και δικαίωμα εγγραφής

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

Προσβάσεις, υπηρεσίες και logs

SSH μόνο με κλειδί, διεπαφές διαχείρισης με σύνδεση δύο παραγόντων, μη απαραίτητες υπηρεσίες και θύρες κλειστές. Τα logs φυλάσσονται και ασφαλίζονται ώστε να υπάρχουν ακόμη μετά από ένα περιστατικό. Τα αντίγραφα ασφαλείας τα ελέγχουμε ως προς τη δυνατότητα επαναφοράς.

Διακομιστής ιστού και κεφαλίδες ασφαλείας

Και ο ίδιος ο διακομιστής ιστού ανήκει στη σκλήρυνση: απόκρυψη των πληροφοριών έκδοσης, απενεργοποίηση των λιστών καταλόγων, αποκλεισμός της πρόσβασης σε αρχεία διαμόρφωσης, αντιγράφων ασφαλείας και διαχείρισης εκδόσεων και πρόσθετη προστασία των περιοχών διαχείρισης, για παράδειγμα με εξουσιοδότηση διευθύνσεων IP. Οι κεφαλίδες ασφαλείας, όπως η Content-Security-Policy ή το HSTS, προστατεύουν στον περιηγητή τους επισκέπτες του ιστότοπού σας.

Τι βρίσκουμε συχνά κατά την καταγραφή

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

Κανένα από αυτά τα σημεία δεν είναι από μόνο του εντυπωσιακό. Μαζί όμως καθορίζουν αν μια εισβολή θα περιοριστεί σε έναν ιστότοπο ή θα αφορά ολόκληρο τον διακομιστή.

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

  1. Καταγραφή: Καταγράφουμε το λειτουργικό σύστημα, τον διακομιστή ιστού, τις εκδόσεις PHP, τους ιστοτόπους, τους χρήστες, τις ανοιχτές υπηρεσίες και τα υπάρχοντα αντίγραφα ασφαλείας.
  2. Πλάνο μέτρων: Λαμβάνετε μια λίστα με προτεραιότητες, με την προσπάθεια και τις πιθανές επιπτώσεις ανά σημείο. Εσείς αποφασίζετε τι θα εφαρμοστεί.
  3. Υλοποίηση σε βήματα: Αλλάζουμε διαμορφώσεις κατόπιν συνεννόησης, δοκιμάζουμε τους ιστοτόπους μετά από κάθε βήμα και καταγράφουμε πώς μπορεί να αναιρεθεί κάθε αλλαγή.
  4. Έλεγχος: Μετά την υλοποίηση ελέγχουμε το αποτέλεσμα, για παράδειγμα αν ένας ιστότοπος πράγματι δεν μπορεί πλέον να διαβάσει ξένους καταλόγους.
  5. Παράδοση: Λαμβάνετε τεκμηρίωση της νέας κατάστασης, την οποία μπορεί να κατανοήσει και ο πάροχος φιλοξενίας ή το πρακτορείο σας.

Τι λαμβάνετε και τι χρειαζόμαστε

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

Από εσάς χρειαζόμαστε:

  • πρόσβαση root ή διαχειριστή στον διακομιστή, και στους πίνακες ελέγχου επιπλέον την πρόσβαση στον πίνακα
  • μια λίστα με τις εφαρμογές και τις ιδιαιτερότητές τους, για παράδειγμα uploads, διεπαφές, cronjobs
  • έναν τεχνικό υπεύθυνο επικοινωνίας, που μπορεί να επιβεβαιώνει τις λειτουργίες μετά τις αλλαγές
  • παράθυρα συντήρησης για επανεκκινήσεις
  • ένα πρόσφατο αντίγραφο ασφαλείας ή την εντολή να δημιουργηθεί ένα πριν

Τι δεν υποσχόμαστε

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

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

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

Τι σημαίνει να σκληρύνετε έναν διακομιστή;

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

Θα είχε αποτρέψει η σκλήρυνση το PHP2Shell;

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

Μήπως χαλάσει ο ιστότοπός μου από τη σκλήρυνση;

Ο κίνδυνος υπάρχει, αν αλλάζουν ρυθμίσεις χωρίς δοκιμή. Εφαρμόζουμε τις αλλαγές σταδιακά, ελέγχουμε τις λειτουργίες μετά από κάθε βήμα και καταγράφουμε πώς μπορεί να αναιρεθεί κάθε αλλαγή.

Κάθε πότε πρέπει να ελέγχεται η σκλήρυνση;

Το αργότερο μετά από μεγαλύτερες ενημερώσεις, αλλαγή έκδοσης PHP ή νέες εφαρμογές στον διακομιστή. Σκόπιμος είναι ένας τακτικός έλεγχος στο πλαίσιο της διαρκούς συντήρησης.

Πηγές

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

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

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

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