Ο Firefox είναι ο μόνος περιηγητής ιστού που προτείνει το Γερμανικό ομοσπονδιακό γραφείο για την ασφάλεια πληροφοριών (BSI) μετά από έρευνες που πραγματοποίησε.(Γερμανικό Ομοσπονδιακό Γραφείο για την Ασφάλεια Πληροφοριών ή το Bundesamt für Sicherheit in der Informationstechnik – BSI).
Το BSI πραγματοποίησε ελέγχους στις εφαρμογές Mozilla Firefox 68 (ESR), Google Chrome 76, Microsoft Internet Explorer 11 και τον Microsoft Edge 44. Οι δοκιμές δεν περιείχαν άλλα προγράμματα περιήγησης όπως Safari, Brave, Opera ή Vivaldi.
Ο έλεγχος διεξήχθη με τρόπο που περιγράφεται λεπτομερώς σε μια κατευθυντήρια γραμμή (PDF) για τους “σύγχρονους ασφαλείς browsers” που δημοσίευσε το BSI τον περασμένο μήνα, τον Σεπτέμβριο του 2019.
Το BSI συνήθως χρησιμοποιεί αυτόν τον οδηγό για να καθοδηγεί τις κυβερνητικές υπηρεσίες και τις εταιρείες του ιδιωτικού τομέα στο ποια προγράμματα περιήγησης είναι ασφαλή για χρήση.
Σύμφωνα με τον νέο οδηγό του BSI, για να θεωρείται “ασφαλές”, ένα σύγχρονο πρόγραμμα περιήγησης πρέπει να ικανοποιεί τις παρακάτω ελάχιστες απαιτήσεις:
– Πρέπει να υποστηρίζει TLS
– Πρέπει να έχει μια λίστα αξιόπιστων πιστοποιητικών – Πρέπει να υποστηρίζει εκτεταμένα πιστοποιητικά επικύρωσης (EV)
– Πρέπει να επαληθεύει τα φορτωμένα πιστοποιητικά με μια λίστα ανάκλησης πιστοποίησης (CRL) ή με ένα πρωτόκολλο ηλεκτρονικής κατάστασης πιστοποιητικών (OCSP)
– Το πρόγραμμα περιήγησης πρέπει να χρησιμοποιεί εικονίδια ή βασικά χρώματα για να δείχνει αν η επικοινωνία με έναν απομακρυσμένο διακομιστή είναι κρυπτογραφημένη ή σε μορφή απλού κειμένου. Οι συνδέσεις με απομακρυσμένους ιστότοπους που τρέχουν με πιστοποιητικά που έχουν λήξει θα πρέπει να ανοίγουν μόνο μετά από έγκριση των χρηστών
– Πρέπει να υποστηρίζει την ασφάλεια HTTP Strict Transport (HSTS) (RFC 6797)
– Πρέπει να υποστηρίζει την πολιτική ίδιας προέλευσης (SOP) και πρέπει να υποστηρίζει την Πολιτική ασφάλειας περιεχομένου (CSP) 2.0
– Πρέπει να υποστηρίζει το Sub-resource integrity (SRI)
– Πρέπει να υποστηρίζει αυτόματες ενημερώσεις με ένα ξεχωριστό μηχανισμό ενημέρωσης για τις κρίσιμες ενημερώσεις και τις επεκτάσεις του προγράμματος περιήγησης
– Οι ενημερώσεις του προγράμματος περιήγησης πρέπει να είναι υπογεγραμμένες και επαληθεύσιμες
– Ο διαχειριστής κωδικών πρόσβασης του προγράμματος περιήγησης πρέπει να αποθηκεύει τους κωδικούς πρόσβασης σε κρυπτογραφημένη μορφή και η πρόσβαση στην ενσωματωμένη λειτουργία κωδικών πρόσβασης του προγράμματος περιήγησης πρέπει να επιτρέπεται μόνο όταν ο χρήστης έχει εισάγει κάποιο κύριο κωδικό πρόσβασης
– Ο χρήστης πρέπει να μπορεί να διαγράφει τους κωδικούς πρόσβασης από τον διαχειριστή κωδικών πρόσβασης του προγράμματος περιήγησης
– Οι χρήστες θα πρέπει να είναι σε θέση να μπλοκάρουν ή να διαγράφουν αρχεία cookie. Οι χρήστες θα πρέπει να είναι σε θέση να μπλοκάρουν ή να διαγράφουν το ιστορικό αυτόματης συμπλήρωσης
– Οι χρήστες θα πρέπει να είναι σε θέση να αποκλείουν ή να διαγράφουν το ιστορικό περιήγησης
– Οι διαχειριστές θα πρέπει να είναι σε θέση να ρυθμίζουν ή να αποκλείουν τα προγράμματα περιήγησης από την αποστολή τηλεμετρίας (δεδομένων χρήσης). Οι browsers θα πρέπει να υποστηρίζουν τον μηχανισμό για τον έλεγχο επιβλαβούς περιεχομένου και διευθύνσεων URL
– Τα προγράμματα περιήγησης θα επιτρέπουν στους οργανισμούς να έχουν μαύρες λίστες σε τοπικό επίπεδο
– Πρέπει να υποστηρίζουν μια ενότητα ρυθμίσεων απ’όπου οι χρήστες θα μπορούν να ενεργοποιούν ή να απενεργοποιούν τα addons, τις επεκτάσεις ή τη JavaScript.
– Πρέπει να επιτρέπεται στους διαχειριστές να απενεργοποιούν τις λειτουργίες συγχρονισμού προφίλ που χρησιμοποιεί το Cloud.
– Πρέπει να τρέχει με ελάχιστα δικαιώματα στο λειτουργικό σύστημα και πρέπει να υποστηρίζει sandboxing. Όλα τα στοιχεία του προγράμματος περιήγησης θα πρέπει να απομονώνονται το ένα από το άλλο αλλά και το λειτουργικό σύστημα. Η επικοινωνία μεταξύ των απομονωμένων χαρακτηριστικών θα μπορεί να πραγματοποιείται μόνο μέσω καθορισμένων διεπαφών. Δεν θα πρέπει να είναι δυνατή η απευθείας πρόσβαση σε πόρους μεμονωμένων στοιχείων.
– Οι ιστοσελίδες πρέπει να απομονώνονται μεταξύ τους, ιδανικά με τη μορφή αυτόνομων διεργασιών.
– Οι browsers θα πρέπει να αναπτύσσονται χρησιμοποιώντας γλώσσες προγραμματισμού που υποστηρίζουν τα stack and heap memory protections
– Οι browsers θα πρέπει να χρησιμοποιούν OS memory protections όπως τα Address Space Layout Randomization (ASLR) και Data Execution Prevention (DEP).
Σύμφωνα με το BSI, ο Firefox είναι το μόνο πρόγραμμα περιήγησης που υποστηρίζει όλα τα παραπάνω. Τα σημεία που απέτυχαν οι άλλες εφαρμογές:
– Έλλειψη υποστήριξης για έναν κύριο κωδικό πρόσβασης (Chrome, IE, Edge)
– Δεν υπάρχει ενσωματωμένος μηχανισμός ενημέρωσης (IE)
– Δεν υπάρχει επιλογή για αποκλεισμό της τηλεμετρίας
– Χωρίς SOP (Same Origin Policy) support (IE)
– Χωρίς CSP (Content Security Policy) support (IE)
– Χωρίς SRI (Subresource Integrity) support (IE)
– Χωρίς υποστήριξη για browser profiles, different configurations (IE, Edge)
– Έλλειψη διαφάνειας (Chrome, IE, Edge)