Επίθεση PMFault που μπορεί να απενεργοποιήσει την CPU σε ορισμένα συστήματα διακομιστών

Ερευνητές στο Πανεπιστήμιο του Μπέρμιγχαμ, παλαιότερα γνωστό για την ανάπτυξη των επιθέσεων Plundervolt και VoltPillager, εντόπισαν μια ευπάθεια (CVE-2022-43309) σε ορισμένες μητρικές πλακέτες διακομιστών που μπορούν να απενεργοποιήσουν φυσικά τη CPU χωρίς τη δυνατότητα επακόλουθης ανάκτησης. Η ευπάθεια, με την κωδική ονομασία PMFault, μπορεί να χρησιμοποιηθεί για να βλάψει διακομιστές στους οποίους ένας εισβολέας δεν έχει φυσική πρόσβαση, αλλά έχει προνομιακή πρόσβαση στο λειτουργικό σύστημα, που λαμβάνεται, για παράδειγμα, ως αποτέλεσμα της εκμετάλλευσης μιας ευπάθειας που δεν έχει επιδιορθωθεί ή της υποκλοπής διαπιστευτηρίων διαχειριστή.

Η ουσία της προτεινόμενης μεθόδου είναι η χρήση της διεπαφής PMBus, η οποία χρησιμοποιεί το πρωτόκολλο I2C, για να αυξήσει την τάση που παρέχεται στον επεξεργαστή σε τιμές που προκαλούν ζημιά στο τσιπ. Η διεπαφή PMBus συνήθως υλοποιείται στο VRM (Voltage Regulator Module), στο οποίο μπορεί να προσπελαστεί μέσω χειρισμού του ελεγκτή BMC. Για να επιτεθείτε σε πλακέτες που υποστηρίζουν PMBus, εκτός από τα δικαιώματα διαχειριστή στο λειτουργικό σύστημα, πρέπει να έχετε πρόσβαση μέσω προγραμματισμού στο BMC (Baseboard Management Controller), για παράδειγμα, μέσω της διασύνδεσης IPMI KCS (Style Controller Keyboard), μέσω Ethernet ή μέσω αναβοσβήνει το BMC από το τρέχον σύστημα.

Ένα ζήτημα που επιτρέπει μια επίθεση χωρίς γνώση των παραμέτρων ελέγχου ταυτότητας BMC έχει επιβεβαιωθεί σε μητρικές πλακέτες Supermicro με υποστήριξη IPMI (X11, X12, H11 και H12) και ASRock, αλλά επηρεάζονται και άλλες πλακέτες διακομιστών που έχουν πρόσβαση στο PMBus. Κατά τη διάρκεια των πειραμάτων, όταν η τάση αυξήθηκε στα 2.84 βολτ, δύο επεξεργαστές Intel Xeon υπέστησαν ζημιά σε αυτές τις πλακέτες. Για πρόσβαση στο BMC χωρίς να γνωρίζετε τις παραμέτρους ελέγχου ταυτότητας, αλλά με πρόσβαση root στο λειτουργικό σύστημα, χρησιμοποιήθηκε μια ευπάθεια στον μηχανισμό επαλήθευσης υλικολογισμικού, η οποία κατέστησε δυνατή τη λήψη μιας τροποποιημένης ενημέρωσης υλικολογισμικού στον ελεγκτή BMC, καθώς και τη δυνατότητα πρόσβαση χωρίς έλεγχο ταυτότητας μέσω IPMI KCS.

Η μέθοδος αλλαγής τάσης μέσω PMBus μπορεί επίσης να χρησιμοποιηθεί για την εκτέλεση μιας επίθεσης Plundervolt, η οποία επιτρέπει, μειώνοντας την τάση σε ελάχιστες τιμές, να προκληθεί ζημιά στα περιεχόμενα των κυψελών δεδομένων στην CPU που χρησιμοποιείται σε υπολογισμούς σε απομονωμένους θύλακες Intel SGX και να δημιουργήσει σφάλματα σε αρχικά σωστούς αλγόριθμους. Για παράδειγμα, εάν αλλάξετε την τιμή που χρησιμοποιείται στον πολλαπλασιασμό κατά τη διαδικασία κρυπτογράφησης, η έξοδος θα είναι ένα μη έγκυρο κρυπτογραφημένο κείμενο. Με τη δυνατότητα κλήσης ενός χειριστή στο SGX για να κρυπτογραφήσει τα δεδομένα του, ένας εισβολέας μπορεί, προκαλώντας αποτυχίες, να συγκεντρώσει στατιστικά στοιχεία σχετικά με την αλλαγή στο κρυπτογραφημένο κείμενο εξόδου και να ανακτήσει την τιμή του κλειδιού που είναι αποθηκευμένο στον θύλακα SGX.

Μια εργαλειοθήκη για επίθεση σε πλακέτες Supermicro και ASRock, καθώς και ένα βοηθητικό πρόγραμμα για έλεγχο πρόσβασης στο PMBus, δημοσιεύονται στο GitHub.

Πηγή: opennet.ru

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