RangeAmp - μια σειρά επιθέσεων CDN που χειρίζονται την κεφαλίδα Range HTTP

Μια ομάδα ερευνητών από το Πανεπιστήμιο του Πεκίνου, το Πανεπιστήμιο Tsinghua και το Πανεπιστήμιο του Τέξας στο Ντάλας αποκάλυψε μια νέα κατηγορία επιθέσεων DoS - RangeAmp, που βασίζεται στη χρήση μιας κεφαλίδας HTTP Σειρά να οργανώσει την ενίσχυση της επισκεψιμότητας μέσω δικτύων παράδοσης περιεχομένου (CDN). Η ουσία της μεθόδου είναι ότι λόγω του τρόπου επεξεργασίας των κεφαλίδων εύρους σε πολλά CDN, ένας εισβολέας μπορεί να ζητήσει ένα byte από ένα μεγάλο αρχείο μέσω του CDN, αλλά το CDN θα κατεβάσει ολόκληρο το αρχείο ή ένα πολύ μεγαλύτερο μπλοκ δεδομένων από το διακομιστή προορισμού που θα τοποθετηθεί στην κρυφή μνήμη. Ο βαθμός ενίσχυσης της κυκλοφορίας κατά τη διάρκεια μιας τέτοιας επίθεσης, ανάλογα με το CDN, κυμαίνεται από 724 έως 43330 φορές, κάτι που μπορεί να χρησιμοποιηθεί για υπερφόρτωση του CDN με εισερχόμενη κίνηση ή μείωση της χωρητικότητας του τελικού καναλιού επικοινωνίας προς την τοποθεσία του θύματος.

RangeAmp - μια σειρά επιθέσεων CDN που χειρίζονται την κεφαλίδα Range HTTP

Η κεφαλίδα Range δίνει στον πελάτη τη δυνατότητα να καθορίσει μια σειρά θέσεων στο αρχείο που πρέπει να ληφθεί αντί να επιστρέψει ολόκληρο το αρχείο. Για παράδειγμα, ο πελάτης μπορεί να καθορίσει "Εύρος: bytes=0-1023" και ο διακομιστής θα μεταδώσει μόνο τα πρώτα 1024 byte δεδομένων. Αυτή η δυνατότητα είναι περιζήτητη κατά τη λήψη μεγάλων αρχείων - ο χρήστης μπορεί να διακόψει τη λήψη και στη συνέχεια να συνεχίσει από τη θέση που έχει διακοπεί. Κατά τον καθορισμό "bytes=0-0", το πρότυπο δίνει εντολή να δοθεί το πρώτο byte στο αρχείο, "bytes=-1" - το τελευταίο, "bytes=1-" - ξεκινώντας από 1 byte μέχρι το τέλος του αρχείου. Είναι δυνατή η μετάδοση πολλών περιοχών σε μία κεφαλίδα, για παράδειγμα "Εύρος: bytes=0-1023,8192-10240".

Επιπλέον, έχει προταθεί μια δεύτερη επιλογή επίθεσης, με στόχο την αύξηση του φόρτου δικτύου κατά την προώθηση της κυκλοφορίας μέσω άλλου CDN, το οποίο χρησιμοποιείται ως διακομιστής μεσολάβησης (για παράδειγμα, όταν το Cloudflare ενεργεί ως frontend (FCDN) και το Akamai ενεργεί ως backend ( BCDN). Η μέθοδος είναι παρόμοια με την πρώτη επίθεση, αλλά είναι εντοπισμένη σε δίκτυα CDN και επιτρέπει αυξημένη επισκεψιμότητα κατά την πρόσβαση μέσω άλλων CDN, αυξάνοντας το φόρτο στην υποδομή και μειώνοντας την ποιότητα της υπηρεσίας.

Η ιδέα είναι ότι ο εισβολέας στέλνει αιτήματα Εύρους πολλών περιοχών στο CDN, όπως "bytes=0-,0-,0-...", "bytes=1-,0-,0-..." ή "bytes=-1024,0 ,0-,0-...". Τα αιτήματα περιέχουν μεγάλο αριθμό περιοχών "0-", υπονοώντας ότι το αρχείο επιστρέφεται από τη θέση μηδέν στο τέλος. Λόγω λανθασμένης εφαρμογής της ανάλυσης εύρους, όταν το πρώτο CDN αποκτά πρόσβαση στο δεύτερο, αποστέλλεται ένα πλήρες αρχείο για κάθε εύρος "53-" (οι περιοχές δεν συγκεντρώνονται, αλλά επαναλαμβάνονται διαδοχικά), εάν υπάρχει διπλασιασμός και διασταύρωση περιοχών σε το αίτημα που στάλθηκε αρχικά από τον εισβολέα. Ο βαθμός ενίσχυσης της κυκλοφορίας σε μια τέτοια επίθεση κυμαίνεται από 7432 έως XNUMX φορές.

RangeAmp - μια σειρά επιθέσεων CDN που χειρίζονται την κεφαλίδα Range HTTP

Κατά τη διάρκεια της μελέτης, μελετήθηκε η συμπεριφορά 13 CDN -
Akamai, Alibaba Cloud, Azure, CDN77, CDNsun, Cloudflare, CloudFront, Fastly, G-Core Labs, Huawei Cloud, KeyCDN, StackPath και Tencent Cloud. Όλα τα CDN που εξετάστηκαν επέτρεψαν τον πρώτο τύπο επίθεσης στον τελικό διακομιστή. Η δεύτερη παραλλαγή της επίθεσης CDN επηρέασε 6 υπηρεσίες, εκ των οποίων οι τέσσερις μπορούσαν να λειτουργήσουν ως frontend στην επίθεση (CDN77, CDNsun, Cloudflare και StackPath) και τρεις ως backend (Akamai, Azure και StackPath). Το μεγαλύτερο κέρδος επιτυγχάνεται στο Akamai και το StackPath, τα οποία επιτρέπουν τον καθορισμό περισσότερων από 10 χιλιάδων περιοχών στην κεφαλίδα Range. Οι κάτοχοι CDN ειδοποιήθηκαν για τα τρωτά σημεία πριν από περίπου 7 μήνες και μέχρι τη στιγμή που οι πληροφορίες αποκαλύφθηκαν δημόσια, 12 από τα 13 CDN είχαν επιδιορθώσει τα προβλήματα που εντοπίστηκαν ή είχαν εκφράσει την ετοιμότητά τους να τα διορθώσουν (μόνο η υπηρεσία StackPath δεν απάντησε).

Πηγή: opennet.ru

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