Μια νέα ευπάθεια με το όνομα «LeftoverLocals» που επηρεάζει τις μονάδες επεξεργασίας γραφικών από τις AMD, Apple, Qualcomm και Imagination Technologies επιτρέπει την ανάκτηση δεδομένων από τον τοπικό χώρο μνήμης.
Παρακολούθηση ως CVE-2023-4969, το ζήτημα ασφαλείας επιτρέπει την ανάκτηση δεδομένων από ευάλωτες GPU, ειδικά στο πλαίσιο των μεγάλων μοντέλων γλώσσας (LLM) και των διαδικασιών μηχανικής εκμάθησης (ML).
Το
LeftoverLocals ανακαλύφθηκε από τους ερευνητές του Trail of Bits, Tyler Sorensen και Heidy Khlaaf, οι οποίοι το ανέφεραν ιδιωτικά στους προμηθευτές πριν δημοσιεύσουν μια τεχνική επισκόπηση.
Λεπτομέρειες LeftoverLocals
Το ελάττωμα ασφαλείας προέρχεται από το γεγονός ότι ορισμένα πλαίσια GPU δεν απομονώνουν πλήρως τη μνήμη και ένας πυρήνας που εκτελείται στο μηχάνημα θα μπορούσε να διαβάσει τιμές στην τοπική μνήμη γραμμένες από έναν άλλο πυρήνα.
Οι ερευνητές του Trail of Bits, Tyler Sorensen και Heidy Khlaaf, που ανακάλυψαν και ανέφεραν την ευπάθεια, εξηγούν ότι ένας αντίπαλος χρειάζεται μόνο να εκτελέσει μια εφαρμογή υπολογισμού GPU (π.χ. OpenCL, Vulkan, Metal) για να διαβάσει δεδομένα που άφησε ένας χρήστης στην τοπική μνήμη GPU.
“Χρησιμοποιώντας αυτά, ο εισβολέας μπορεί να διαβάσει δεδομένα που έχει αφήσει το θύμα στην τοπική μνήμη GPU απλά γράφοντας έναν πυρήνα GPU που απορρίπτει την τοπική μνήμη που δεν έχει αρχικοποιηθεί” –
Trail of Bits
Το LeftoverLocals επιτρέπει στους εισβολείς να εκκινήσουν έναν «ακροατή» – έναν πυρήνα GPU που διαβάζει από μη αρχικοποιημένη τοπική μνήμη και μπορεί να απορρίψει τα δεδομένα σε μια μόνιμη τοποθεσία, όπως η καθολική μνήμη.
Εάν η τοπική μνήμη δεν εκκαθαριστεί, ο εισβολέας μπορεί να χρησιμοποιήσει τον ακροατή για να διαβάσει τις τιμές που άφησε πίσω του ο «συγγραφέας» – ένα πρόγραμμα που αποθηκεύει τιμές στην τοπική μνήμη.
Η παρακάτω κινούμενη εικόνα δείχνει πώς αλληλεπιδρούν τα προγράμματα του συγγραφέα και του ακροατή και πώς το δεύτερο μπορεί να ανακτήσει δεδομένα από τα πρώτα σε επηρεαζόμενες GPU.
Τα ανακτημένα δεδομένα μπορούν να αποκαλύψουν ευαίσθητες πληροφορίες σχετικά με τους υπολογισμούς του θύματος, συμπεριλαμβανομένων των εισόδων, των εξόδων, των βαρών και των ενδιάμεσων υπολογισμών μοντέλων.
Σε ένα περιβάλλον GPU πολλαπλών ενοικιαστών που εκτελούν LLM, το LeftoverLocals μπορεί να χρησιμοποιηθεί για την ακρόαση διαδραστικών συνόδων σύνδεσης άλλων χρηστών και την ανάκτηση από την τοπική μνήμη της GPU των δεδομένων από τη διαδικασία “writer” του θύματος.
Οι ερευνητές του Trail of Bits δημιούργησαν ένα
απόδειξη της ιδέας (PoC)
για να επιδείξει το LeftoverLocals και έδειξε ότι ένας αντίπαλος μπορεί να ανακτήσει 5,5 MB δεδομένων ανά επίκληση GPU, ανάλογα με το πλαίσιο GPU.
Σε ένα
AMD Radeon
RX
7900 XT
που τροφοδοτεί το ανοιχτού κώδικα LLM llama.cpp, ένας εισβολέας μπορεί να πάρει έως και 181 MB ανά ερώτημα, το οποίο είναι αρκετό για την ανασύσταση των απαντήσεων του LLM με υψηλή ακρίβεια.
Επιπτώσεις και αποκατάσταση
Οι ερευνητές του Trail of Bits ανακάλυψαν το CVE-2023-4969 τον Σεπτέμβριο του 2023 και
ενημέρωσε το CERT/CC
για να βοηθήσει στο συντονισμό των προσπαθειών αποκάλυψης και επιδιόρθωσης.
Οι προσπάθειες μετριασμού βρίσκονται σε εξέλιξη καθώς ορισμένοι πωλητές το έχουν ήδη επιδιορθώσει, ενώ άλλοι εξακολουθούν να εργάζονται σε έναν τρόπο ανάπτυξης και εφαρμογής ενός αμυντικού μηχανισμού.
Στην περίπτωση της Apple, το πιο πρόσφατο
iPhone 15
δεν επηρεάζεται και έγιναν διαθέσιμες επιδιορθώσεις για επεξεργαστές A17 και M3, αλλά το πρόβλημα παραμένει σε υπολογιστές που τροφοδοτούνται από M2.
Η AMD ενημέρωσε ότι το
ακολουθώντας τα μοντέλα GPU
παραμένει ευάλωτη καθώς οι μηχανικοί της διερευνούν αποτελεσματικές στρατηγικές μετριασμού.
Η Qualcomm κυκλοφόρησε μια ενημέρωση κώδικα μέσω υλικολογισμικού v2.0.7 που διορθώνει το LeftoverLocals σε ορισμένα
τσιπ
, αλλά άλλα παραμένουν ευάλωτα.
Η Imagination κυκλοφόρησε μια επιδιόρθωση στο DDK v23.3 τον Δεκέμβριο του 2023. Ωστόσο, η Google προειδοποίησε τον Ιανουάριο του 2024 ότι ορισμένες από τις GPU του προμηθευτή εξακολουθούν να επηρεάζονται.
Οι GPU της Intel, της NVIDIA και της ARM έχουν αναφέρει ότι το πρόβλημα διαρροής δεδομένων δεν επηρεάζει τις συσκευές τους.
Το Trail of Bits προτείνει ότι οι προμηθευτές GPU εφαρμόζουν έναν αυτόματο μηχανισμό εκκαθάρισης τοπικής μνήμης μεταξύ των κλήσεων του πυρήνα, διασφαλίζοντας την απομόνωση των ευαίσθητων δεδομένων που έχουν γραφτεί από μία διεργασία.
Ενώ αυτή η προσέγγιση μπορεί να εισάγει κάποια γενικά έξοδα απόδοσης, οι ερευνητές προτείνουν ότι η αντιστάθμιση δικαιολογείται δεδομένης της σοβαρότητας των επιπτώσεων στην ασφάλεια.
Άλλοι πιθανοί μετριασμούς περιλαμβάνουν την αποφυγή περιβαλλόντων GPU πολλαπλών ενοικιαστών σε κρίσιμα για την ασφάλεια σενάρια και την εφαρμογή μετριασμού σε επίπεδο χρήστη.
VIA:
bleepingcomputer.com

