Το τσιπ ανοιχτού κώδικα OpenTitan θα αντικαταστήσει τις ιδιόκτητες ρίζες εμπιστοσύνης της Intel και της ARM

Το τσιπ ανοιχτού κώδικα OpenTitan θα αντικαταστήσει τις ιδιόκτητες ρίζες εμπιστοσύνης της Intel και της ARM

Μη κερδοσκοπική οργάνωση lowRISC με την Google και άλλους χορηγούς, 5 Νοεμβρίου 2019 παρουσιάζονται σχέδιο OpenTitan, το οποίο αποκαλεί «το πρώτο έργο ανοιχτού κώδικα για τη δημιουργία μιας ανοιχτής αρχιτεκτονικής τσιπ υψηλής ποιότητας με ρίζα εμπιστοσύνης (RoT) σε επίπεδο υλικού».

Το OpenTitan που βασίζεται στην αρχιτεκτονική RISC-V είναι ένα τσιπ ειδικού σκοπού για εγκατάσταση σε διακομιστές σε κέντρα δεδομένων και σε οποιονδήποτε άλλο εξοπλισμό όπου είναι απαραίτητο να διασφαλιστεί η αυθεντικότητα εκκίνησης, η προστασία του υλικολογισμικού από αλλαγές και η εξάλειψη της πιθανότητας rootkits: πρόκειται για μητρικές πλακέτες, κάρτες δικτύου, δρομολογητές, συσκευές IoT , φορητές συσκευές κ.λπ.

Φυσικά, παρόμοια modules υπάρχουν σε σύγχρονους επεξεργαστές. Για παράδειγμα, η μονάδα Intel Hardware Boot Guard είναι η ρίζα της εμπιστοσύνης στους επεξεργαστές Intel. Επαληθεύει την αυθεντικότητα του UEFI BIOS μέσω μιας αλυσίδας εμπιστοσύνης πριν φορτώσει το λειτουργικό σύστημα. Αλλά το ερώτημα είναι, πόσο μπορούμε να εμπιστευτούμε τις ιδιόκτητες ρίζες εμπιστοσύνης, δεδομένου ότι δεν έχουμε καμία εγγύηση ότι δεν θα υπάρχουν σφάλματα στη σχεδίαση και δεν υπάρχει τρόπος να το ελέγξουμε; Δείτε άρθρο «Η αξιόπιστη λήψη του Schrödinger. Intel Boot Guard" με μια περιγραφή του «πώς ένα σφάλμα που έχει κλωνοποιηθεί για χρόνια στην παραγωγή πολλών προμηθευτών επιτρέπει σε έναν πιθανό εισβολέα να χρησιμοποιήσει αυτήν την τεχνολογία για να δημιουργήσει ένα κρυφό rootkit στο σύστημα που δεν μπορεί να αφαιρεθεί (ακόμη και με προγραμματιστή).

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

"Εάν δεν μπορείτε να εμπιστευτείτε τον bootloader υλικού, το παιχνίδι έχει τελειώσει." Μιλάει Gavin Ferris, μέλος του διοικητικού συμβουλίου της lowRISC. - Δεν έχει σημασία τι κάνει το λειτουργικό σύστημα - εάν μέχρι τη στιγμή που φορτώνει το λειτουργικό σύστημα είστε σε κίνδυνο, τότε τα υπόλοιπα είναι θέμα τεχνολογίας. Έχεις ήδη τελειώσει».

Αυτό το πρόβλημα θα πρέπει να λυθεί από την πρώτη του είδους ανοιχτή πλατφόρμα υλικού OpenTitan (Αποθετήριο GitHub, την τεκμηρίωση, προδιαγραφές υλικού). Η απομάκρυνση από τις ιδιόκτητες λύσεις θα βοηθήσει στην αλλαγή της «νωθρής και ελαττωματικής βιομηχανίας RoT», λέει η Google.

Η ίδια η Google άρχισε να αναπτύσσει τον Titan αφού ανακάλυψε το λειτουργικό σύστημα Minix ενσωματωμένο σε τσιπ Intel Management Engine (ME). Αυτό το πολύπλοκο λειτουργικό σύστημα επέκτεινε την επιφάνεια επίθεσης με απρόβλεπτους και ανεξέλεγκτους τρόπους. Google προσπάθησε να απαλλαγεί από το Intel Management Engine (ME), αλλά ανεπιτυχώς.

Ποια είναι η ρίζα της εμπιστοσύνης;

Κάθε στάδιο της διαδικασίας εκκίνησης του συστήματος ελέγχει την αυθεντικότητα του επόμενου σταδίου, δημιουργώντας έτσι αλυσίδα εμπιστοσύνης.

Το Root of Trust (RoT) είναι ένας έλεγχος ταυτότητας που βασίζεται σε υλικό που διασφαλίζει ότι η πηγή της πρώτης εκτελέσιμης εντολής στην αλυσίδα αξιοπιστίας δεν μπορεί να αλλάξει. Το RoT είναι η βασική προστασία έναντι των rootkit. Αυτό είναι ένα βασικό στάδιο της διαδικασίας εκκίνησης, το οποίο εμπλέκεται στην επακόλουθη εκκίνηση του συστήματος - από το BIOS στο λειτουργικό σύστημα και τις εφαρμογές. Πρέπει να επαληθεύει την αυθεντικότητα κάθε επόμενου βήματος λήψης. Για να γίνει αυτό, χρησιμοποιείται ένα σύνολο κλειδιών με ψηφιακή υπογραφή σε κάθε στάδιο. Ένα από τα πιο δημοφιλή πρότυπα για την προστασία κλειδιού υλικού είναι το TPM (Trusted Platform Module).

Το τσιπ ανοιχτού κώδικα OpenTitan θα αντικαταστήσει τις ιδιόκτητες ρίζες εμπιστοσύνης της Intel και της ARM
Δημιουργία ρίζας εμπιστοσύνης. Παραπάνω είναι μια διαδικασία εκκίνησης πέντε βημάτων που δημιουργεί μια αλυσίδα εμπιστοσύνης, ξεκινώντας από τον bootloader στην αμετάβλητη μνήμη. Κάθε βήμα χρησιμοποιεί ένα δημόσιο κλειδί για την επαλήθευση της ταυτότητας του επόμενου στοιχείου που θα φορτωθεί. Εικονογράφηση από το βιβλίο του Perry Lee "Αρχιτεκτονική του Διαδικτύου των Πραγμάτων"

Το RoT μπορεί να ξεκινήσει με διάφορους τρόπους:

  • φόρτωση της εικόνας και του κλειδιού ρίζας από υλικολογισμικό ή αμετάβλητη μνήμη.
  • αποθήκευση του κλειδιού ρίζας σε μία προγραμματιζόμενη μνήμη με χρήση bits ασφαλειών.
  • Φόρτωση κώδικα από προστατευμένη περιοχή μνήμης σε προστατευμένο χώρο αποθήκευσης.

Διαφορετικοί επεξεργαστές εφαρμόζουν τη ρίζα της εμπιστοσύνης με διαφορετικό τρόπο. Intel και ARM
υποστηρίζουν τις ακόλουθες τεχνολογίες:

  • ARM TrustZone. Η ARM πουλά ένα αποκλειστικό μπλοκ πυριτίου σε κατασκευαστές τσιπ που παρέχει μια ρίζα εμπιστοσύνης και άλλους μηχανισμούς ασφαλείας. Αυτό διαχωρίζει τον μικροεπεξεργαστή από τον μη ασφαλή πυρήνα. εκτελεί το Trusted OS, ένα ασφαλές λειτουργικό σύστημα με μια καλά καθορισμένη διεπαφή για αλληλεπίδραση με μη ασφαλή στοιχεία. Οι προστατευμένοι πόροι βρίσκονται στον αξιόπιστο πυρήνα και θα πρέπει να είναι όσο το δυνατόν πιο ελαφροί. Η εναλλαγή μεταξύ στοιχείων διαφορετικών τύπων πραγματοποιείται με τη χρήση εναλλαγής περιβάλλοντος υλικού, εξαλείφοντας την ανάγκη για ασφαλές λογισμικό παρακολούθησης.
  • Intel Boot Guard είναι ένας μηχανισμός υλικού για την επαλήθευση της γνησιότητας του αρχικού μπλοκ εκκίνησης με κρυπτογραφικά μέσα ή μέσω μιας διαδικασίας μέτρησης. Για την επαλήθευση του αρχικού μπλοκ, ο κατασκευαστής πρέπει να δημιουργήσει ένα κλειδί 2048-bit, το οποίο αποτελείται από δύο μέρη: δημόσιο και ιδιωτικό. Το δημόσιο κλειδί τυπώνεται στην πλακέτα «εκρηκνίζοντας» τα κομματάκια ασφάλειας κατά την κατασκευή. Αυτά τα bit είναι μίας χρήσης και δεν μπορούν να αλλάξουν. Το ιδιωτικό τμήμα του κλειδιού δημιουργεί μια ψηφιακή υπογραφή για επακόλουθο έλεγχο ταυτότητας του σταδίου λήψης.

Η πλατφόρμα OpenTitan εκθέτει βασικά μέρη ενός τέτοιου συστήματος υλικού/λογισμικού, όπως φαίνεται στο παρακάτω διάγραμμα.

Το τσιπ ανοιχτού κώδικα OpenTitan θα αντικαταστήσει τις ιδιόκτητες ρίζες εμπιστοσύνης της Intel και της ARM

Πλατφόρμα OpenTitan

Η ανάπτυξη της πλατφόρμας OpenTitan διαχειρίζεται ο μη κερδοσκοπικός οργανισμός lowRISC. Η ομάδα μηχανικών εδρεύει στο Κέιμπριτζ (Ηνωμένο Βασίλειο) και ο κύριος χορηγός είναι η Google. Οι ιδρυτικοί εταίροι περιλαμβάνουν τις ETH Zurich, G+D Mobile Security, Nuvoton Technology και Western Digital.

Google εξέδωσε ανακοίνωση έργο στο εταιρικό ιστολόγιο Google Open Source. Η εταιρεία είπε ότι το OpenTitan έχει δεσμευτεί να "παρέχει υψηλής ποιότητας καθοδήγηση σχετικά με το σχεδιασμό και την ενσωμάτωση RoT για χρήση σε διακομιστές κέντρων δεδομένων, αποθήκευση, συσκευές αιχμής και πολλά άλλα."

Η ρίζα της εμπιστοσύνης είναι ο πρώτος κρίκος στην αλυσίδα εμπιστοσύνης στο χαμηλότερο επίπεδο σε μια αξιόπιστη μονάδα υπολογιστών, η οποία είναι πάντα πλήρως αξιόπιστη από το σύστημα.

Το RoT είναι κρίσιμο για εφαρμογές συμπεριλαμβανομένων των υποδομών δημόσιου κλειδιού (PKIs). Είναι το θεμέλιο του συστήματος ασφαλείας στο οποίο βασίζεται ένα πολύπλοκο σύστημα όπως μια εφαρμογή IoT ή ένα κέντρο δεδομένων. Επομένως, είναι ξεκάθαρο γιατί η Google υποστηρίζει αυτό το έργο. Τώρα διαθέτει 19 κέντρα δεδομένων σε πέντε ηπείρους. Τα κέντρα δεδομένων, η αποθήκευση και οι κρίσιμες για την αποστολή εφαρμογές παρουσιάζουν μια τεράστια επιφάνεια επίθεσης και για την προστασία αυτής της υποδομής, η Google ανέπτυξε αρχικά τη δική της ρίζα εμπιστοσύνης στο τσιπ Titan.

Ιδιόκτητο τσιπ Titan για τα κέντρα δεδομένων της Google παρουσιάστηκε για πρώτη φορά τον Μάρτιο του 2017 στο συνέδριο Google Cloud Next. «Οι υπολογιστές μας εκτελούν κρυπτογραφικούς ελέγχους σε κάθε πακέτο λογισμικού και στη συνέχεια αποφασίζουν εάν θα του παραχωρήσουν πρόσβαση σε πόρους δικτύου. Ο Titan ενσωματώνεται σε αυτή τη διαδικασία και προσφέρει πρόσθετα επίπεδα προστασίας», δήλωσαν εκπρόσωποι της Google σε εκείνη την παρουσίαση.

Το τσιπ ανοιχτού κώδικα OpenTitan θα αντικαταστήσει τις ιδιόκτητες ρίζες εμπιστοσύνης της Intel και της ARM
Τσιπ Titan στον διακομιστή Google

Η αρχιτεκτονική Titan ανήκε στο παρελθόν στην Google, αλλά τώρα γίνεται δημόσιος τομέας ως έργο ανοιχτού κώδικα.

Το πρώτο στάδιο του έργου είναι η δημιουργία ενός λογικού σχεδιασμού RoT σε επίπεδο chip, συμπεριλαμβανομένου ενός μικροεπεξεργαστή ανοιχτού κώδικα αγριοκάτσικο lowRISC, κρυπτογραφικοί επεξεργαστές, συσκευή δημιουργίας τυχαίων αριθμών υλικού, ιεραρχίες κλειδιών και μνήμης για μη πτητική και μη πτητική αποθήκευση, μηχανισμοί ασφαλείας, περιφερειακά I/O και διαδικασίες ασφαλούς εκκίνησης.

Η Google λέει ότι το OpenTitan βασίζεται σε τρεις βασικές αρχές:

  • όλοι έχουν την ευκαιρία να ελέγξουν την πλατφόρμα και να συνεισφέρουν.
  • αυξημένη ευελιξία ανοίγοντας λογικά ασφαλή σχεδιασμό που δεν εμποδίζεται από περιορισμούς αποκλειστικού προμηθευτή.
  • ποιότητα που διασφαλίζεται όχι μόνο από το ίδιο το σχέδιο, αλλά και από το υλικολογισμικό αναφοράς και την τεκμηρίωση.

«Τα τρέχοντα τσιπ με ρίζες εμπιστοσύνης είναι πολύ ιδιόκτητα. Ισχυρίζονται ότι είναι ασφαλείς, αλλά στην πραγματικότητα, το θεωρείτε δεδομένο και δεν μπορείτε να το επαληθεύσετε μόνοι σας, λέει ο Dominic Rizzo, επικεφαλής ειδικός ασφαλείας για το έργο Google Titan. «Τώρα, για πρώτη φορά, είναι δυνατό να παρέχουμε ασφάλεια χωρίς τυφλή πίστη στους προγραμματιστές μιας ιδιόκτητης ρίζας σχεδίασης εμπιστοσύνης. Έτσι, το θεμέλιο δεν είναι μόνο στέρεο, αλλά μπορεί να επαληθευτεί».

Ο Rizzo πρόσθεσε ότι το OpenTitan μπορεί να θεωρηθεί «ένα ριζικά διαφανές σχέδιο σε σύγκριση με την τρέχουσα κατάσταση των πραγμάτων».

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

Για να ξεκινήσετε την παραγωγή τσιπ OpenTitan, πρέπει να κάνετε αίτηση και να πιστοποιηθείτε. Προφανώς, δεν απαιτούνται δικαιώματα.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο