ALPACA - μια νέα τεχνική για επιθέσεις MITM σε HTTPS

Μια ομάδα ερευνητών από πολλά πανεπιστήμια στη Γερμανία έχει αναπτύξει μια νέα επίθεση MITM στο HTTPS που μπορεί να εξάγει cookies περιόδου λειτουργίας και άλλα ευαίσθητα δεδομένα, καθώς και να εκτελεί αυθαίρετο κώδικα JavaScript στο πλαίσιο ενός άλλου ιστότοπου. Η επίθεση ονομάζεται ALPACA και μπορεί να εφαρμοστεί σε διακομιστές TLS που υλοποιούν διαφορετικά πρωτόκολλα επιπέδου εφαρμογής (HTTPS, SFTP, SMTP, IMAP, POP3), αλλά χρησιμοποιούν κοινά πιστοποιητικά TLS.

Η ουσία της επίθεσης είναι ότι εάν έχει τον έλεγχο μιας πύλης δικτύου ή ενός σημείου ασύρματης πρόσβασης, ο εισβολέας μπορεί να ανακατευθύνει την κυκλοφορία Ιστού σε άλλη θύρα δικτύου και να οργανώσει τη δημιουργία μιας σύνδεσης με έναν διακομιστή FTP ή αλληλογραφίας που υποστηρίζει κρυπτογράφηση TLS και χρησιμοποιεί Πιστοποιητικό TLS κοινό με τον διακομιστή HTTP , και το πρόγραμμα περιήγησης του χρήστη θα υποθέσει ότι έχει δημιουργηθεί μια σύνδεση με τον αιτούμενο διακομιστή HTTP. Δεδομένου ότι το πρωτόκολλο TLS είναι καθολικό και δεν συνδέεται με πρωτόκολλα σε επίπεδο εφαρμογής, η δημιουργία μιας κρυπτογραφημένης σύνδεσης για όλες τις υπηρεσίες είναι πανομοιότυπη και το σφάλμα αποστολής αιτήματος σε λάθος υπηρεσία μπορεί να προσδιοριστεί μόνο μετά τη δημιουργία κρυπτογραφημένης συνεδρίας κατά την επεξεργασία της εντολές του απεσταλμένου αιτήματος.

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

Προτείνονται τρεις επιλογές επίθεσης:

  • "Μεταφόρτωση" για να ανακτήσετε ένα Cookie με παραμέτρους ελέγχου ταυτότητας. Η μέθοδος ισχύει εάν ο διακομιστής FTP που καλύπτεται από το πιστοποιητικό TLS σας επιτρέπει να ανεβάσετε και να ανακτήσετε τα δεδομένα του. Σε αυτήν την παραλλαγή επίθεσης, ο εισβολέας μπορεί να επιτύχει τη διατήρηση τμημάτων του αρχικού αιτήματος HTTP του χρήστη, όπως τα περιεχόμενα της κεφαλίδας Cookie, για παράδειγμα, εάν ο διακομιστής FTP ερμηνεύσει το αίτημα ως αρχείο αποθήκευσης ή καταγράφει εξ ολοκλήρου τα εισερχόμενα αιτήματα. Για να επιτεθεί με επιτυχία, ο εισβολέας πρέπει να εξαγάγει με κάποιο τρόπο το αποθηκευμένο περιεχόμενο. Η επίθεση είναι εφαρμόσιμη σε Proftpd, Microsoft IIS, vsftpd, filezilla και serv-u.
  • "Λήψη" για την οργάνωση σεναρίων μεταξύ τοποθεσιών (XSS). Η μέθοδος υπονοεί ότι ο εισβολέας, ως αποτέλεσμα ορισμένων μεμονωμένων χειρισμών, μπορεί να τοποθετήσει δεδομένα σε μια υπηρεσία που χρησιμοποιεί ένα κοινό πιστοποιητικό TLS, το οποίο μπορεί στη συνέχεια να εκδοθεί ως απόκριση σε αίτημα χρήστη. Η επίθεση ισχύει για τους προαναφερθέντες διακομιστές FTP, διακομιστές IMAP και διακομιστές POP3 (courier, cyrus, kerio-connect και zimbra).
  • "Reflection" για εκτέλεση JavaScript στο πλαίσιο ενός άλλου ιστότοπου. Η μέθοδος βασίζεται στην επιστροφή στον πελάτη τμήματος του αιτήματος, το οποίο περιέχει τον κώδικα JavaScript που αποστέλλεται από τον εισβολέα. Η επίθεση εφαρμόζεται στους προαναφερθέντες διακομιστές FTP, διακομιστές IMAP cyrus, kerio-connect και zimbra, καθώς και στον διακομιστή SMTP sendmail.

ALPACA - μια νέα τεχνική για επιθέσεις MITM σε HTTPS

Για παράδειγμα, όταν ένας χρήστης ανοίγει μια σελίδα που ελέγχεται από έναν εισβολέα, αυτή η σελίδα μπορεί να ξεκινήσει ένα αίτημα για έναν πόρο από έναν ιστότοπο όπου ο χρήστης έχει ενεργό λογαριασμό (για παράδειγμα, bank.com). Κατά τη διάρκεια μιας επίθεσης MITM, αυτό το αίτημα που απευθύνεται στον ιστότοπο bank.com μπορεί να ανακατευθυνθεί σε έναν διακομιστή email που χρησιμοποιεί ένα πιστοποιητικό TLS που είναι κοινόχρηστο με το bank.com. Εφόσον ο διακομιστής αλληλογραφίας δεν τερματίζει τη συνεδρία μετά το πρώτο σφάλμα, οι κεφαλίδες και οι εντολές υπηρεσίας όπως "POST / HTTP/1.1" και "Host:" θα υποβληθούν σε επεξεργασία ως άγνωστες εντολές (ο διακομιστής αλληλογραφίας θα επιστρέψει "500 unrecognized command" για κάθε κεφαλίδα).

Ο διακομιστής αλληλογραφίας δεν κατανοεί τις δυνατότητες του πρωτοκόλλου HTTP και γι' αυτόν οι κεφαλίδες υπηρεσίας και το μπλοκ δεδομένων του αιτήματος POST επεξεργάζονται με τον ίδιο τρόπο, επομένως στο σώμα του αιτήματος POST μπορείτε να καθορίσετε μια γραμμή με μια εντολή ο διακομιστής αλληλογραφίας. Για παράδειγμα, μπορείτε να περάσετε: MAIL FROM: alert(1); στον οποίο ο διακομιστής αλληλογραφίας θα επιστρέψει ένα μήνυμα σφάλματος 501 alert(1); : εσφαλμένη διεύθυνση: alert(1); μπορεί να μην ακολουθήσει

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

ALPACA - μια νέα τεχνική για επιθέσεις MITM σε HTTPS

Μια σάρωση του παγκόσμιου δικτύου έδειξε ότι γενικά, περίπου 1.4 εκατομμύρια διακομιστές ιστού επηρεάζονται από το πρόβλημα, για τους οποίους είναι δυνατό να πραγματοποιηθεί επίθεση με ανάμειξη αιτημάτων χρησιμοποιώντας διαφορετικά πρωτόκολλα. Η πιθανότητα πραγματικής επίθεσης προσδιορίστηκε για 119 χιλιάδες web servers για τους οποίους υπήρχαν συνοδευτικοί διακομιστές TLS βάσει άλλων πρωτοκόλλων εφαρμογών.

Παραδείγματα εκμεταλλεύσεων έχουν προετοιμαστεί για διακομιστές ftp pureftpd, proftpd, microsoft-ftp, vsftpd, filezilla και serv-u, διακομιστές IMAP και POP3 dovecot, courier, exchange, cyrus, kerio-connect και zimbra, διακομιστές SMTP postfix, exim, sendmail , mailenable, mdaemon και opensmtpd. Οι ερευνητές έχουν μελετήσει τη δυνατότητα πραγματοποίησης επίθεσης μόνο σε συνδυασμό με διακομιστές FTP, SMTP, IMAP και POP3, αλλά είναι πιθανό το πρόβλημα να παρουσιαστεί και για άλλα πρωτόκολλα εφαρμογών που χρησιμοποιούν TLS.

ALPACA - μια νέα τεχνική για επιθέσεις MITM σε HTTPS

Για τον αποκλεισμό της επίθεσης, προτείνεται η χρήση της επέκτασης ALPN (Application Layer Protocol Negotiation) για τη διαπραγμάτευση μιας συνεδρίας TLS λαμβάνοντας υπόψη το πρωτόκολλο εφαρμογής και την επέκταση SNI (Server Name Indication) για σύνδεση με το όνομα κεντρικού υπολογιστή σε περίπτωση χρήσης Πιστοποιητικά TLS που καλύπτουν πολλά ονόματα τομέα. Από την πλευρά της εφαρμογής, συνιστάται ο περιορισμός του ορίου στον αριθμό των σφαλμάτων κατά την επεξεργασία εντολών, μετά τον οποίο η σύνδεση τερματίζεται. Η διαδικασία ανάπτυξης μέτρων για τον αποκλεισμό της επίθεσης ξεκίνησε τον περασμένο Οκτώβριο. Παρόμοια μέτρα ασφαλείας έχουν ήδη ληφθεί σε Nginx 1.21.0 (mail proxy), Vsftpd 3.0.4, Courier 5.1.0, Sendmail, FileZill, crypto/tls (Go) και Internet Explorer.

Πηγή: opennet.ru

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