Στο 25ο Larissa WordPress Meetup, ο Ορέστης Σαμαράς μας μίλησε για το πώς καταλήγουν τα sites χακαρισμένα, αλλά και ποιες απλές και πρακτικές συμβουλές μπορείτε να ακολουθήσετε για να κρατήσετε την εγκατάσταση WordPress σας ασφαλή.
στις ενημερώσεις ❏ Δημοσιοποίηση ευπαθειών σε changelogs ❏ Αυτοματοποιήστε τις ❏ Dashboard (WP > 5.6) ❏ wp-config.php constants ❏ Φίλτρα auto_update_XXX ❏ Tip! Ελέγξτε τις ενημερώσεις σε ένα staging περιβάλλον
για επιθέσεις brute-force ❏ Μπλοκάρετε την πρόσβαση (BasicAuth, plugins, fail2ban, 3rd-party υπηρεσίες) ❏ Χρησιμοποιήστε captcha για να αποφύγετε τα bots ❏ Ενεργοποιήστε Two-Factor Authentication ❏ Κρύψτε την σελίδα σύνδεσης για τον πίνακα ελέγχου
την επιλογή ελέγξτε ❏ Συμβατότητα με WP και PHP ❏ Κριτικές ❏ Forum υποστήριξης ❏ Δημιουργός ❏ Χρησιμοποιήστε μόνο ότι χρειάζεστε! ❏ ΜΗΝ χρησιμοποιείτε nulled plugins ή themes
site παραβιάζεται, αρχεία προστίθενται ή τροποποιούνται για να περιλαμβάνουν τον κακόβουλο κώδικα ❏ Χρησιμοποιήστε το WP CLI, ένα plugin ή υπηρεσία για να παρακολουθείτε τυχόν αλλαγές στα αρχεία της εγκατάστασής σας
από τον πίνακα ελέγχου ❏ Ένας κακόβουλος χρήστης μπορεί να κάνει αλλαγές ❏ Για να την απενεργοποιήσετε, προσθέστε στο wp-config.php ❏ define(‘DISALLOW_FILE_EDIT’, true) ❏ define(‘DISALLOW_FILE_MODS’, true)
ID χρηστών, έχουμε λίστα με usernames ❏ https://yoursite.com/?author=1 → https://yoursite.com/author/username ❏ Για να το αποτρέψετε: ❏ Μπλοκάρετε αιτήματα με τη παράμετρο author ❏ Επιτρέψτε την προβολή της λίστας χρηστών του REST API μόνο σε συνδεδεμένους χρήστες ❏ Αφαιρέστε τους χρήστες από το sitemap και από τα embeds ❏ Απενεργοποιήστε τα author archives … ή χρησιμοποιήστε ένα plugin
Εμφανίζονται μετά από λάθος προσπάθεια σύνδεσης ❏ Μπορούν να χρησιμοποιηθούν για να προσδιοριστεί η ύπαρξη ενός χρήστη ❏ Αλλάξτε το μήνυμα λάθους με το φίλτρο login_errors … ή χρησιμοποιήστε ένα plugin
την δημοσίευση περιεχομένου στο site σας από απομακρυσμένα συστήματα ❏ Χρησιμοποιείται για επιθέσεις brute-force και DDoS ❏ Απενεργοποιήστε το ❏ Με το φίλτρο xmlrpc_enabled ❏ Μπλοκάροντας requests μέσω του .htaccess ή του nginx.conf … ή χρησιμοποιώντας ένα plugin
συμβεί! Προετοιμαστείτε ❏ Ωριαία, ημερήσια, εβδομαδιαία ή μηνιαία backups ❏ Αυτοματοποιήστε την δημιουργία των backups - server ή plugin ❏ Διατηρήστε τα backups σε διαφορετικές τοποθεσίες ❏ Tip! Πάντα επαληθεύετε τα backups
μεταφέρονται μεταξύ του server και του browser ❏ Οι πάροχοι hosting συνήθως αναλαμβάνουν την εγκατάσταση των SSL ❏ Βεβαιωθείτε ότι ανακατευθύνετε όλους τους επισκέπτες στην ασφαλή έκδοση ❏ Με οδηγίες στο .htaccess ή στο nginx.conf … ή χρησιμοποιώντας ένα plugin
υποστηριζόμενες εκδόσεις PHP (< 8.1) ❏ Για να αναβαθμίσετε, ελέγξτε τις ρυθμίσεις του server σας ή μιλήστε με τον πάροχο hosting ❏ Tip! Πριν την ενημέρωση, βεβαιωθείτε για την συμβατότητα των εγκατεστημένων επεκτάσεων σε ένα δοκιμαστικό περιβάλλον (πηγή: wordpress.org) Ρυθμίσεις του server Ενημέρωση έκδοσης PHP
Αλλαγές στις ρυθμίσεις του server ή στο αρχείο .htaccess ή nginx.conf μπορεί να είναι καταστροφικές ❏ Κάντε δοκιμές σε staging ❏ Επικοινωνήστε με τον πάροχο hosting ή απευθυνθείτε σε κάποιον επαγγελματία
πιο δημοφιλές όνομα χρήστη ❏ Εάν έχετε ήδη έναν τέτοιο λογαριασμό ❏ Δημιουργήστε έναν νέο λογαριασμό και διαγράψετε τον προηγούμενο ❏ Αλλάξτε το όνομα χρήστη απευθείας από την βάση δεδομένων
ρόλο, που καθορίζει τι ενέργειες μπορεί να κάνει ❏ Δώστε στους χρήστες τον ρόλο που αντιστοιχεί στην εργασία τους ❏ Πιο λεπτομερής έλεγχος των ρόλων μπορεί να γίνει με χρήση plugin