FixVibe
Covered by FixVibemedium

Ανεπαρκής διαμόρφωση κεφαλίδας ασφαλείας

Οι εφαρμογές Ιστού συχνά αποτυγχάνουν να εφαρμόσουν βασικές κεφαλίδες ασφαλείας, αφήνοντας τους χρήστες εκτεθειμένους σε δέσμες ενεργειών μεταξύ τοποθεσιών (XSS), clickjacking και έγχυση δεδομένων. Ακολουθώντας καθιερωμένες κατευθυντήριες γραμμές για την ασφάλεια του Ιστού και χρησιμοποιώντας εργαλεία ελέγχου όπως το Παρατηρητήριο MDN, οι προγραμματιστές μπορούν να σκληρύνουν σημαντικά τις εφαρμογές τους έναντι κοινών επιθέσεων που βασίζονται σε προγράμματα περιήγησης.

CWE-693

Αντίκτυπος

Η απουσία κεφαλίδων ασφαλείας επιτρέπει στους εισβολείς να εκτελούν 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].