Mastodon
Connect with us

Computing

Το Secure Boot της Microsoft ήταν εκτεθειμένο για πάνω από δέκα χρόνια

H αναφορά της ESET αποκαλύπτει πως υπογεγραμμένα shims επέτρεψαν σε ευάλωτα boot components να παρακάμψουν το Secure Boot σε Windows και Linux. Το άρθρο εξηγεί τι είναι τα shims, πώς έγινε η παράκαμψη, ποιες συσκευές κινδυνεύουν και ποιες ενέργειες απαιτούνται.

Published

on

Το Secure Boot της Microsoft ήταν εκτεθειμένο για πάνω από δέκα χρόνια

Μια πρόσφατη αναφορά της ESET αποκάλυψε ότι ο μηχανισμός Secure Boot έχει πρακτικά παραβιαστεί εδώ και περισσότερο από μια δεκαετία μέσω υπογεγραμμένων «shims» που επέτρεπαν την εκτέλεση ευάλωτων ή μη ελεγμένων δευτερευόντων boot components. Το εύρημα δεν είναι απλώς τεχνική λεπτομέρεια· αναδεικνύει δομικά προβλήματα στο μοντέλο εμπιστοσύνης της σύγχρονης πλατφόρμας UEFI και εγείρει ερωτήματα για το πώς προστατεύονται οι συσκευές σε επίπεδο υλικολογισμικού.

Η έκθεση της ESET περιλαμβάνει συγκεκριμένα παραδείγματα υπογεγραμμένων shims που εξουσιοδοτούσαν εκτελέσιμα με γνωστές ευπάθειες, καθώς και υπογραφές που συνέχισαν να «παίζουν» παρά τη λήξη ορισμένων πιστοποιητικών. Το αποτέλεσμα είναι ότι, με σχετικά απλά εργαλεία, ένας επιτιθέμενος με λίγη τεχνική γνώση θα μπορούσε να παρακάμψει τον έλεγχο εκκίνησης σε μεγάλο αριθμό συστημάτων.

Τι ακριβώς προσπαθεί να προστατεύσει το Secure Boot;

Το Secure Boot είναι ένα συστατικό του προτύπου UEFI που σχεδιάστηκε για να εμποδίζει μη εγκρίσιμα ή κακόβουλα προγράμματα να φορτωθούν κατά το στάδιο εκκίνησης του υπολογιστή. Στην ιδέα του, πριν οποιοδήποτε λειτουργικό σύστημα ή bootloader εκτελεστεί, το firmware ελέγχει τις ψηφιακές υπογραφές των εκτελέσιμων αρχείων και επιτρέπει μόνο όσες φέρουν έγκυρη αλυσίδα εμπιστοσύνης. Στόχος είναι να καταστεί πολύ πιο δύσκολο για rootkits ή bootkits να αντέξουν σε επανεκκινήσεις και επανεγκαταστάσεις.

Στην πράξη όμως, το μοντέλο εμπιστοσύνης περιλαμβάνει μια ιεραρχία ψηφιακών πιστοποιητικών, λίστες ανάκλησης και μεσολαβητικά κομμάτια λογισμικού —όπως τα shims— που δημιουργούν σημεία συμφόρησης και πιθανές αποτυχίες. Όταν κάτι πάει στραβά σε αυτά τα σημεία, ολόκληρη η προστασία αποδυναμώνεται.

Τι είναι τα shims και γιατί έγιναν πρόβλημα;

Τα «shims» είναι μικρά κομμάτια κώδικα που υπογράφονται συχνά από τη Microsoft ώστε να επιτρέπουν σε λειτουργικά συστήματα τρίτων, κυρίως στις διανομές Linux, να εκκινούν σε μηχανήματα με ενεργοποιημένο Secure Boot. Η ιδέα ήταν πρακτική: αντί κάθε διανομέας να παίρνει ξεχωριστή υπογραφή από τους κατασκευαστές hardware, η Microsoft υπέγραψε ένα shim το οποίο στη συνέχεια επαληθεύει και φορτώνει τους πραγματικούς bootloaders των διανομών.

Το πρόβλημα που εντόπισε η ESET ήταν ότι πολλά από αυτά τα shims «εξουσιοδοτούσαν» δευτερεύοντα αρχεία ή modules που ήταν ευάλωτα ή κακώς σχεδιασμένα. Κάποια δεν υποστήριζαν επιπλέον μηχανισμούς προστασίας που εισήχθησαν αργότερα, όπως το MOK deny-list enforcement και το SBAT enforcement, και κάποια άλλα είχαν ελαττώματα στον ίδιο τον κώδικά τους. Ένα χαρακτηριστικό παράδειγμα ήταν το shim που σχετιζόταν με την Oracle, το οποίο υπέγραφε ένα δυαδικό γνωστό ότι είναι ευάλωτο στο CVE-2015-5381, μια ευπάθεια που δεν απαιτεί ιδιαίτερη εξειδίκευση για εκμετάλλευση.

Πώς λειτουργεί τεχνικά η παράκαμψη;

Στην ουσία, ένα υπογεγραμμένο shim ενεργεί ως «πόρτα» για περισσότερα κομμάτια λογισμικού. Όταν αυτό το shim εμπεριέχει ή επιτρέπει την εκτέλεση ενός ευάλωτου boot component, ο επιτιθέμενος μπορεί να το χρησιμοποιήσει για να φορτώσει κακόβουλο κώδικα σε επίπεδο εκκίνησης. Αυτό περιλαμβάνει δυνατότητες επίμονης μόλυνσης που παραμένει ενεργή πριν ακόμα «ξυπνήσει» το λειτουργικό σύστημα και είναι πολύ δύσκολη στην ανίχνευση ή αφαίρεση.

Επιπλέον, η απλή λήξη ενός πιστοποιητικού –όπως αυτό που υπέγραφε πολλά shims της Microsoft και που έληξε πρόσφατα– δεν σημαίνει αυτόματα ότι όλα τα σχετικά shims θα θεωρηθούν ως ανακληθέντα από τα firmware των συσκευών. Η διαδικασία ανάκλησης απαιτεί ενημερώσεις στη λίστα ανάκλησης συστήματος (dbx) που συνήθως διανέμονται μέσω firmware updates ή μέσω ενημερώσεων OS.

Ποιες συσκευές είναι ευάλωτες και ποιοι έχουν ήδη προστασία;

Η έκθεση εξηγεί ότι οι ευπαθείς shims μπορούν να αξιοποιηθούν τόσο σε Windows όσο και σε Linux συστήματα, αν και όχι απαραίτητα στις πιο σφικτά περιορισμένες διαμορφώσεις όπως τα Windows 11 Secured-core PCs στο default της εγκατάστασής τους. Η Microsoft εξέδωσε ενημερώσεις τον Ιούνιο που επιδιορθώνουν την κατάσταση για τα συστήματα Windows που τις έχουν εφαρμόσει. Συνεπώς, κάθε Windows μηχάνημα που έχει λάβει και εγκαταστήσει εκείνες τις ενημερώσεις θεωρείται κατά πολύ πιο ασφαλές.

Για χρήστες Linux η κατάσταση είναι πιο κατακερματισμένη: οι λύσεις εξαρτώνται από τη διανομή, την έκδοση του shim που χρησιμοποιείται και το αν το firmware της συσκευής έχει λάβει τις ανάλογες ενημερώσεις dbx. Ως πρώτη γραμμή ελέγχου, οι χρήστες και οι διανομείς μπορούν να συμβουλευτούν το Linux Vendor Firmware Service (LVFS) και τις ανακοινώσεις των διανομέων για να δουν αν υπάρχουν σχετικές ανακοινώσεις και πακέτα για ανάκληση.

Πώς να ελέγξετε την κατάσταση και ποιες είναι οι λύσεις;

Υπάρχουν εργαλεία και βήματα που βοηθούν στον έλεγχο. Ένα από αυτά είναι το script uefi-dbx-audit, που επιτρέπει να ελεγχθεί η κατάσταση των ανακλήσεων και να διαπιστωθεί αν συγκεκριμένα shims ή πιστοποιητικά έχουν συμπεριληφθεί στη λίστα dbx του firmware. Επιπλέον, η εγκατάσταση των τελευταίων ενημερώσεων συστήματος —ειδικά σε Windows— και των firmware updates από τον κατασκευαστή της μητρικής/του φορητού είναι κρίσιμης σημασίας.

Για οργανισμούς με μεγάλο αριθμό μηχανημάτων, η διαδικασία απαιτεί συντονισμό: απομακρυσμένη διαχείριση ενημερώσεων, διαχείριση συμβατότητας με ειδικά shims και ενδεχομένως επιθεωρήσεις ασφαλείας σε επίπεδο εκκίνησης. Επίσης, όσοι διαχειρίζονται κρίσιμη υποδομή θα πρέπει να εξετάσουν εάν μπορούν να μεταβούν σε πιο περιορισμένες πολιτικές Secure Boot ή να αξιοποιήσουν τεχνολογίες με αυξημένους δεσμούς εμπιστοσύνης, όπως TPM-based μετρημένο boot και λύσεις με hardware root of trust.

Γιατί το πρόβλημα είναι σύμπτωμα βαθύτερων αδυναμιών;

Οι ειδικοί της ασφάλειας firmware, όπως ο HD Moore, επισημαίνουν ότι αυτό που αποκαλύφθηκε δεν είναι απλώς μεμονωμένα ελαττώματα αλλά μια «ριζική» αδυναμία στο ίδιο το μοντέλο του Secure Boot. Η κριτική περιλαμβάνει το γεγονός ότι η Microsoft λειτουργεί ουσιαστικά ως de facto root of trust για ολόκληρη την πλατφόρμα UEFI, ότι το μοντέλο δυσκολεύεται να επεκταθεί και να διαχειριστεί μεγάλο πλήθος υπογραφών και ότι components μπορούν να συνεχίσουν να φορτώνουν ακόμη και μετά τη λήξη των ανώτερων πιστοποιητικών.

Το αποτέλεσμα, όπως λένε οι επικριτές, είναι ένα περιβάλλον όπου υπάρχει «τεράστιος αριθμός» υπογεγραμμένων αντικειμένων που δεν είναι ευρέως γνωστά εκτός από τη Microsoft, πολλά από τα οποία μπορούν να παρακάμψουν το Secure Boot. Ορισμένα από αυτά με τη σειρά τους μπορούν να εκκινήσουν άλλα πράγματα, δημιουργώντας αλυσιδωτές παραβιάσεις και πολύπλοκα σημεία αποτυχίας.

Τι σημαίνει αυτό στην πράξη για τους χρήστες και τις επιχειρήσεις;

Σε πρακτικό επίπεδο, η ανακάλυψη της ESET σημαίνει ότι όσοι δεν έχουν εφαρμόσει τις σχετικές ενημερώσεις είναι εκτεθειμένοι σε επιθέσεις που μπορούν να παραμείνουν ενεργές στο χαμηλότερο επίπεδο του συστήματος, ανεντοπίστες από συνηθισμένα εργαλεία antivirus. Οι επιθέσεις σε επίπεδο εκκίνησης είναι ιδιαίτερα επικίνδυνες για επιχειρήσεις, επειδή μπορούν να παρακάμψουν πολιτικές ασφαλείας, να εδραιώσουν πρόσβαση και να επιμείνουν ακόμη και μετά από format ή επανεγκατάσταση του λειτουργικού.

Μακροπρόθεσμα, το περιστατικό επαναφέρει στο προσκήνιο την ανάγκη για μεγαλύτερη διαφάνεια, ανεξαρτησία και δυνατότητες auditing στο οικοσύστημα UEFI. Εταιρικοί πελάτες και κατασκευαστές πρέπει να απαιτήσουν σαφέστερες διαδικασίες ανάκλησης, καλύτερα εργαλεία ανίχνευσης και πιθανώς πολλαπλούς roots of trust ώστε να μην εξαρτώνται αποκλειστικά από ένα σημείο ελέγχου.

Advertisement