Οι συγγραφείς: Κύριε Κιμ Jinbum Park Σιγιόν Ροχ Τζέινγκ Τσανγκ Γιούνκερ Λι Μιχάλης Κιμ Μπιγιονγκγιόν Λι Authors: Κύριε Κιμ Πάρκο Τζινμπουμ Σιγιόν Ροχ Τζέινγκ Τσανγκ Γιούνκερ Λι Μιχάλης Κιμ Μπιγιονγκγιόν Λι Table Of Links Το τραπέζι της Αριστεράς ΑΠΑΣΧΟΛΗΣΗ 1. Introduction 1) Εισαγωγή 2. Background 2 Το υπόβαθρο Επέκταση μνήμης Επιθέσεις κερδοσκοπικής εκτέλεσης 3. Threat Model Μοντέλο απειλής 4. Finding Tag Leakage Gadgets Βρίσκοντας Tag Leakage Gadgets Ετικέτες ΔΙΑΒΑΣΤΕ ΤΟ TEMPLE Ετικέτες Fuzzing 5. TIKTAG Gadgets Ετικέτες gadgets TIKTAG-v1: Εκμετάλλευση της συρρίκνωσης της κερδοσκοπίας TIKTAG-v2: Εκμετάλλευση της προώθησης από το κατάστημα στο φορτίο 6. Real-World Attacks ΕΠΙΘΕΣΕΙΣ ΤΟΥ ΠΡΑΓΜΑΤΙΚΟΥ ΚΟΣΜΟΥ 6.1 Επίθεση στο Chrome 7. Evaluation 7 Αξιολόγηση 8. Related work 8 ΣΧΕΤΙΚΗ ΕΡΓΑΣΙΑ 9. Conclusion And References Συμπεράσματα και παραπομπές Abstract ΑΠΑΣΧΟΛΗΣΗ Η επέκταση ARM Memory Tagging Extension (MTE) είναι ένα νέο χαρακτηριστικό υλικού που εισήχθη στην αρχιτεκτονική ARMv8.5-A, με στόχο την ανίχνευση τρωτών σημείων ευπάθειας στη διαφθορά της μνήμης. Η χαμηλή επικράτηση του MTE το καθιστά μια ελκυστική λύση για τον μετριασμό επιθέσεων διαφθοράς μνήμης στα σύγχρονα λογισμικά συστήματα και θεωρείται η πιο ελπιδοφόρα πορεία προς τα εμπρός για τη βελτίωση της ασφάλειας του λογισμικού C/C++. Συγκεκριμένα, αυτό το έγγραφο εντοπίζει νέα gadgets TIKTAG ικανά να διαρρεύσουν τις ετικέτες MTE από αυθαίρετες διευθύνσεις μνήμης μέσω κερδοσκοπικής εκτέλεσης.Με τα gadgets TIKTAG, οι επιτιθέμενοι μπορούν να παρακάμψουν την πιθανότητα της άμυνας του MTE, αυξάνοντας το ποσοστό επιτυχίας της επίθεσης κατά σχεδόν 100%. Τα πειραματικά αποτελέσματα δείχνουν ότι τα gadgets TIKTAG μπορούν να διαρρεύσουν με επιτυχία μια ετικέτα MTE με ποσοστό επιτυχίας μεγαλύτερο από 95% σε λιγότερο από 4 δευτερόλεπτα. Εισαγωγή Οι ευπάθειες διαφθοράς μνήμης παρουσιάζουν σημαντικές απειλές ασφαλείας για τα συστήματα υπολογιστών. Εκμεταλλευόμενος μια ευπάθεια διαφθοράς μνήμης, ένας επιτιθέμενος διαφθείρει τα δεδομένα που είναι αποθηκευμένα σε μια μνήμη, απαγάγει τη ροή ελέγχου ή επεξεργάζεται τα δεδομένα του θύματος. Σε απάντηση σε αυτές τις απειλές, η επέκταση ARM Memory Tagging Extension (MTE) έχει προταθεί πρόσφατα από το ARMv8.5- Μια αρχιτεκτονική, η οποία είναι μια νέα επέκταση υλικού για τον μετριασμό των επιθέσεων διαφθοράς της μνήμης. Στη συνέχεια, εκτελείται μια λειτουργία ελέγχου ετικετών κατά την πρόσβαση στη μνήμη, η οποία συγκρίνει δύο ετικέτες, μία ενσωματωμένη μέσα στον δείκτη για να αποκτήσει πρόσβαση στη μνήμη και η άλλη που σχετίζεται με την τοποθεσία μνήμης για να αποκτήσει πρόσβαση. Χρησιμοποιώντας το MTE, μπορούν να αναπτυχθούν διάφορες τεχνικές μετριασμού ανάλογα με το ποια ετικέτα έχει εκχωρηθεί ή ποιες περιοχές μνήμης έχουν επισημανθεί.Για παράδειγμα, οι κατανεμητές μνήμης που υποστηρίζονται από το MTE, όπως το Android Scudo [3] και το Chrome PartitionAlloc [2], εκχωρούν μια τυχαία ετικέτα για όλες τις δυναμικά εκχωρημένες μνήμες. Στη συνέχεια, ένας δείκτης σε αυτή την κατανεμημένη μνήμη ενσωματώνει την ετικέτα, και καθώς ο δείκτης πολλαπλασιάζεται, η ετικέτα πολλαπλασιάζεται ανάλογα. Όταν αποκτάται πρόσβαση σε οποιαδήποτε δυναμικά κατανεμημένη μνήμη, εφαρμόζεται μια λειτουργία ελέγχου ετικετών. Δεδομένου ότι οι ετικέτες εκχωρούνται τυχαία κατά τη διάρκεια του χρόνου εκτέλεσης, είναι δύσκολο για τον επιτιθέμενο να μαντέψει σωστά την ετικέτα. Η MTE εισάγει σημαντικές προκλήσεις για τους επιτιθέμενους να εκμεταλλευτούν την ευπάθεια διαφθοράς της μνήμης. Αυτό οφείλεται στο γεγονός ότι οι λύσεις που βασίζονται στην MTE ανιχνεύουν μια συμπεριφορά παραβίασης κοντά στην ριζική αιτία της διαφθοράς της χωρικής και χρονικής μνήμης. Ειδικότερα, δεδομένου ότι η MTE διασφαλίζει ότι η σχέση μεταξύ ενός δείκτη και μιας θέσης μνήμης δεν είναι κατεστραμμένη, ανιχνεύει άμεσα τις διαφθορές - δηλαδή, η MTE ανιχνεύει άμεσα τη στιγμή κατά την οποία η πρόσβαση εκτός ορίων λαμβάνει χώρα σε μια ευπάθεια υπερφόρτωσης ή όταν ένας δείκτης κλίσης αναπροσαρμόζεται σε δωρεάν μετά τη Αυτό προσφέρει ισχυρά πλεονεκτήματα ασφαλείας στο MTE, ιδιαίτερα σε σύγκριση με τις δημοφιλείς τεχνικές μετριασμού όπως το CFI [6, 52, 62], το οποίο δεν ανιχνεύει διαφθορά μνήμης αλλά ανιχνεύει συμπεριφορά απαγωγής ροής ελέγχου (δηλαδή συμπεριφορά εκμετάλλευσης). Σε αυτό το έγγραφο, μελετάμε αν η MTE παρέχει την εγγύηση ασφαλείας όπως υποσχέθηκε. Συγκεκριμένα, αναλύσαμε αν οι επιθέσεις κερδοσκοπικής εκτέλεσης μπορούν να αποτελέσουν απειλή για την παραβίαση της MTE. Για να συνοψίσουμε τα αποτελέσματά μας, διαπιστώσαμε ότι οι επιθέσεις κερδοσκοπικής εκτέλεσης είναι πράγματι δυνατές εναντίον της MTE, η οποία βλάπτει σοβαρά την εγγύηση ασφαλείας της MTE. Ανακαλύψαμε δύο νέα gadgets, που ονομάζονται TIKTAG-v1 και TIKTAG-v2, τα οποία μπορούν να διαρρεύσουν την ετικέτα MTE μιας αυθαίρετης διεύθυνσης μνήμης. Συγκεκριμένα, το TIKTAG-v1 εκμεταλλεύεται τη συρρίκνωση των κερδοσκοπικών προβλέψεων του κλάδου και των προκατασκευαστών δεδομένων, ενώ το TIKTAGv2 εκμεταλλεύεται τη συμπεριφορά προώθησης από το κατάστημα στο φορτίο. Για να αποδείξουμε την εκμετάλλευση των μετριαστικών μέτρων που βασίζονται στον πραγματικό κόσμο, αναπτύξαμε δύο πραγματικές επιθέσεις με ξεχωριστές επιφάνειες επίθεσης: το Google Chrome και τον πυρήνα του Linux. Τα αποτελέσματα της αξιολόγησής μας δείχνουν ότι τα gadgets του TIKTAG μπορούν να διαρρεύσουν ετικέτες MTE με ποσοστό επιτυχίας υψηλότερο από 95% σε λιγότερο από 4 δευτερόλεπτα Προτείνουμε περαιτέρω προγράμματα μετριασμού για την πρόληψη της εκμετάλλευσης των gadgets TIKTAG διατηρώντας παράλληλα τα οφέλη από τη χρήση του MTE. Σε σύγκριση με τις προηγούμενες εργασίες σχετικά με τα sidechannels MTE [22, 38], πιστεύουμε ότι αυτό το έγγραφο προσφέρει μοναδικές συνεισφορές για τους ακόλουθους λόγους. Πρώτον, το Project Zero της Google ανέφερε ότι δεν ήταν σε θέση να βρουν κερδοσκοπική διαρροή ετικετών από τους μηχανισμούς MTE [38]. κατέληξαν στο συμπέρασμα ότι τα αποτελέσματα κερδοσκοπικού ελέγχου MTE δεν προκαλούν διακριτές διαφορές στην κατάσταση cache μεταξύ της επιτυχίας και της αποτυχίας του ελέγχου ετικετών. Αντίθετα, διαπιστώσαμε ότι οι έλεγχοι ετικετών δημιουργούν πράγματι τη διαφορά στην κατάσταση cache στην κερδοσκοπική εκτέλεση. Μια άλλη ανεξάρτητη εργασία, οι StickyTags [22], ανακάλυψαν ένα gadget διαρροής ετικετών MTE, το οποίο είναι ένα παράδειγμα του gadget TIKTAG-v1, και υποψιάστηκαν ότι η ριζική αιτία είναι στη διαμάχη μνήμης για τα ψεύτικα σφάλματα ελέγχου ετικετών. Αυτό το έγγραφο αναφέρει επίσης νέα gadgets διαρροής ετικετών MTE, συγκεκριμένα τις παραλλαγές του gadget TIKTAGv1 και το νέο gadget TIKTAG-v2, μαζί με την ανάπτυξη εκμετάλλευσης κατά του Chrome και του πυρήνα του Linux. Επιπλέον, αυτό το έγγραφο προτείνει νέους μηχανισμούς άμυνας για να αποτρέψει τα gadgets TIKTAG από τη διαρροή ετικετών MTE, τόσο σε επίπεδο υλικού όσο και λογισμικού. Δεδομένου του ισχυρού πλεονεκτήματος ασφαλείας του, αναμένεται ότι ένας μεγάλος αριθμός μετριασμών που βασίζονται σε MTE (π.χ. προστασία ευαίσθητων δεδομένων [29, 31] και ακεραιότητα ροής δεδομένων [13, 40, 60]) αναμένεται να αναπτυχθούν στο εγγύς μέλλον σε συσκευές που υποστηρίζουν MTE (π.χ. κινητά τηλέφωνα Android). Ως εκ τούτου, τα αποτελέσματα αυτής της εργασίας, ιδιαίτερα για το πώς κατασκευάζονται τα gadgets TIKTAG και πώς μπορούν να διαρρεύσουν οι ετικέτες MTE, ρίχνουν φως στο πώς θα πρέπει να σχεδιαστούν οι λύσεις που βασίζονται σε MTE ή πώς θα πρέπει να εφαρμοστεί η CPU σε μικροαρχιτεκτονικό επίπεδο. Αναφέρθηκαν gadgets διαρροής ετικετών MTE στην ARM τον Νοέμβριο του 2023.Η ARM αναγνώρισε και αποκάλυψε δημοσίως το πρόβλημα τον Δεκέμβριο του 2023 [34].Μια άλλη ερευνητική ομάδα ανέφερε ένα παρόμοιο πρόβλημα με την ARM και δημοσίευσε τα ευρήματά της [22], τα οποία διεξήχθησαν ανεξάρτητα από τη δουλειά μας. Η υπεύθυνη αποκάλυψη. Έχουμε αναφέρει τις κερδοσκοπικές ευπάθειες στο Google Chrome V8 στην ομάδα ασφαλείας του Chrome τον Δεκέμβριο του 2023. αναγνώρισαν τα προβλήματα, αλλά αποφάσισαν να μην διορθώσουν τις ευπάθειες επειδή το sandbox V8 δεν προορίζεται να εγγυηθεί το απόρρητο των δεδομένων μνήμης και των ετικετών MTE. Ωστόσο, πιστεύουμε ότι η ασφάλεια του προγράμματος περιήγησης μπορεί να βελτιωθεί εάν αναπτυχθούν υπεράσπιση με βάση το MTE με τα αντίμετρα που προτείνουμε (§6.1.4).Έχουμε επίσης αναφέρει τα οράματα MTE στη συσκευή Pixel 8 στην ομάδα ασφαλείας Android τον Απρίλιο του 2024.Η ομάδα ασφαλείας Android αναγνώρισε το πρόβλημα ως ελάττωμα υλικού του Pixel 8, αποφάσισε να αντιμετωπίσει το πρόβλημα στην υπεράσπιση με βάση το MTE του Android και απονεμήθηκε μια ανταμοιβή για την έκθεση. Αυτό το έγγραφο είναι διαθέσιμο στο archiv υπό την άδεια CC 4.0. Αυτό το έγγραφο είναι με την άδεια CC 4.0. available on arx iv iv