Marvin Attack, μια επίθεση σπασίματος RSA βασισμένη στον χρόνο

Marvin Attack

Το Marvin είναι η επιστροφή μιας ευπάθειας 25 ετών που επιτρέπει λειτουργίες υπογραφής και αποκρυπτογράφησης RSA

Κατά τη διάρκεια του ESORICS 2023 (Ευρωπαϊκό Συμπόσιο για την Έρευνα για την Ασφάλεια Υπολογιστών) που πραγματοποιήθηκε από τις 25 έως τις 29 Σεπτεμβρίου στην Ολλανδία, ένας ερευνητής ασφαλείας που εργάζεται για την Red Hat παρουσίασε την «Marvin Attack», μια τεχνική επίθεσης που επιτρέπει τον προσδιορισμό των αρχικών δεδομένων μετρώντας τις καθυστερήσεις κατά τη διάρκεια των εργασιών αποκρυπτογράφησης με βάση τον αλγόριθμο RSA.

Το Marvin Attack είναι μια παραλλαγή της μεθόδου Bleichenbacher, που προτάθηκε το 1998 , και συνεχίζει την ανάπτυξη των επιθέσεων ROBOT και New CAT που δημοσιεύθηκαν το 2017 και το 2019.

Η επίθεση Marvin είναι η επιστροφή μιας ευπάθειας 25 ετών που επιτρέπει τις λειτουργίες υπογραφής και αποκρυπτογράφησης RSA να εκτελούνται ως εισβολέας με δυνατότητα παρατήρησης μόνο του χρόνου της λειτουργίας αποκρυπτογράφησης που εκτελείται με το ιδιωτικό κλειδί.

Το 1998, ο Daniel Bleichenbacher ανακάλυψε ότι τα μηνύματα σφάλματος που παρέχονται από διακομιστές SSL για σφάλματα στο padding PKCS #1 v1.5 επέτρεψαν μια προσαρμοστικά επιλεγμένη επίθεση κρυπτογραφημένου κειμένου. Αυτή η επίθεση σπάει εντελώς την εμπιστευτικότητα του TLS όταν χρησιμοποιείται με κρυπτογράφηση RSA. Το 2018, οι Hanno Böck, Juraj Somorovsky και Craig Young έδειξαν 19 χρόνια αργότερα ότι πολλοί διακομιστές του Διαδικτύου εξακολουθούσαν να είναι ευάλωτοι σε μικρές παραλλαγές της αρχικής επίθεσης.

Βασικά, η μέθοδος περιλαμβάνει έναν εισβολέα ο οποίος, με βάση τις διαφορετικές αντιδράσεις του διακομιστή και τους χρόνους εκτέλεσης, μπορεί να διαχωρίσει τα σωστά και τα λανθασμένα μπλοκ Oracle που προστέθηκαν χρησιμοποιώντας το πρότυπο PKCS #1 v1.5 για να ευθυγραμμίσει τα κρυπτογραφημένα δεδομένα κατά μήκος των ορίων του μπλοκ. Χειριζόμενος πληροφορίες σχετικά με την ακρίβεια των μπλοκ συμπλήρωσης, ένας εισβολέας μπορεί να χρησιμοποιήσει ωμή βία για να αναδημιουργήσει ένα έγκυρο κρυπτογραφημένο κείμενο.

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

Η χρήση μιας επίθεσης εναντίον διακομιστών TLS που χρησιμοποιούν κρυπτογράφηση που βασίζεται σε RSA επιτρέπει σε έναν εισβολέα να αποθηκεύει παθητικά την υποκλαπείσα κίνηση και στη συνέχεια να την αποκρυπτογραφεί . Για διακομιστές που υποστηρίζουν PFS, η εκτέλεση μιας επίθεσης γίνεται πολύ πιο δύσκολη και η επιτυχία εξαρτάται από το πόσο γρήγορα εκτελείται η επίθεση.

Επιπλέον, η μέθοδος επιτρέπει τη δημιουργία μιας πλασματικής ψηφιακής υπογραφής που επαληθεύει το περιεχόμενο των μηνυμάτων ServerKeyExchange σε TLS 1.2 ή των μηνυμάτων CertificateVerify σε TLS 1.3 που μεταδίδονται κατά το στάδιο της ανταλλαγής κλειδιών, η οποία μπορεί να χρησιμοποιηθεί για την εκτέλεση επιθέσεων MITM για την υποκλοπή της σύνδεσης TLS μεταξύ του πελάτη και του διακομιστή.

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

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

Το πρόβλημα επηρεάζει αρκετές υλοποιήσεις πρωτοκόλλων που χρησιμοποιούν RSA και PKCS . Παρόλο που οι σύγχρονες κρυπτογραφικές βιβλιοθήκες περιέχουν κάποια προστασία από επιθέσεις που βασίζονται στη μέθοδο Bleichenbacher, η μελέτη αποκάλυψε ότι αυτές οι βιβλιοθήκες έχουν ανοιχτά κανάλια διαρροής και δεν παρέχουν συνεπή χρόνο επεξεργασίας για πακέτα με σωστή και λανθασμένη συμπλήρωση. Για παράδειγμα, η υλοποίηση της επίθεσης GnuTLS από τον Marvin δεν συνδέεται με τον κώδικα που εκτελεί άμεσα υπολογισμούς που σχετίζονται με το RSA, αλλά χρησιμοποιεί διαφορετικούς χρόνους εκτέλεσης για τον κώδικα που αποφασίζει εάν θα εμφανίσει ένα συγκεκριμένο μήνυμα σφάλματος.

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

Για να επιβεβαιώσει τη δυνατότητα πραγματοποίησης της επίθεσης Marvin στην πράξη, ο ερευνητής έδειξε την εφαρμοσιμότητα της μεθόδου σε εφαρμογές που βασίζονται στις βιβλιοθήκες M2Crypto και pyca/κρυπτογραφίας, στις οποίες μερικές ώρες ήταν αρκετές για να διακυβευτεί η κρυπτογράφηση διεξάγοντας ένα πείραμα σε μέσο φορητό υπολογιστή.

Τέλος, αν ενδιαφέρεστε να μάθετε περισσότερα, μπορείτε να βρείτε τις λεπτομέρειες στον παρακάτω σύνδεσμο.


Προσθήκη ως προτιμώμενης πηγής στην Google