Προστασία των HTTP headers στο WordPress

Παρακάτω θα δούμε πως μπορείτε να ασφαλίσετε (όσο είναι δυνατόν) τα headers του WordPress που χρησιμοποιείτε. Τα ασφαλή HTTP headers θα σας βοηθήσουν να δυναμώσετε την θωράκιση του WordPress σε επιθέσεις κλείνοντας μερικά τρωτά .

Υπάρχουν συνολικά 6 HTTP headers που μπορείτε να εφαρμόσετε στην ιστοσελίδα σας, προσθέτοντας τον παρακάτω κώδικα στο αρχείο functions.php που βρίσκεται στο φάκελο themes.

WordPress

Content Security Policy ή (CSP)

Η πολιτική CSP συμβάλλει στην ασφάλεια από επιθέσεις XSS και χρησιμοποιεί λευκές λίστες για τις επιτρεπόμενες πηγές περιεχομένου, όπως scrips, css, και εικόνες. Ένα ασφαλές Content Security Policy μπορεί να αποτρέψει το πρόγραμμα περιήγησης από τη φόρτωση κακόβουλων scripts και άλλων στοιχείων.

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

Το CSP σας μπορεί να προστεθεί στο αρχείο functions.php.

Μπορείτε να δοκιμάσετε να προσθέσετε την παρακάτω :

header('Content-Security-Policy: default-src \'self\' \'unsafe-inline\' \'unsafe-eval\' https: data:');

Τι κάνει; η παραπάνω CSP επιτρέπει όλους τους τύπους των αρχείων από το δικό σας domain, “self.” To “unsafe-inline” επιτρέπει όλα τα δικά σας (inline) css & scripts και το “unsafe-eval” λέει ότι κάθε μη ασφαλής δυναμικός κώδικας, όπως το JS επιτρέπεται. ΤΑ tags “https” και “data” επιτρέπουν τους πόρους να φορτώνονται μόνο μέσω HTTPS. Αν δεν χρησιμοποιείτε HTTPS αφήστε το σκέτο HTTP.

X-Frame-Options

Αυτό το header βοηθά στην πρόληψη Clickjacking υποδεικνύοντας σε ένα πρόγραμμα περιήγησης ότι δεν μπορεί να φορτώσει τη σελίδα σε ένα πλαίσιο (frame ή iframe).

Προσθέστε την επόμενη πολιτική στο functions.php σας όπως αυτό:

header('X-Frame-Options: SAMEORIGIN');

X-XSS-Protection και X-Content--Options

Η X-XSS-Protection συμβάλλει στην προστασία από επιθέσεις cross-site scripting (XSS) επιθέσεις και η X-Content-Type-Options δίνει εντολή στον IE μαν μην κάνει sniffing σε τύπους mime (mime types). Το συγκεκριμένο header χρειάζεται για την πρόληψη επιθέσεων που σχετίζονται με mime-sniffing.

Προσθέστε και πάλι στο functions.php σας:

header('X-XSS-Protection: 1; mode=block');
header('X-Content-Type-Options: nosniff');

HTTP Strict Transport Security (HSTS)

To HSTS είναι ένας τρόπος για το διακομιστή να πει στο πρόγραμμα περιήγησης ότι θα πρέπει να επικοινωνούν με τον server μόνο μέσω HTTPS. Αν δεν χρησιμοποιείτε HTTPS παραλείψτε το παρακάτω βήμα.

Προσθέστε τον παρακάτω κώδικα στο functions.php:

header('Strict-Transport-Security:max-age=31536000; includeSubdomains; preload');

Προσθήκη Cookie με HTTPOnly και flag στο WordPress

Αυτή η εντολή λέει στο πρόγραμμα περιήγησης να εμπιστεύεται το cookie μόνο από τον server και ότι το cookie είναι προσβάσιμο μέσω ασφαλών διαύλων SSL.

Προσθέστε αυτό στο αρχείο functions.php σας:

@ini_set('session.cookie_httponly', true);
@ini_set('session.cookie_secure', true);
@ini_set('session.use_only_cookies', true);

Όλα τα παραπάνω μαζί:

header('Content-Security-Policy: default-src \'self\' \'unsafe-inline\' \'unsafe-eval\' https: data:');
header('X-Frame-Options: SAMEORIGIN');
header('X-XSS-Protection: 1; mode=block');
header('X-Content-Type-Options: nosniff');
header('Strict-Transport-Security:max-age=31536000; includeSubdomains; preload');
@ini_set('session.cookie_httponly', true);
@ini_set('session.cookie_secure', true);
@ini_set('session.use_only_cookies', true);

WordPress

Ένας άλλος τρόπος για να ασφαλίσετε τα HTTP headers είναι μέσω του αρχείου .htaccess. Παρακάτω είναι ο κώδικας που μπορείτε να προσθέσετε στο αρχείο .htaccess που βρίσκεται στο / του WordPress σας:

Header set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Header set X-XSS-Protection "1; mode=block"
Header set X-Frame-Options "sameorigin"
Header set X-Content-Type-Options "nosniff"
Header set Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' https: data:";

Εναλλακτικά, μπορείτε να χρησιμοποιήσετε διάφορα που κυκλοφορούν αναζητώντας “Security Headers” στα αποθετήρια του WordPress.

Μπορείτε να δοκιμάσετε τα HTTP security headers που προσθέσατε από τη σελίδα https://securityheaders.io.

iGuRu.gr The Best Technology Site in Greeceggns

Get the best viral stories straight into your inbox!















giorgos

Written by giorgos

Ο Γιώργος ακόμα αναρωτιέται τι κάνει εδώ....

Αφήστε μια απάντηση

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

Το μήνυμα σας δεν θα δημοσιευτεί εάν:
1. Περιέχει υβριστικά, συκοφαντικά, ρατσιστικά, προσβλητικά ή ανάρμοστα σχόλια.
2. Προκαλεί βλάβη σε ανηλίκους.
3. Παρενοχλεί την ιδιωτική ζωή και τα ατομικά και κοινωνικά δικαιώματα άλλων χρηστών.
4. Διαφημίζει προϊόντα ή υπηρεσίες ή διαδικτυακούς τόπους .
5. Περιέχει προσωπικές πληροφορίες (διεύθυνση, τηλέφωνο κλπ).