Ένα ελάττωμα που σχετίζεται με το padding PKCS #1 v1.5 σε διακομιστές SSL που ανακαλύφθηκε το 1998 και πιστεύεται ότι έχει επιλυθεί εξακολουθεί να επηρεάζει αρκετά έργα που χρησιμοποιούνται ευρέως
σήμερα
.
Μετά από εκτεταμένες δοκιμές που μετρά τις λειτουργίες από άκρο σε άκρο, οι ερευνητές της Red Hat ανακάλυψαν διάφορες παραλλαγές της αρχικής επίθεσης χρονισμού, που συλλογικά ονομάζονται «Marvin Attack», οι οποίες μπορούν να παρακάμψουν αποτελεσματικά διορθώσεις και μετριασμούς.
Το πρόβλημα επιτρέπει στους εισβολείς να απο
κρυπτο
γραφούν δυνητικά κρυπτογραφημένα κείμενα RSA, να πλαστογραφούν υπογραφές και ακόμη και να αποκρυπτογραφούν συνεδρίες που έχουν καταγραφεί σε έναν ευάλωτο διακομιστή TLS.
Χρησιμοποιώντας τυπικό υλικό, οι ερευνητές απέδειξαν ότι η εκτέλεση του Marvin Attack μέσα σε λίγες μόνο ώρες είναι δυνατή, αποδεικνύοντας την πρακτικότητά του.
Η Red Hat προειδοποιεί ότι η ευπάθεια δεν περιορίζεται στο RSA αλλά επεκτείνεται στους περισσότερους ασύμμετρους κρυπτογραφικούς αλγόριθμους, καθιστώντας τους ευάλωτους σε επιθέσεις πλευρικού καναλιού.
κόκκινο καπέλο
.
Με βάση τις δοκιμές που πραγματοποιήθηκαν, οι ακόλουθες υλοποιήσεις είναι ευάλωτες στο Marvin Attack:
-
OpenSSL (επίπεδο TLS)
: Timing Oracle σε αποκρυπτογράφηση RSA – CVE-2022-4304 -
OpenSSL (επίπεδο API)
: Κάντε το API αποκρυπτογράφησης RSA ασφαλές για χρήση με το padding PKCS#1 v1.5 – Χωρίς CVE -
GnuTLS
(επίπεδο TLS)
: Οι χρόνοι απόκρισης σε κρυπτογραφημένα κείμενα RSA με κακή μορφή στο ClientKeyExchange διαφέρουν από τους χρόνους απόκρισης κρυπτογραφημένων κειμένων με σωστή συμπλήρωση PKCS#1 v1.5. – CVE-
2023
-0361 -
NSS (επίπεδο TLS)
: Βελτίωση σταθερού χρόνου στις λειτουργίες RSA. – CVE-2023-4421 -
pyca/κρυπτογραφία
: Προσπάθεια μετριασμού των επιθέσεων Bleichenbacher στην αποκρυπτογράφηση RSA. διαπιστώθηκε ότι είναι αναποτελεσματική? Απαιτεί μια επιδιόρθωση επιπέδου OpenSSL. – CVE-2020-25659 -
M2Crypto
: Μετριάστε τις επιθέσεις χρονισμού Bleichenbacher στο API αποκρυπτογράφησης RSA. διαπιστώθηκε ότι είναι αναποτελεσματική? Απαιτεί μια επιδιόρθωση επιπέδου OpenSSL. – CVE-2020-25657 -
OpenSSL-ibmca
: Διορθώσεις σταθερού χρόνου για RSA PKCS#1 v1.5 και συμπλήρωση OAEP στην έκδοση 2.4.0 – Χωρίς CVE -
Πηγαίνω
: crypto/rsa DecryptPKCS1v15SessionKey έχει περιορισμένη διαρροή – Χωρίς CVE -
GNU MP
: mpz_powm_sec διαρροές μηδέν bit υψηλής τάξης ως αποτέλεσμα – Χωρίς CVE
Το Marvin Attack δεν έχει αντίστοιχο CVE παρά το γεγονός ότι τονίζει ένα θεμελιώδες ελάττωμα στην αποκρυπτογράφηση RSA, κυρίως τον τρόπο διαχείρισης των σφαλμάτων padding, λόγω της ποικιλίας και της πολυπλοκότητας των επιμέρους υλοποιήσεων.
Έτσι, ενώ το Marvin Attack είναι ένα εννοιολογικό ελάττωμα, δεν υπάρχει μια μοναδική επιδιόρθωση ή ενημέρωση κώδικα που να μπορεί να εφαρμοστεί καθολικά και το πρόβλημα εκδηλώνεται διαφορετικά σε κάθε έργο λόγω των μοναδικών βάσεων κώδικα και της
εφαρμογή
ς αποκρυπτογράφησης RSA.
Οι ερευνητές συμβουλεύουν να μην χρησιμοποιούν κρυπτογράφηση RSA PKCS#1 v1.5 και προτρέπουν τους επηρεαζόμενους χρήστες να αναζητήσουν ή να ζητήσουν από τους προμηθευτές να παρέχουν εναλλακτικούς τρόπους συμβατότητας προς τα πίσω.
Η απλή απενεργοποίηση του RSA δεν σημαίνει ότι είστε ασφαλείς, προειδοποιεί το
Ενότητα Q&A
της σελίδας του Marvin Attack.
Ο κίνδυνος είναι ο ίδιος εάν το κλειδί ή το πιστοποιητικό RSA χρησιμοποιείται αλλού σε διακομιστή που το υποστηρίζει (διακομιστές αλληλογραφίας SMTP, IMAP, POP και δευτερεύοντες διακομιστές HTTPS).
Τέλος, η Red Hat προειδοποιεί ότι η πιστοποίηση FIPS δεν εγγυάται προστασία έναντι του Marvin Attack, εκτός από την πιστοποίηση Επιπέδου 4, η οποία εξασφαλίζει καλή αντίσταση σε επιθέσεις πλευρικού καναλιού.
Αν και δεν υπάρχουν εμφανή σημάδια χρήσης του Marvin Attack από χάκερ στη φύση, η
αποκάλυψη
των λεπτομερειών και τμημάτων των δοκιμών και ο ασαφής κώδικας αυξάνει τον κίνδυνο να συμβεί αυτό σύντομα.
Για όσους ενδιαφέρονται να βουτήξουν στις περισσότερες τεχνικές λεπτομέρειες του Marvin Attack,
ένα χαρτί
που δημοσιεύτηκε πριν από λίγους μήνες εμβαθύνει στο πρόβλημα και στις δοκιμές που πραγματοποιήθηκαν για να εκτιμηθεί ο αντίκτυπός του.
