Αντίκτυπος
Η απουσία κεφαλίδων ασφαλείας επιτρέπει στους εισβολείς να εκτελούν clickjacking, να κλέβουν cookie περιόδου λειτουργίας ή να εκτελούν δέσμες ενεργειών μεταξύ τοποθεσιών (XSS) [S1]. Χωρίς αυτές τις οδηγίες, τα προγράμματα περιήγησης δεν μπορούν να επιβάλουν όρια ασφαλείας, οδηγώντας σε πιθανή εξαγωγή δεδομένων και μη εξουσιοδοτημένες ενέργειες χρήστη [S2].
Ριζική αιτία
Το ζήτημα προκύπτει από την αποτυχία ρύθμισης παραμέτρων διακομιστών ιστού ή πλαισίων εφαρμογών ώστε να περιλαμβάνουν τυπικές κεφαλίδες ασφαλείας HTTP. Ενώ η ανάπτυξη συχνά δίνει προτεραιότητα στο λειτουργικό HTML και CSS [S1], οι διαμορφώσεις ασφαλείας συχνά παραλείπονται. Εργαλεία ελέγχου όπως το Παρατηρητήριο MDN έχουν σχεδιαστεί για να ανιχνεύουν αυτά τα αμυντικά επίπεδα που λείπουν και να διασφαλίζουν ότι η αλληλεπίδραση μεταξύ του προγράμματος περιήγησης και του διακομιστή είναι ασφαλής [S2].
Τεχνικές λεπτομέρειες
Οι κεφαλίδες ασφαλείας παρέχουν στο πρόγραμμα περιήγησης συγκεκριμένες οδηγίες ασφαλείας για τον μετριασμό κοινών τρωτών σημείων:
- Πολιτική ασφαλείας περιεχομένου (CSP): Ελέγχει ποιοι πόροι μπορούν να φορτωθούν, αποτρέποντας τη μη εξουσιοδοτημένη εκτέλεση σεναρίου και την εισαγωγή δεδομένων [S1].
- Αυστηρή ασφάλεια μεταφορών (HSTS): Διασφαλίζει ότι το πρόγραμμα περιήγησης επικοινωνεί μόνο μέσω ασφαλών συνδέσεων HTTPS [S2].
- X-Frame-Options: Αποτρέπει την απόδοση της εφαρμογής σε ένα iframe, το οποίο είναι η κύρια άμυνα ενάντια στο clickjacking [S1].
- X-Content-Type-Options: Εμποδίζει το πρόγραμμα περιήγησης να ερμηνεύει αρχεία ως διαφορετικό τύπο MIME από αυτόν που καθορίζεται, σταματώντας τις επιθέσεις MIME-sniffing [S2].
Πώς το FixVibe το δοκιμάζει
Το FixVibe θα μπορούσε να το εντοπίσει αναλύοντας τις κεφαλίδες απόκρισης HTTP μιας εφαρμογής Ιστού. Με τη συγκριτική αξιολόγηση των αποτελεσμάτων σε σχέση με τα πρότυπα του Παρατηρητηρίου MDN, τα [S2], FixVibe μπορούν να επισημάνουν κεφαλίδες που λείπουν ή δεν έχουν διαμορφωθεί σωστά, όπως CSP, ZXCVFIXVIBETOKEN,-και XCVFIXCVBETOKEN4FX.
Διόρθωση
Ενημερώστε τον διακομιστή ιστού (π.χ. Nginx, Apache) ή το ενδιάμεσο λογισμικό εφαρμογής για να συμπεριλάβετε τις ακόλουθες κεφαλίδες σε όλες τις αποκρίσεις ως μέρος μιας τυπικής στάσης ασφαλείας [S1]:
- Content-Security-Policy: Περιορίστε τις πηγές πόρων σε αξιόπιστους τομείς.
- Αυστηρή-Μεταφορική-Ασφάλεια: Ενισχύστε το HTTPS με ένα μακρύ
max-age. - X-Content-Type-Options: Ορίστε σε
nosniff[S2]. - X-Frame-Options: Ρυθμίστε σε
DENYήSAMEORIGINγια να αποτρέψετε το clickjacking [S1].
