SQUIP - επίθεση σε επεξεργαστές AMD, που οδηγεί σε διαρροή δεδομένων μέσω καναλιών τρίτων

Μια ομάδα ερευνητών από το Τεχνικό Πανεπιστήμιο του Γκρατς (Αυστρία), γνωστό στο παρελθόν για την ανάπτυξη των επιθέσεων MDS, NetSpectre, Throwhammer και ZombieLoad, αποκάλυψε πληροφορίες σχετικά με μια νέα μέθοδο επίθεσης πλευρικού καναλιού (CVE-2021-46778) στον επεξεργαστή AMD. ουρά προγραμματιστή, που χρησιμοποιείται για τον προγραμματισμό της εκτέλεσης εντολών σε διαφορετικές μονάδες εκτέλεσης της CPU. Η επίθεση, που ονομάζεται SQUIP, σας επιτρέπει να προσδιορίσετε τα δεδομένα που χρησιμοποιούνται σε υπολογισμούς σε άλλη διεργασία ή εικονική μηχανή ή να οργανώσετε ένα κρυφό κανάλι επικοινωνίας μεταξύ διεργασιών ή εικονικών μηχανών, επιτρέποντάς σας να ανταλλάσσετε δεδομένα παρακάμπτοντας τους μηχανισμούς ελέγχου πρόσβασης του συστήματος.

Το πρόβλημα επηρεάζει τους επεξεργαστές AMD που βασίζονται σε μικροαρχιτεκτονικές Zen πρώτης, δεύτερης και τρίτης γενιάς (AMD Ryzen 2000-5000, AMD Ryzen Threadripper, AMD Athlon 3000, AMD EPYC) όταν χρησιμοποιείται τεχνολογία ταυτόχρονης πολλαπλών νημάτων (SMT). Οι επεξεργαστές της Intel δεν είναι επιρρεπείς σε επιθέσεις επειδή χρησιμοποιούν μία ουρά προγραμματιστή, ενώ οι ευάλωτοι επεξεργαστές AMD χρησιμοποιούν ξεχωριστές ουρές για κάθε μονάδα εκτέλεσης. Ως λύση για τον αποκλεισμό της διαρροής πληροφοριών, η AMD συνέστησε στους προγραμματιστές να χρησιμοποιούν αλγόριθμους στους οποίους οι μαθηματικοί υπολογισμοί εκτελούνται πάντα σε σταθερό χρόνο, ανεξάρτητα από τη φύση των δεδομένων που υποβάλλονται σε επεξεργασία, και επίσης να αποφεύγουν τη διακλάδωση βάσει μυστικών δεδομένων.

Η επίθεση βασίζεται στην αξιολόγηση του επιπέδου αμφισβήτησης σε διαφορετικές ουρές προγραμματιστή και πραγματοποιείται με τη μέτρηση των καθυστερήσεων κατά την εκκίνηση λειτουργιών επαλήθευσης που εκτελούνται σε άλλο νήμα SMT στην ίδια φυσική CPU. Για την ανάλυση του περιεχομένου, χρησιμοποιήθηκε η μέθοδος Prime+Probe, η οποία περιλαμβάνει την πλήρωση της ουράς με ένα τυπικό σύνολο τιμών και την ανίχνευση αλλαγών μετρώντας τον χρόνο πρόσβασης σε αυτές κατά την επαναπλήρωσή τους.

Κατά τη διάρκεια του πειράματος, οι ερευνητές μπόρεσαν να αναδημιουργήσουν πλήρως το ιδιωτικό κλειδί RSA 4096-bit που χρησιμοποιήθηκε για τη δημιουργία ψηφιακών υπογραφών χρησιμοποιώντας την κρυπτογραφική βιβλιοθήκη mbedTLS 3.0, η οποία χρησιμοποιεί τον αλγόριθμο Montgomery για να αυξήσει ένα modulo αριθμού. Χρειάστηκαν 50500 ίχνη για να προσδιοριστεί το κλειδί. Ο συνολικός χρόνος επίθεσης κράτησε 38 λεπτά. Επιδεικνύονται παραλλαγές επίθεσης που παρέχουν διαρροή μεταξύ διαφορετικών διεργασιών και εικονικών μηχανών που διαχειρίζεται ο υπερεπόπτης KVM. Αποδεικνύεται επίσης ότι η μέθοδος μπορεί να χρησιμοποιηθεί για την οργάνωση κρυφής μεταφοράς δεδομένων μεταξύ εικονικών μηχανών με ταχύτητα 0.89 Mbit/s και μεταξύ διεργασιών με ταχύτητα 2.70 Mbit/s με ποσοστό σφάλματος μικρότερο από 0.8%.

Πηγή: opennet.ru

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