ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΑΣ ιπλωµατική Εργασία του φοιτητή του Τµήµατος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστηµίου Πατρών Ιωάννη αµπολιά του Παναγιώτη Αριθµός Μητρώου: 4518 Θέµα «Αναγνώριση επιθέσεων DDoS σε δίκτυα υπολογιστών» Επιβλέπων Αναπληρωτής καθηγητής κ. ερµατάς Ευάγγελος Αριθµός ιπλωµατικής Εργασίας: Πάτρα, εκέµβριος 2013 1
ΠΙΣΤΟΠΟΙΗΣΗ Πιστοποιείται ότι η ιπλωµατική Εργασία µε θέµα «Αναγνώριση επιθέσεων DDoS σε δίκτυα υπολογιστών» Του φοιτητή του Τµήµατος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Ιωάννη αµπολιά του Παναγιώτη Αριθµός Μητρώου: 4518 Παρουσιάστηκε δηµόσια και εξετάστηκε στο Τµήµα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών στις.../../ Ο Επιβλέπων Ο ιευθυντής του Τοµέα κ. Ευάγγελος ερµατάς κ. Νικόλαος Φακωτάκης Αναπληρωτής καθηγητής Καθηγητής 2
Αριθµός ιπλωµατικής Εργασίας: Θέµα: «Αναγνώριση επιθέσεων DDoS σε δίκτυα υπολογιστών» Φοιτητής: Επιβλέπων: Περίληψη Η διπλωµατική αυτή εργασία εκπονήθηκε στο τµήµα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών τα Πολυτεχνικής σχολής του Πανεπιστηµίου Πατρών υπό την επίβλεψη του αναπληρωτή καθηγητή κ. Ευάγγελου ερµατά. Στόχος της εργασίας είναι η µελέτη των κατανεµηµένων επιθέσεων άρνησης υπηρεσίας σε δίκτυα υπολογιστών καθώς και οι τρόποι αντιµετώπισής και αναγνώρισής τους µε χρήση νευρωνικού δικτύου. 3
Ευχαριστίες Πρώτα θα ήθελα να ευχαριστήσω τον καθηγητή κ. Ευάγγελο ερµατά για την βοήθεια και την υποστήριξη προκειµένου να εκπονηθεί η διπλωµατική µου εργασία. Ευχαριστώ θερµά τον διδάκτορα ηµήτριο Γαβρίλη για την καθοδήγηση, τις οδηγίες και το υλικό που µου προσέφερε. 4
1 Πίνακας Περιεχοµένων 2 Εισαγωγή... 7 3 Περιγραφή του προβλήµατος των DDoS επιθέσεων... 8 3.1 Τι είναι η Distributed Denial of Service επίθεση... 8 3.2 Σύντοµη Ιστορική Αναδροµή των Denial of Service επιθέσεων.... 11 3.3 Εκτίµηση του προβλήµατος των DDoS επιθέσεων... 13 4 Ανάλυση και κατάταξη των DDoS attacks... 14 4.1 Παρουσίαση των DDoS επιθέσεων... 14 4.2 Βαθµός αυτοµατοποίησης µιας DDoS επίθεσης... 15 4.3 Μέθοδοι στρατολόγησης agents για την υλοποίηση µιας DDoS επίθεσης... 17 4.5 Στρατηγική αναζήτησης κενών ασφαλείας... 20 4.6 Τρόποι εγκατάστασης κώδικα στους agents... 21 4.7 Μέθοδοι άρνησης υπηρεσίας µιας DDoS επίθεσης... 22 4.8 Εγκυρότητα της IP διεύθυνσης του αποστολέα... 24 4.9 υναµική των DDoS επιθέσεων... 26 4.10 Χαρακτηρισµός των επιθέσεων DDoS... 27 4.11 Πού στοχεύει µία DDoS επίθεση... 28 4.12 Επιπτώσεις των DDoS επιθέσεων στα θύµατα... 30 5 Μέθοδοι και συστήµατα αντιµετώπισης DDoS επιθέσεων... 32 5.1 Ανάλυση των υπαρχόντων µεθόδων αντιµετώπισης DDoS... 32 5.2 Παρουσίαση των συστηµάτων αντιµετώπισης DDoS επιθέσεων... 33 5.3 Συστήµατα αντιµετώπισης DDoS προληπτικού χαρακτήρα... 34 5.4 Συστήµατα αντιµετώπισης DDoS επιθέσεων ενεργού χαρακτήρα... 37 6 Εργαλεία επιθέσεων DDoS... 40 6.1 Ανάλυση Γνωστών Εργαλείων Distributed Denial of Service... 40 5
7 Νευρωνικά δίκτυα και εφαρµογή τους στην αντιµετώπιση DDoS επιθέσεων... 48 7.1 Τι είναι Νευρωνικά ίκτυα... 48 7.2 Τι είναι ο Νευρώνας... 49 7.3 ιαφορές Υπολογιστή και Νευρωνικού ικτύου... 49 7.4 οµή Νευρωνικών ικτύων... 50 7.5 Εκπαίδευση Νευρωνικών ικτύων... 52 7.6 Πως µε τη χρήση νευρωνικών δικτύων αναγνωρίζονται οι DDOS επιθέσεις?.. 54 7.7 Συστήµατα ανίχνευσης ανωµαλιών... 54 7.8 Σύστηµα αναγνώρισης DDoS επιθέσεων µε χρήση νευρωνικών δικτύων... 55 7.9 Εξαγωγή παραµέτρων... 56 8 Βιβλιογραφία... 61 6
2 Εισαγωγή Το διαδίκτυο οφείλει την ιστορική του επιτυχία και ανάπτυξη στην ευκολία υιοθέτησης νέων υπηρεσιών και εφαρµογών. Ορόσηµο στη χρήση του δικτύου αποτελεί το γεγονός ότι οποιοσδήποτε έχει τη δυνατότητα να επικοινωνήσει µε οποιονδήποτε µέσω εφαρµογών που δεν υπόκεινται σε έλεγχο, τουλάχιστον σε επίπεδο δικτυακών δικαιωµάτων. Νέες ιδέες µπορούν να υλοποιηθούν και να διαδοθούν άµεσα, εφόσον δεν απαιτούνται προσθήκες ή καινούργιες υπηρεσίες στον υποκείµενο ιστό. Για να γίνει δυνατή η ανάπτυξη του Internet µε βάση τις παραπάνω αρχές ήταν επιβεβληµένη η χρήση πρωτοκόλλων που διασφαλίζουν την απρόσκοπτη επικοινωνία των χρηστών του δικτύου ανεξάρτητα από την κατάσταση των ενδιάµεσων κόµβων του. Η προσέγγιση αυτή παρουσιάζει πλεονεκτήµατα, όπως την αξιόπιστη επικοινωνία µέσω πολλαπλών εναλλακτικών διαδροµών µέσα στο δίκτυο, αλλά και µειονεκτήµατα όπως το ότι η δεν διενεργείται κάποιος έλεγχος στους ενδιάµεσους κόµβους µε αποτέλεσµα την εγγενή ευαισθησία του Internet σε επιθέσεις άρνησης υπηρεσίας (DoS: Denial of Service), που θα µας απασχολήσουν στην εν λόγω εργασία. Λέξεις κλειδιά : DOS, DDOS Επιθέσεις, Νευρωνικά δίκτυα 7
3 Περιγραφή του προβλήµατος των DDoS επιθέσεων Παρουσίαση της έννοιας της κατανεµηµένης επίθεσης άρνησης υπηρεσίας (DDoS) όσο και της έκτασης του προβλήµατος µέσω αναφορών σε γνωστές επιθέσεις τέτοιου τύπου στο διαδίκτυο. 3.1 Τι είναι η Distributed Denial of Service επίθεση Στην ασφάλεια υπολογιστών η επίθεση άρνησης υπηρεσιών (Denial of Service attack) είναι µια προσπάθεια να τεθεί ένας διακοµιστής (server) µη προσβάσιµος στους χρήστες του. Συνήθως στοχεύουµε σε µηχανήµατα που έχουν δυνατότητα υψηλής διεκπεραίωσης φόρτου εργασίας ώστε η ζηµιά να είναι µεγαλύτερη. Οι επιθέσεις άρνησης υπηρεσιών διαχωρίζονται στις εξής δύο µεγάλες κατηγορίες : Εξαναγκασµός του διακοµιστή σε επανεκκίνηση ή κατανάλωση των πόρων του ώστε να µην µπορεί να προσφέρει υπηρεσίες. Μερική ή ολική κατανάλωση του εύρους ζώνης των τηλεπικοινωνιακών γραµµών µεταξύ πελατών εξυπηρετητών µε σκοπό τη διακοπή, ει δυνατόν, της επικοινωνίας. Όσον αφορά την πρώτη κατηγορία οι περισσότεροι διακοµιστές, αφιερωµένοι σε διάφορες υπηρεσίες, δίνουν στον διαχειριστή τη δυνατότητα να θέσει άνω όριο στον επιτρεπτό αριθµό ταυτόχρονων συνδέσεων ανά υπηρεσία. Αυτό έχει ως αποτέλεσµα σε ενδεχόµενη DOS-attack να τεθεί εκτός λειτουργίας µόνο µία υπηρεσία. Σε περίπτωση όµως που δεν έχει τεθεί ο παραπάνω περιορισµός η επίθεση εξαντλεί όλους τους πόρους του συστήµατος και τελικά αναγκαζόµαστε να τον επανεκκινήσουµε µια διαδικασία που είναι ιδιαίτερα χρονοβόρα. Η δεύτερη κατηγορία σχετίζεται µε τις κατανεµηµένες επιθέσεις άρνησης υπηρεσιών (Distributed Denial of Service Attack) DDοS. Μια τέτοια επίθεση είναι εφικτή όταν έχει κάποιος στη διάθεσή του αριθµό συστηµάτων της τάξης των εκατοντάδων ή χιλιάδων, στα οποία έχει αποκτήσει παράνοµη πρόσβαση µε µεθόδους όπως exploits, Trojans και worms. Το δίκτυο αυτό των συστηµάτων που ελέγχει κάποιος ονοµάζεται botnet και 8
µπορεί να το χρησιµοποιήσει για να εξαπολύσει επίθεση σε έναν ή περισσότερους διακοµιστές ταυτόχρονα. Η κατοχή ικανού αριθµού υπολογιστών προς επίθεση επιτρέπει σε κάποιον να πληµµυρίσει µε πακέτα ένα δίκτυο καταναλώνοντας το εύρος ζώνης του και διακόπτοντας τις επικοινωνίες του. Αυτή είναι και η κύρια διαφορά µεταξύ κατανεµηµένης (DDoS) και µη επίθεσης DoS. Μια λογική αναπαράσταση της κατανεµηµένης DDoS επίθεσης φαίνεται στο παρακάτω σχήµα: Σχήµα 1: Αρχιτεκτονική των DDoS Επιθέσεων Το παραπάνω σχεδιάγραµµα αποτελείται από τέσσερα στοιχεία: Τον πραγµατικό επιτιθέµενο. Τους handlers που είναι οι υπολογιστές στους οποίους εκτελείται ένα ειδικό πρόγραµµα, ικανό να ελέγχει πολλαπλούς agents. Τους agents ή zombies που είναι υπολογιστές στους οποίους εκτελείται ένα ειδικό πρόγραµµα και είναι υπεύθυνοι για τη δηµιουργία ροής πακέτων προοριζόµενης για το θύµα. Το θύµα ή σύστηµα-στόχο. 9
Πώς όµως είναι δυνατόν να επιτρέπεται σε έναν χώρο όπως το Internet η µαζική επίθεση και αχρήστευση υπηρεσιών, server ή και ολόκληρων δικτύων που προσφέρουν υπηρεσίες; Ο σχεδιασµός του Internet εστιάζει στην αποδοτικότητα µεταφοράς πακέτων από την πηγή στον προορισµό, προσφέροντας έναν στοιχειώδη µηχανισµό για την επικοινωνία µεταξύ των τελικών χρηστών, οι οποίοι καλούνται να υλοποιήσουν τα πιο περίπλοκα πρωτόκολλα επικοινωνίας έτσι ώστε να είναι δυνατή η αξιόπιστη χρήση µιας υπηρεσίας. Αυτό σηµαίνει αυτόµατα ότι αν κάποιο µέλος (µεταξύ πηγής- προορισµού) αποφασίσει να στείλει µη-έγκυρη κίνηση δεν υπάρχει κάποιος µηχανισµός στο Internet που να τον εµποδίσει, πράγµα που είναι θεµιτό αφού ο σκοπός δηµιουργίας του ήταν η απρόσκοπτη διακίνηση πληροφορίας. Η ίδια δηλαδή η δοµή του ιστού προσφέρει ευκαιρίες DDoS επιθέσεων. Φυσικά όπως αναφέρθηκε παραπάνω για την επίτευξη µιας τέτοιας επίθεσης είναι απαραίτητη η παράνοµη πρόσβαση σε χιλιάδες hosts (οι οποίοι δεν πληρούν προδιαγραφές ασφαλείας), πράγµα το οποίο σηµαίνει το να προστατεύσουµε έναν server δεν έχει νόηµα όταν η πλειονότητα των host στο δίκτυο παρουσιάζει κενά ασφάλειας [1], και κατ επέκταση εφόσον οι πόροι κάθε server είναι πεπερασµένοι µπορούν εν δυνάµει να αναλωθούν. Οι κατανεµηµένες DoS επιθέσεις έχουν αποδειχθεί αρκετά αποτελεσµατικές µέχρι τώρα. Αρκετοί µεγάλοι παροχείς υπηρεσιών έχουν τεθεί εκτός λειτουργίας για µεγάλα χρονικά διαστήµατα. Ενδεικτικά οι πιο επιζήµιες DoS επιθέσεις ήταν τον Σεπτέµβριο του 2002 επίθεση στους DNS servers του Internet που υπερφόρτωσε όλη την υποδοµή του δικτύου [2] χωρίς ωστόσο άµεσα ορατές επιπτώσεις στην πλειονότητα των χρηστών, η επίθεση τον Ιούλιο του 2009 σε ιστότοπο της µεγαλύτερης εφηµερίδας και τράπεζας σε ασιατική χώρα από 166.000 υπολογιστές, η επίθεση στο δίκτυο της εταιρείας SONY η οποία της κόστισε περίπου 2 εκατοµµύρια δολάρια καθώς και η επίθεση στην ιστοσελίδα του BBC που την έθεσε εκτός λειτουργίας για µισή ώρα. Οι DOS επιθέσεις θεωρούνται από τις πιο επιτυχηµένες καθώς δεν µπορούν να αναγνωριστούν εν τη γενέσει τους και να αποτραπούν προτού οι επιπτώσεις τους γίνουν αντιληπτές. Κι αυτό γιατί όπως προείπαµε δεν στοχεύουν σε κάποια συστηµική ανωµαλία ή σε εµφανή ελαττώµατα πρωτοκόλλων επικοινωνίας, απλά χρησιµοποιούν µια παρεχόµενη 10
υπηρεσία στο µέγιστο βαθµό. Καθίσταται λοιπόν σαφές ότι ο µόνος τρόπος αντιµετώπισης µιας επίθεσης τέτοιας φύσεως είναι η έγκαιρη αναγνώρισή της και η αποτροπή ζήτησης νέων, µη έγκυρων, στην προσφερόµενη υπηρεσία, συνδέσεων. 3.2 Σύντοµη Ιστορική Αναδροµή των Denial of Service επιθέσεων. 1998 Το σκουλήκι (worm) του Internet, ένας ιός(virus) των υπολογιστών, που δηµιουργήθηκε από τον φοιτητή Robert T. Morris, του πανεπιστηµίου του Cornell, έθεσε εκτός λειτουργίας περισσότερους από 6000 υπολογιστές του Internet για δύο µέρες. 1996 (Hackers) χρησιµοποιούν "SYN floods attacks" για να θέσουν έκτος λειτουργίας Web servers υπερφορτώνοντας τους. Η µέθοδος αυτή είναι µια από τις πρώτες µορφές denial-of-service (DoS) επίθεσης. 1998 Επιθέσεις DoS θέτουν εκτός λειτουργίας εκατοντάδες υπολογιστές σε 24 πανεπιστήµια, συµπεριλαµβανοµένων του Πανεπιστηµίων της Καλιφόρνια, το MIT, το Cornel, το πανεπιστήµιο της Minnesota, το Northwestern και το Princeton, καθώς επίσης και το Ναυτικό των Ηνωµένων Πολιτειών και τη NASA. 1999 Εκτελούνται πάνω από 10,000 DoS επιθέσεις σε δεκάδες επιχειρήσεις για µια χρονική περίοδο 5 ωρών. Ανάµεσα στους στόχους ήταν το χρηµατιστήριο της Μ. Βρετανίας και η τράπεζα Barclays. Τότε το κέντρο συντονισµού αντιµετώπισης επειγόντων περιστατικών υπολογιστών (CERT) δηµοσιεύει µια αναφορά για τα εργαλεία DDoS "trinoo" και "Tribe Flood Network (TFN)," τα οποία χρησιµοποιούνται σε παγκόσµια 11
κλίµακα. Τα δύο αυτά εργαλεία φαίνονται να είναι κρυµµένα σε χιλιάδες servers και σταθµούς εργασίας σε περίπου 100 sites επιχειρήσεων. Παράλληλα εµφανίζονται δύο επιπλέον εργαλεία DDoS (TFN2K και Stacheldraht) που περιέχουν ισχυρή κρυπτογράφηση και είναι πολύ δύσκολο να ανιχνευθούν. Περιέχουν τα πιο επικίνδυνα χαρακτηριστικά των trinoo και TFN. 2000 Ένας σύµβουλος τεχνολογίας από το Long Island technology ανακαλύπτει ότι ένας από τους servers του έχει µετατραπεί σε "zombie" για DDoS επιθέσεις. Ο server αυτός υπερφορτώνει την America Online και το Yahoo! µε e-mail. Την ίδια χρονιά µεγάλες DDoS επιθέσεις εµποδίζουν την πρόσβαση στα Web sites των Amazon.com, AOL-Time Warner, Buy.com, CNN, Datek, Dell Computer, ebay, Yahoo!. Αργότερα από εκτιµήσεις της οµάδας Yankee οι ζηµίες ξεπερνούν τα $1.2 δισεκατοµύρια. Παράλληλα µια επίθεση denial-of-service αχρηστεύει το site του FBI για αρκετές ώρες. Τέλος Ο ISP AboveNet Communications που διατηρεί sites για την AOL.com και για περισσότερους από 1,000 άλλους πελάτες, δέχεται µια DDoS επίθεση και βγαίνει εκτός λειτουργίας για πολλές ώρες. 2001 Το Web site της Microsoft αχρηστεύεται για αρκετές ώρες σε µια περίοδο 4 ηµερών εξαιτίας δύο DDoS επιθέσεων. Τότε το ινστιτούτο υπολογιστών δηµοσιεύει την έκτη ετήσια έρευνα αποκαλύπτοντας ότι η συχνότητα των DDoS επιθέσεων αυξήθηκε κατά 60% τα τελευταία 3 χρόνια. Επιπλέον µια denial of service επίθεση προς το Whitehouse.gov υπερφορτώνει τους servers που περιέχουν το Web site της διοίκησης Bush και το κλείνουν για 3 ώρες. Μετά από ένα κύµα denial of service επιθέσεων το Web site του Λευκού Οίκου αλλάζει τοποθεσία για να αποφύγει την υπερφόρτωση. Παράλληλα ο ιός (Code Red) µόλυνε περισσότερους από 250.000 υπολογιστές εξαιτίας ενός προβλήµατος ασφαλείας ενός λογισµικού της Microsoft. Τέλος µία έρευνα του πανεπιστηµίου της California αποκάλυψε ότι στα µέσα του 2001 πραγµατοποιήθηκαν 12
περίπου 12,800 DOS επιθέσεις σε περισσότερους από 5,000 στόχους ανάµεσα στους οποίους ήταν και το Web site του παγκόσµιου οικονοµικού forum. 2002 Η επίθεση στους εξυπηρετητές δικτυακής ονοµατολογίας ρίζας (Root Name Servers) που απέτυχε λόγο ανεπάρκειας πόρων, αλλά θα µπορούσε να οδηγήσει σε διακοπή παροχής υπηρεσιών DNS. 3.3 Εκτίµηση του προβλήµατος των DDoS επιθέσεων Το πρόβληµα των Denial of Service επιθέσεων έχει γίνει ιδιαίτερα έντονο από το 2000 και µετά. Τα εργαλεία που εξαπολύουν τέτοιου είδους επιθέσεις έγιναν όλο και πιο γνωστά και πιο εύχρηστα µε αποτέλεσµα όλο και περισσότεροι χρήστες να µπορούν να τα χρησιµοποιούν. Επίσης, οι επιθέσεις αυτές εξελίχθηκαν και έγιναν πιο αποτελεσµατικές. Παράλληλα καινούργια προβλήµατα ασφαλείας που ανακαλύφθηκαν (όπως αυτό του IIS της Microsoft) επέτρεψαν µεγαλύτερη εξάπλωση ιών που εξαπέλυαν τέτοιες επιθέσεις. Αυτό, σε συνδυασµό µε το γεγονός ότι η εξάρτηση των επιχειρήσεων από το Internet αυξάνει όλο και περισσότερο είχε ως αποτέλεσµα οι εταιρείες να χάνουν πολλά χρήµατα από επιθέσεις που δέχονταν και ακόµη περισσότερα για να προστατευτούν. Το αποτέλεσµα όλων αυτών ήταν να δηµιουργηθούν αρκετές εταιρείες που εµπορεύονταν προστασία αποκλειστικά για Denial of Service επιθέσεις. Ενδεικτικά αναφέρω µερικές : Cs3 Riverhead Networks Captus Networks Arbor Networks Asta Networks Mazu Networks 13
4 Ανάλυση και κατάταξη των DDoS attacks Στο κεφάλαιο αυτό επιχειρείται µια κατάταξη των επιθέσεων DDoS µε βάση τον τρόπο αναζήτησης agents, την στρατηγική αναζήτησης κενών ασφαλείας, την µέθοδο άρνησης υπηρεσίας, καθώς και ως προς τον στόχο ή θύµα. 4.1 Παρουσίαση των DDoS επιθέσεων Επειδή το πρόβληµα των DDoS επιθέσεων αποτελεί µια σηµαντική απειλή προς το διαδίκτυο, έχουν προταθεί αρκετοί και διαφορετικοί µηχανισµοί για την αντιµετώπιση των διαφόρων τύπων επίθεσης. Φυσικά σε ένα δυναµικό περιβάλλον αλλάζουν και αναδιαµορφώνονται ανάλογα µε τα συστήµατα αναγνώρισης και τα εργαλεία επίθεσης. Θα επιχειρήσουµε µια παρουσίαση των DDoS [3] που βασίζεται στα µέσα που χρησιµοποιούνται για να εξαπολύσει κάποιος µια τέτοια επίθεση, στα ίδια χαρακτηριστικά αυτής και στις επιπτώσεις που έχει στους αποδέκτες της. Παρακάτω φαίνεται µια σχηµατική αναπαράσταση της ταξινόµησης [3] των DDoS επιθέσεων : 14
Σχήµα 2: Κατηγορίες DDoS Επιθέσεων 4.2 Βαθµός αυτοµατοποίησης µιας DDoS επίθεσης Κάθε απόπειρα αναζήτησης host µέσω των οποίων πραγµατοποιείται η επίθεση, ανακάλυψης των κενών ασφαλείας του λειτουργικού τους συστήµατος καθώς και η µόλυνσή τους µε ανάλογο λογισµικό υπεύθυνο για την DDoS µπορεί είτε να γίνει µε πλήρως αυτοµατοποιηµένη διαδικασία, µε ηµίαυτοµατοποιηµένη ή µε χειροκίνητη. Χειροκίνητη DDoS επίθεση: Ο επιτιθέµενος αναζητά ο ίδιος µηχανήµατα (hosts) µε ελλιπή προστασία, τα ελέγχει, εγκαθιστά τον κώδικα που θα υλοποιήσει την επίθεση και εν συνεχεία την εκκινεί (όταν έχει υπό τον έλεγχό του επαρκή αριθµό hosts). Μόνο οι πρώιµες DDoS επιθέσεις ανήκουν στην κατηγορία αυτή. Σε µικρό χρονικό διάστηµα αυτοµατοποιήθηκε η όλη διαδικασία. 15
Ηµίαυτοµατοποιηµένη DDoS επίθεση: Το DDoS δίκτυο αποτελείται στην περίπτωση αυτή από έναν τοποτηρητή (master) και από ελεγχόµενους εξυπηρετητές (agents or slaves). Η διαδικασία αναζήτησης, εύρεσης κενών ασφαλείας και µόλυνσης των agents είναι αυτοµατοποιηµένη. Κατά τη διάρκεια της επίθεσης καθορίζεται ο τύπος της επίθεσης, η έναρξη, η διάρκεια και το θύµα µέσω του ελέγχου του master στους agents. Με βάση τον τρόπο επικοινωνίας µεταξύ master και agents έχουµε τον διαχωρισµό της κατηγορίας αυτής σε: o Άµεσο τρόπο επικοινωνίας: Η επικοινωνία µεταξύ master και agents γίνεται µε ενσωµάτωση (hardcode) της IP διεύθυνσης του master στον κώδικα που εγκαθιστά ο επιτιθέµενος. Κάθε agent δηλώνει την κατάστασή του στον master, ο οποίος αποθηκεύει την IP του για µετέπειτα χρήση. Το µειονέκτηµα του τρόπου αυτού είναι ότι αν ανακαλυφθεί ο agent σε έναν υπολογιστή φαίνεται η δοµή όλου του DDoS δικτύου. Επιπλέον µε χρήση ενός network scanner µπορούν να αναγνωριστούν οι πόρτες επικοινωνίας µεταξύ master-agent. o Έµµεσο τρόπο επικοινωνίας: Στη µέθοδο αυτή η επικοινωνία µεταξύ master-agent γίνεται µέσω χρήσης κάποιας νόµιµης υπηρεσίας του διαδικτύου. Πρόσφατες επιθέσεις έκαναν χρήση του IRC (Internet Chat) [1]. Η µέθοδος αυτή προσφέρει ανωνυµία στον επιτιθέµενο καθώς αντικαθίσταται ο master από µία νόµιµη υπηρεσία και οι agents δεν ακούν σε προκαθορισµένη πόρτα (γίνεται δυσκολότερος ο εντοπισµός τους) αντ αυτού τα µηνύµατα ελέγχου περνούν µέσα από την IRC κίνηση. Ακόµα και αν αποκαλυφθεί ένας agent µπορούµε µόνο να διαπιστώσουµε τα ονόµατα ενός IRC server και ενός καναλιού που χρησιµοποιούνται για την DDoS επίθεση. Επιπλέον οι επιτιθέµενοι προκειµένου να αποφύγουν τον εντοπισµό υλοποιούν αυτόµατη αλλαγή IRC καναλιού από τους agents. Παρόλο που αναγνωρισµένες επιθέσεις τέτοιας φύσεως έχουν γίνει µόνο µέσω της IRC υπηρεσίας, δεν αποκλείεται να επεκταθούν και µέσω άλλων γνωστών υπηρεσιών. 16
Αυτοµατοποιηµένη DDoS επίθεση: Με τον τρόπο αυτόν είναι αυτοµατοποιηµένη όλη η διαδικασία από την εύρεση hosts, την αναζήτηση κενών ασφαλείας στο λειτουργικό τους σύστηµα και την εγκατάσταση του κατάλληλου, για την επίθεση, λογισµικού. Αποφεύγεται λοιπόν οποιαδήποτε επικοινωνία µεταξύ του επιτιθέµενου και των agents. Η έναρξη της επίθεσης, ο τύπος της, η διάρκειά της και ο καθορισµός του θύµατος είναι ενσωµατωµένα (hardcoded) στον κώδικα των agents. Προσφέρει λοιπόν ο τρόπος αυτός τη µικρότερη δυνατή έκθεση του επιτιθέµενου ως προς την ανίχνευσή του, από την άλλη το hardcode των χαρακτηριστικών της επίθεσης στον κώδικα θα σήµαινε ότι αυτή δεν θα µπορούσε να αλλάξει και άρα να επαναχρησιµοποιηθεί το δίκτυο των agents. Όµως η µέθοδος µε την οποία διανέµονται οι agents αφήνει τρόπο σύνδεσης στους hosts έτσι ώστε αν θέλει µπορεί ο επιτιθέµενος να µεταβάλλει τον κώδικα. Αν επιπλέον οι agents επικοινωνούν µέσω IRC καναλιών µπορούν αυτά να χρησιµοποιηθούν για προσθήκες στον κώδικά τους [1]. 4.3 Μέθοδοι στρατολόγησης agents για την υλοποίηση µιας DDoS επίθεσης Τόσο η ηµιαυτοµατοποιηµένη όσο και η αυτοµατοποιηµένη επίθεση DDoS ανακαλύπτουν hosts που θα τους χρησιµοποιήσουν σαν agents µέσω ανίχνευσης πορτών (port scan) µε τη βοήθεια σκουληκιών (worms) ή δούρειων ίππων (trojans). Περίπου 3 εκατοµµύρια port scans ανά ηµέρα µετρήθηκαν [4], όπου αναλύθηκαν logs από firewall πάνω από 1600 δικτύων, το αποτέλεσµα ήταν ότι το µεγαλύτερο ποσοστό από αυτά (περίπου 60%) αφορούσε ανακάλυψη κενών ασφαλείας Web servers µε παράλληλη προσπάθεια εξάπλωσης κάποιου worm. Ο απώτερος στόχος του port scanning προς οµάδες υπολογιστών (hosts) είναι η κατηγοριοποίησή τους µε βάση την IP (Internet Protocol) διεύθυνσή τους ως προς τα πιθανά τρωτά σηµεία τους, σε επίπεδο ασφάλειας, και εν συνεχεία η εύρεση αυτών. Με βάση τον τρόπο ανίχνευσης hosts διαχωρίζονται οι DDoS επιθέσεις σε αυτές που χρησιµοποιούν τυχαίες IP 17
διευθύνσεις, IP µε βάση λίστες, IP µε βάση τη χρησιµοποιούµενη υπηρεσία, ψευδοτυχαίες IP και IP που ανήκουν σε συγκεκριµένα υποδίκτυα (subnets) [5], [6]. Τυχαίες IP διευθύνσεις: Με αυτόν τον τρόπο κάθε host που είναι υπό τον έλεγχο του επιτιθέµενου δηµιουργεί µια λίστα από τυχαίες IP, κάνοντας χρήση µιας τιµής αρχικοποίησης. Το µειονέκτηµα του scan είναι ότι δηµιουργεί µεγάλη κίνηση η οποία µπορεί να οδηγήσει σε ανίχνευση της επίθεσης. Παράδειγµα αυτού του τύπου αποτελεί ο Code Red [7]. IP διευθύνσεις µε βάση λίστα: Ένα µηχάνηµα κάνει scan µε βάση µια συγκεκριµένη λίστα από IP s. Όταν ανακαλύψει έναν ευάλωτο host του αποστέλλει ένα µέρος της λίστας και συνεχίζει µε την υπόλοιπη. Ο τρόπος αυτός προσφέρει µεγάλη ταχύτητα εξάπλωσης αν η λίστα περιέχει κυρίως ευάλωτους hosts και δυσκολότερη ανίχνευση καθώς δεν δηµιουργεί επιπλέον κίνηση (κάθε IP διεύθυνση της λίστας χρησιµοποιείται µία φορά). Πλεονέκτηµα που εύκολα χάνεται ιδίως αν το µέγεθος της λίστας είναι µεγάλο και κατά συνέπεια η µεταφορά της από host σε host γίνει ανιχνεύσιµη. Παράδειγµα αποτελεί το flash worm [6]. Επιλογή IP βάση χρήσης κοινής υπηρεσίας: Ο τρόπος αυτός επιλογής στόχων βασίζεται στις συνήθειες των χρηστών και στον τρόπο που επικοινωνούν. Έτσι υπάρχουν worms που µεταδίδονται µέσω e-mail µε βάση τη λίστα επαφών του εκάστοτε χρήστη. Ή worms που πλήττουν web servers και µεταδίδονται µέσω των browser ευπαθών host. Η µέθοδος αυτή δεν δηµιουργεί αισθητή αύξηση της κίνησης στο δίκτυο, συνεπώς δεν είναι εύκολα ανιχνεύσιµη, βασίζεται όµως στις συνήθειες του εκάστοτε χρήστη και άρα ο ρυθµός εξάπλωσης του δικτύου των agent ξεφεύγει από τον έλεγχο του επιτιθέµενου. Ψευδοτυχαίες IP διευθύνσεις: Όλο το δίκτυο των agents που έχει στην κατοχή του ο επιτιθέµενος µοιράζεται µία ψευδοτυχαία µετάθεση όλων των διευθύνσεων του Internet διαχωρισµένων µε βάση την IP του καθενός τους. ηµιουργείται δηλαδή αρχικά µία κρίσιµη µάζα agents που καθένας ξεκινάει να κάνει scan τη 18
δικιά του λίστα που υπολογίζεται µε βάση την IP του. Αν πέσει πάνω σε host που είναι ήδη µολυσµένος επαναϋπολογίζει τη λίστα του ξεκινώντας από ένα τυχαίο σηµείο της. Μετά από κάποιο χρόνο το worm ελαχιστοποιεί τα hits προς τους ήδη µολυσµένους host. Αυτό έχει σαν αποτέλεσµα να µην είναι ανιχνεύσιµος ο τρόπος αυτός µε βάση την κίνηση που δηµιουργεί. Αν και δεν έχει εφαρµοσθεί ή ανιχνευθεί ακόµα [5] θα είχε τεράστια ταχύτητα εξάπλωσης. IP που ανήκουν σε τοπικά υποδίκτυα: Όλες οι παραπάνω µέθοδοι µπορούν να τροποποιηθούν κατάλληλα ώστε να προτιµούν IP s από το ίδιο υποδίκτυο ενός agent που ανήκει στον επιτιθέµενο που σηµαίνει ότι ένας agent µπορεί να ανακαλύψει πολλούς πιθανούς host πίσω από ένα firewall. Παράδειγµα τέτοιων worms είναι το Code red II [8]και το Nimda worm [9]. 19
4.5 Στρατηγική αναζήτησης κενών ασφαλείας Με βάση τη στρατηγική αναζήτησης κενών ασφαλείας διαχωρίζονται οι επιθέσεις σε οριζόντιας αναζήτησης, κάθετης, συγχρονισµένης και αόρατης (stealth) [4], [10]. Οι παραπάνω τεχνικές συνδυάζονται συνήθως από τους επιτιθέµενους. Οριζόντιας αναζήτησης: Είναι ο κοινός τρόπος scanning από τα worms. Αναζητούν ένα συγκεκριµένο κενό ασφαλείας στοχεύοντας πάντα σε συγκεκριµένη πόρτα για όλη τη λίστα IP διευθύνσεων. Κάθετης αναζήτησης: Σε αυτή τη µέθοδο οι µηχανές που επιτελούν το scanning στοχεύουν σε οποιοδήποτε κενό ασφαλείας ψάχνοντας όλες τις πόρτες ανά IP διεύθυνση. Συγχρονισµένης αναζήτησης: Χρησιµοποιείται σε τοπικά υποδίκτυα. Αναζητούµε συγκεκριµένες πόρτες (συνεπώς και αδυναµίες) στοχεύοντας σε όλες τις IP s ενός subnet. Αόρατη (stealth) αναζήτηση: Οποιαδήποτε από τις παραπάνω µεθόδους scanning πορτών µπορεί να υλοποιηθεί σε µεγάλη χρονική διάρκεια έτσι ώστε να αποφευχθεί η ανακάλυψή της από συστήµατα αναγνώρισης. 20
4.6 Τρόποι εγκατάστασης κώδικα στους agents Μετά τις φάσεις της αναζήτησης κενών ασφαλείας και της επιτυχούς εκµετάλλευσής τους πρέπει αν εγκατασταθεί και ο κώδικας που θα επιτελέσει την επίθεση. Με βάση τον τρόπο µεταφοράς του έχουµε τον εξής διαχωρισµό: κεντρική διανοµή του κώδικα, αλυσιδωτή και αυτόνοµη. Κεντρική διανοµή του κώδικα: Ο διαµοιρασµός του κώδικα επίθεσης από ένα κεντρικό σηµείο ή σηµεία σηµαίνει ότι δηµιουργείται µεγάλος δικτυακός φόρτος µεταξύ των agents και των server που ενδέχεται να οδηγήσει σε αναγνώριση της επίθεσης. Το li0n [11] worm λειτουργούσε µε αυτόν τον τρόπο. Αλυσιδωτή διανοµή του κώδικα: Κάθε µηχάνηµα το οποίο γίνεται µέρος του botnet αναλαµβάνει να διαµοιράσει τον κώδικα επίθεσης στα µεταγενέστερα µηχανήµατα. Παράδειγµα τέτοιας συµπεριφοράς ήταν το Ramen worm [12] Αυτόνοµη διανοµή κώδικα: Με τη µέθοδο αυτή αποφεύγεται εντελώς το βήµα αντιγραφής του κώδικά επίθεσης. Με τον τρόπο αυτόν λειτουργούν τα e-mail worms. εν αυξάνεται αισθητά η κίνηση στο δίκτυο για το λόγο αυτόν είναι δυσκολότερη η αναγνώριση της επίθεσης. 21
4.7 Μέθοδοι άρνησης υπηρεσίας µιας DDoS επίθεσης Οι DDoS επιθέσεις βασίζονται σε δύο κύριες µεθόδους για να επιτύχουν την άρνηση της υπηρεσίας του θύµατος προς τους πελάτες του. Η πρώτη εκµεταλλεύεται παραλήψεις ή λάθη στον κώδικα κάποιου συγκεκριµένου πρωτοκόλλου επικοινωνίας και ονοµάζεται σηµασιολογική, ενώ η δεύτερη βασίζεται στη γένεση µεγάλου πλήθους αιτήσεων σύνδεσης στην υπηρεσία µε σκοπό να κατασταθεί αυτή µη προσβάσιµη και ονοµάζεται πληµµύρα (flooding). Σηµασιολογική επίθεση DDoS: Η επίθεση αυτής της κατηγορίας βασίζεται στην εκµετάλλευση του τρόπου υλοποίησης ή κάποιας δυσλειτουργίας ενός πρωτοκόλλου επικοινωνίας ή µιας εφαρµογής που είναι εγκατεστηµένη στο θύµα, µε σκοπό να καταναλώσει ει δυνατόν όλους τους πόρους του. Παράδειγµα τέτοιας επίθεσης είναι η TCP SYN attack [13] που βασίζεται στο ότι το three way handshake του TCP πρωτοκόλλου δεσµεύει πόρους στην ουρά αναµονής ενός εξυπηρετητή (web server) προκείµενου να απαντήσει σε κάθε αίτηµα TCP SYN µε ένα TCP ACK πακέτο. Ο επιτιθέµενος αποστέλλει µεγάλο αριθµό αίτησης συνδέσεων (TCP SYN), οι οποίες ποτέ δεν ολοκληρώνονται, µε αποτέλεσµα να γεµίζει η ουρά του web server. Η NAPTHA [14] παραδείγµατος χάριν, είναι µια ιδιαίτερα εξαντλητική, για το θύµα TCP επίθεση. Εκτός της συνηθισµένης προαναφερθείσας παραπάνω συµπεριφοράς τέτοιων επιθέσεων, παρακάµπτει το πρωτόκολλο TCP επιβάλλοντας στους agents (µέσω των οποίων πραγµατοποιείται η επίθεση) να µην αποθηκεύουν την κατάσταση των ενεργών TCP συνδέσεών τους, στη θέση αυτών αλλάζει τα πακέτα απάντησης προς τον server (θύµα). Στην CGI [15] (Common Gateway Interface) attack ο επιτιθέµενος καταναλώνει χρόνο στην CPU του web server αποστέλλοντας πληθώρα αιτηµάτων CGI. Γίνεται λοιπόν σαφές ότι ακόµα και agents χαµηλών δυνατοτήτων (από πλευράς πόρων) µπορούν µε τις παραπάνω µεθόδους να αχρηστεύσουν υψηλότερων προδιαγραφών servers. 22
Επιθέσεις πληµµύρας (flooding attacks): Το είδος αυτό επίθεσης βασίζεται στην αποστολή κίνησης, τάξεις µεγέθους µεγαλύτερης από αυτήν που θα µπορούσε να διαχειριστεί το θύµα, κατά τα άλλα όµως νόµιµης. Εφόσον, όπως συµβαίνει στις περισσότερες των περιπτώσεων, το ενδιάµεσο δίκτυο (µεταξύ θύτη-θύµατος) έχει µεγαλύτερη χωρητικότητα (από ότι θα άντεχε το θύµα ), αυτό οδηγείται στην εξάντληση των πόρων του. Η διαφορά µεταξύ της flooding και της σηµασιολογικής επίθεσης εδράζεται σε ένα λεπτό όριο. Η σηµασιολογική καταναλώνει και αυτή τους πόρους των συστηµάτων του θύµατος και εκµεταλλευόµενη ελλείψεις στον σχεδιασµό πρωτοκόλλων συχνά χρησιµοποιείται ως µέσο για µία flooding attack. Παράδειγµα αυτής της συµπεριφοράς είναι η DNS [16](Domain System Name) request επίθεση ή η Smurf [17]επίθεση. Η διαφορά είναι ότι ενώ το θύµα µπορεί να αντιµετωπίσει τις παραπάνω επιθέσεις ή να περιορίσει τις επιπτώσεις τους είτε τροποποιώντας τα τρωτά σηµεία των πρωτοκόλλων επικοινωνίας είτε φιλτράροντας την κίνηση, δεν µπορεί να κάνει τίποτε σαν αντιστάθµιση σε περίπτωση flooding attack. Επιπροσθέτως προσπαθώντας να αντιµετωπίσει κάποιος µια σηµασιολογική επίθεση υπάρχει περίπτωση να µετατραπεί αυτή σε flooding. Αν, παραδείγµατος χάριν, το θύµα χρησιµοποιήσει TCP SYN cache ή TCP SYN cookies [18] για να περιορίσει µια TCP SYN attack, δεν µπορεί να αποκλείσει το ενδεχόµενο να δεχτεί µη διαχειρίσιµο ποσοστό κίνησης από πλευράς επεξεργαστικής ισχύος ή χωρητικότητας (bandwidth) δικτύου. Σύµφωνα µε τα παραπάνω είναι σαφές ότι το δεύτερο είδος επίθεσης είναι πιο επιζήµιο και δυσκολότερα ανιχνεύσιµο, ωστόσο χρειάζεται ο επιτιθέµενος να συγκεντρώσει αρκετούς πόρους ώστε να είναι επιτυχηµένη η επίθεση. 23
4.8 Εγκυρότητα της IP διεύθυνσης του αποστολέα Σηµαντικό κοµµάτι στις DDoS επιθέσεις κατέχει η εγκυρότητα της IP διεύθυνσης του αποστολέα. Ο επιτιθέµενος (οι agents) αλλάζει στην επικεφαλίδα (header) των πακέτων που στέλνει τη source IP address. Αν µπορούσαµε να εξαλείψουµε τη µέθοδο αυτή τότε πολλά είδη DDoS attack θα µπορούσαν να εκλείψουν όπως οι reflector attacks [19] και αρκετές ακόµη να περιοριστούν µέσω φιλτραρίσµατος. Η τεχνική αυτή είναι διαδεδοµένη καθώς ο επιτιθέµενος µπορεί να µιµηθεί στα αποστελλόµενα πακέτα οποιαδήποτε IP διεύθυνση. Ο διαχωρισµός που κάνουµε γίνεται µε βάση την πλαστογράφηση της source IP ή τη χρήση έγκυρης. Μη υπαρκτή IP διεύθυνση: Είναι συνηθισµένη πρακτική καθώς ο επιτιθέµενος µπορεί προκειµένου να αποφύγει τον εντοπισµό να χρησιµοποιήσει spoofed IP addresses, δηµιουργώντας όµως παράλληλα και περισσότερο θόρυβο στο δίκτυο (εφόσον η διευθύνσεις που επιλέγει δεν υπάρχουν) διευκολύνοντας την αναγνώριση της DDoS attack. Περεταίρω διαχωρισµό της τεχνικής αυτής κάνουµε µε βάση την δυνατότητα δροµολόγησης ή µη της IP και µε βάση την τεχνική που χρησιµοποιεί ο επιτιθέµενος ως προς την επιλογή των ψευδών IP διευθύνσεων. o IP που µπορούν να δροµολογηθούν: Αν η διεύθυνση που εκµεταλλεύεται ο επιτιθέµενος µπορεί να δροµολογηθεί στο δίκτυο σηµαίνει ότι µιµείται κάποιον υπαρκτό host. Η τεχνική αυτή δεν χρησιµοποιείται κυρίως για απόκρυψη ταυτότητας αλλά για να εξαπολύσει κάποιος µια reflector attack προς την IP αυτήν. o IP που δεν δροµολογούνται: Αυτές οι διευθύνσεις είναι είτε δεσµευµένες για ιδιωτική χρήση όπως οι 192.168.0.0/16 ή 10.0.0.0/8 είτε ανήκουν σε εταιρείες, οργανισµούς ή ISP αλλά δεν χρησιµοποιούνται. Τα πακέτα µε ιδιωτικές IP διευθύνσεις είναι εύκολα αναγνωρίσιµα σε αντίθεση µε αυτά 24
που µιµούνται αχρησιµοποίητες IP. Η κίνηση που προκαλεί ωστόσο η δεύτερη κατηγορία δηµιουργεί έναν ιδιότυπο θόρυβο στο δίκτυο (backscatter noise [20]) που βοηθάει τα παρατηρητήρια του διαδικτύου να διαστασιολογήσουν το εύρος αυτού του τύπου επιθέσεων. Ακολουθεί περιγραφή των τρόπων επιλογής ψευδών IP. o Χρήση τυχαίων ψευδών IP: Πολλές επιθέσεις γίνονται µε χρήση τυχαίων IP διευθύνσεων αποστολέα, γεγονός ιδιαίτερα εύκολο αφού αρκεί µια γεννήτρια τυχαίων 32-bit αριθµών και η προσθήκη τους στους header των πακέτων. Επειδή µε την υλοποίηση φίλτρων µειώνονται οι επιπτώσεις της µεθόδου οι επιτιθέµενοι ωθούνται στη χρήση πιο περίπλοκων τεχνικών όπως επιλογής ψευδούς IP από subnet (που ανήκει o agent) ή χρήση IP που ανήκει σε ενδιάµεσο host µεταξύ θύµατος και agent, µέθοδοι που αναλύονται παρακάτω. o Χρήση ψευδούς IP από το subnet του agent: Με τη µέθοδο αυτή ο επιτιθέµενος χρησιµοποιεί τυχαίες ψευδείς IP από το subnet του δικτύου των agent, µέσω των οποίων εξαπολύει την επίθεση. Αν δηλαδή ένας agent έχει IP από το 125.234.2.0/24 δίκτυο µπορεί να χρησιµοποιήσει όλες τις IP από 125.234.2.1 έως 125.234.2.254. Ο εντοπισµός της ανωµαλίας των πακέτων στο εσωτερικό δίκτυο (από τους host έως τον router) δεν είναι εύκολος καθώς παρακάµπτει κανόνες φιλτραρίσµατος µε βάση την IP (χρησιµοποιεί έµπιστες διευθύνσεις από το εσωτερικό (private) δίκτυο), ενώ είναι αδύνατον να ανιχνευθούν τα παραποιηµένα πακέτα από τη στιγµή που βρίσκονται στο public δίκτυο. Γίνεται κατανοητό ότι η µέθοδος αυτή προσφέρει προστασία (για τον επιτιθέµενο) απέναντι σε φιλτράρισµα της κίνησης, ενώ καθιστά ουσιαστικά αδύνατο τον εντοπισµό των agents µέσω των οποίων υλοποιείται η DDoS attack. 25
o Χρήση IP ενδιάµεσου host: Μία τέτοια επίθεση θα χρησιµοποιούσε, σαν ψευδή IP, διεύθυνση από host ή subnet που βρίσκεται µεταξύ θύµατος και agent που πραγµατοποιεί την DDoS attack. Αυτό σηµαίνει ότι θα περνούσε από ελέγχους route based filtering. o Χρήση ψευδών IP από στατική λίστα: Αν ο επιτιθέµενος θέλει να υλοποιήσει µία reflector attack [19] ή να φανεί ότι κάποιος άλλος πραγµατοποιεί την επίθεση τότε για τη διαµόρφωση της source IP των πακέτων χρησιµοποιεί µια στατική λίστα IP διευθύνσεων. Χρήση πραγµατικών IP διευθύνσεων: Αν και οι επιτιθέµενοι στην πλειονότητα των επιθέσεων κάνουν χρήση ψευδών IP αυτό δεν συµβαίνει όταν οι agents έχουν παλαιότερο λειτουργικό σύστηµα ή µπορεί να µην είναι επιθυµητό σε περίπτωση που το είδος της επίθεσης απαιτεί ανταλλαγή έγκυρων πακέτων µεταξύ του θύµατος και των agents. Χαρακτηριστικό παράδειγµα είναι η NAPTHA [14]. 4.9 υναµική των DDoS επιθέσεων Κατά τη διάρκεια µιας DDoS επίθεσης κάθε agent που συµµετέχει σε αυτήν στέλνει πακέτα στο θύµα. Ανάλογα µε το ρυθµό αποστολής πακέτων η επίθεση έχει διαφορετικές επιπτώσεις και αντιµετώπιση. H συχνότερη περίπτωση είναι ο σταθερός ρυθµός αποστολής πακέτων, µε τους agent να αποστέλλουν στον µέγιστο ρυθµό πακέτα προς το θύµα. Γρήγορα οι πόροι τους προς επίθεση συστήµατος εξαντλούνται, ενώ ο επιτιθέµενος έχει χρησιµοποιήσει τον ελάχιστο αριθµό agents. Όµως η απότοµη αύξηση της κίνησης είναι εύκολα ανιχνεύσιµη από εργαλεία που κάνουν monitor το δίκτυο. Για το λόγο αυτό ακολουθούνται µέθοδοι µε µεταβαλλόµενο ρυθµό αποστολής πακέτων. Μια επίθεση µε αργά αυξανόµενο ρυθµό αποστολής κίνησης προς το θύµα 26
σηµαίνει ότι του δεσµεύει προοδευτικά πόρους χωρίς να γίνεται αντιληπτή ενώ µπορεί να παρακάµψει συστήµατα ανίχνευσης επιθέσεων που βασίζονται στην εκπαίδευση. Παρεµφερείς είναι και οι επιπτώσεις µιας επίθεσης µε περιοδικά κρουστική συµπεριφορά. Οι agents ξεκινούν και σταµατούν την αποστολή πακέτων στο θύµα, αν δε είναι µεταξύ τους συγχρονισµένοι τότε έχουµε περιοδικές διακοπές στην υπηρεσία, τον server ή το δίκτυο που δέχεται επίθεση. Παραλλαγή της µεθόδου αυτής είναι ο διαχωρισµός των agents σε οµάδες οι οποίες είναι συγχρονισµένες και εκτελούν κυλιόµενες επιθέσεις έτσι ώστε τουλάχιστον µία από αυτές να είναι πάντα ενεργή. Σε αυτήν την περίπτωση το θύµα δέχεται συνεχή επίθεση, αλλά το δίκτυο των agents αποκρύπτεται καθώς δεν προκαλεί παρατεταµένη αύξηση στην κίνηση των δικτύων που ανήκει. 4.10 Χαρακτηρισµός των επιθέσεων DDoS Εξετάζοντας το περιεχόµενο των header των πακέτων επίθεσης είναι εφικτό να κατατάξουµε µια DDoS επίθεση. Αυτή η κατηγοριοποίηση βοηθάει στη διατύπωση κανόνων σε firewall ή σε άλλα συστήµατα αναγνώρισης και αποτροπής των DDoS attacks. Με βάση τη δυνατότητα χαρακτηρισµού µιας επίθεσης τις διαχωρίζουµε σε κατατασσόµενες ή µη. Μπορούµε να κατατάξουµε τις επιθέσεις που στοχεύουν σε συγκεκριµένα πρωτόκολλα ή υπηρεσίες και µπορούν να ανιχνευθούν συνδυάζοντας ανάλυση του IP header και του TCP πρωτοκόλλου ή και του περιεχοµένου (payload) των πακέτων. Τέτοιες επιθέσεις θα ήταν π.χ. οι TCP SYN ή ICMP attack. Επιπλέον ανάλογα µε τη υπηρεσία του θύµατος που τελεί υπό επίθεση µπορούµε να έχουµε κίνηση στο δίκτυο που µπορεί ή όχι να φιλτραριστεί από ένα firewall. Επιθέσεις που φιλτράρονται είναι αυτές που χρησιµοποιούν µη-έγκυρα πακέτα (π.χ. χρήση πεδίων στο header που είναι δεσµευµένα για µελλοντική χρήση) ή πακέτα που αφορούν δευτερεύουσες υπηρεσίες του θύµατος. Αυτό µας επιτρέπει να διακόψουµε µε 27
έναν κανόνα τα µη-έγκυρα πακέτα ή να διακόψουµε την δευτερεύουσα υπηρεσία εφόσον δεν είναι καίρια για την εξυπηρέτηση των πελατών του θύµατος. Οι επιθέσεις που δεν φιλτράρονται αφορούν πάντα έγκυρη κίνηση και υπηρεσίες πρωτεύουσας σηµασίας για το θύµα. Οποιαδήποτε προσπάθεια περιορισµού της επίθεσης θα οδηγούσε στην περίπτωση αυτή σε DoS όλων των χρηστών της υπηρεσίας. Τέτοια επίθεση είναι µια HTTP flood attack σε έναν web-server ή µία DNS flood attack σε έναν name-server και γενικά επιθέσεις οι οποίες δηµιουργούν κίνηση η οποία δεν διαχωρίζεται µε προφανή τρόπο από την κανονική. Τέλος επιθέσεις DDoS που διεξάγονται µε χρήση πολλαπλών πρωτοκόλλων όπως: TCP SYN,TCP ACK, ICMP ECHO,UDP δεν µπορούµε να τις χαρακτηρίσουµε γρήγορα και αποδοτικά έτσι ώστε να καταστεί δυνατή η άµεση αντιµετώπισή τους. 4.11 Πού στοχεύει µία DDoS επίθεση Όπως έχει καταστεί σαφές από τα παραπάνω οι DDoS επιθέσεις δεν στοχεύουν κατ ανάγκη έναν συγκεκριµένο host. Ανάλογα µε τον τύπο του στόχου που επιλέγεται κάθε φορά έχουµε DDoS attacks που αφορούν: εφαρµογές, µεµονωµένους hosts, πόρους συστηµάτων, δίκτυο και υποδοµή υπηρεσιών. Εφαρµογές: Οι επιθέσεις αυτές στοχεύουν συγκεκριµένη εφαρµογή του θύµατος, µε αποτέλεσµα τον αποκλεισµό νοµίµων χρηστών της υπηρεσίας και δέσµευση πόρων του application-server. Αν υπάρχουν όρια χρήσης µεταξύ των εφαρµογών ως προς τους πόρους του server οι υπόλοιπες συνεχίζουν να λειτουργούν κανονικά. Η ανίχνευση DDoS attack του είδους αυτού είναι δύσκολη ιδίως αν ο application-server παραµένει λειτουργικός. Επίσης δεν επηρεάζεται το κατώφλι διακύµανσης της κίνησης σε συστήµατα αναγνώρισης και τα επιπλέον πακέτα είναι ουσιαστικά όµοια µε αυτά που εξυπηρετεί η εκάστοτε εφαρµογή. Για την αντιµετώπιση λοιπόν µιας τέτοιας επίθεσης κάθε application του server θα έπρεπε να µοντελοποιηθεί και να προσοµοιωθεί η 28
έγκυρη κίνηση που εξυπηρετεί έτσι ώστε να ανιχνεύονται αυτές οι µικρής κλίµακας επιθέσεις. Μεµονωµένοι host: Επιθέσεις που σκοπό έχουν να διακόψουν την πρόσβαση στον στόχο τους είτε υπερφορτώνοντας το δίκτυό του είτε αναγκάζοντας τον σε επανεκκίνηση (µετά από πάγωµα ή κόλληµα του host). Μία επιτυχηµένη TCP SYN flood [13] επίθεση θα είχε τέτοια αποτελέσµατα. Όλα τα πακέτα µιας επίθεσης προς έναν συγκεκριµένο host έχουν στο πεδίο του παραλήπτη (destination) την IP του εν λόγω host. Στην περίπτωση που έχουµε φροντίσει να αναβαθµίσουµε το TCP stack,παραδείγµατος χάριν, οι επιθέσεις αυτού του τύπου υποβαθµίζονται στην κατηγορία της κατανάλωσης δικτυακών πόρων της σύνδεσης του host. Σε κάθε περίπτωση µια DDoS attack της µορφής αυτής δηµιουργεί µεγάλο αριθµό πακέτων στο δίκτυο και είναι εύκολο να ανιχνευθεί, αλλά για να επιστρέψει το θύµα σε οµαλή λειτουργία χρειάζεται έξωθεν βοήθεια όπως αυτή ενός firewall που θα ελέγχει τις εξερχόµενες TCP συνδέσεις του. Πόροι συστηµάτων: Στοχεύοντας πόρους που είναι κρίσιµοι για τη λειτουργία ενός οργανισµού, όπως ένας DNS server, ένας router ή δικτυακές διασυνδέσεις µε τον έξω κόσµο, µπορεί να προκληθεί αχρήστευση των παραπάνω υπηρεσιών, µηχανηµάτων ή µέρους του δικτύου. Μιας τέτοιας έκτασης DDoS attack µπορεί αν αντιµετωπισθεί µε εφεδρεία συστηµικών πόρων (redundancy). Επιθέσεις στο δίκτυο: Έχουν στόχο της εξάντληση του εισερχόµενου (downstream) εύρους ζώνης (bandwidth) του δικτύου του θύµατος. Στην DDoS attack αυτού του είδους αποστέλλουµε κίνηση ανεξαρτήτως πρωτοκόλλου, αφού σκοπός είναι το µέγεθος της δηµιουργούµενης κίνησης και όχι η εκµετάλλευση των αδυναµιών σχεδιασµού κάποιου συγκεκριµένου πρωτοκόλλου, µόνη προϋπόθεση είναι όλα τα πακέτα να περιέχουν σαν destination IP µία από τις έγκυρες διευθύνσεις του θύµατος. Πρόκειται για µια εύκολα ανιχνεύσιµη επίθεση που απαιτεί όµως αναδροµολόγηση της κίνησης 29
του δικτύου του θύµατος µέσω άλλων (δικτύων) µε σκοπό τη οµαλοποίηση της λειτουργίας του. Επιθέσεις στην υποδοµή υπηρεσιών: Στοχεύουν κατανεµηµένες υπηρεσίες που είναι µείζονος σηµασίας για τη λειτουργία για τη λειτουργία του Internet. Παραδείγµατα τέτοιων επιθέσεων είναι: επίθεση σε DNS (Domain Name Servers) [2] servers, σε δροµολογητές (routers) που αποτελούν τη ραχοκοκαλιά (core routers) του ικτύου και servers υπεύθυνους για έκδοση πιστοποιητικών (PKI infrastructure). Το κύριο χαρακτηριστικό των επιθέσεων αυτών δεν είναι ο τρόπος που χρησιµοποιούν για να στοχεύσουν µεµονωµένους hosts, routers ή DNS servers, αλλά ότι το κάνουν µαζικά εξαντλώντας και την εφεδρεία συστηµικών πόρων που πιθανόν να υπάρχει. Για να αντιµετωπιστούν DDoS επιθέσεις της κλίµακας αυτής χρειάζεται συνεργασία πολλών µερών του Internet. 4.12 Επιπτώσεις των DDoS επιθέσεων στα θύµατα εν έχουν πάντα όλες οι DDoS επιθέσεις την ίδια επίπτωση στους αποδέκτες τους. Μπορούµε να ξεχωρίσουµε δύο περιπτώσεις, αυτή της πλήρους διακοπής µιας υπηρεσίας, server, δικτύου ή εφαρµογής και αυτή της µερικής όχλησης ή κατανάλωσης µέρους των πόρων ενός host, δικτύου ή υπηρεσίας. Η πλειονότητα των DDoS επιθέσεων ανήκει στην κατηγορία της προσπάθειας της πλήρους διακοπής στην πρόσβαση µίας υπηρεσίας. Οι επιπτώσεις στο θύµα είναι ανάλογες µε την πιθανότητα και την ταχύτητα ανάκτησης της πρόσβασης των νοµίµων χρηστών στην υπηρεσία από τη στιγµή που σταµατήσει ή περιοριστεί η DDoS attack. Έτσι έχουµε περιπτώσεις που από τη στιγµή που διακόπτεται η επίθεση χωρίς περαιτέρω παρέµβαση το δίκτυο ή το σύστηµα ή η υπηρεσία επανέρχεται στην πρότερη λειτουργική της κατάσταση. Τέτοιο παράδειγµα είναι µια UDP flood attack η οποία 30
καταναλώνει δικτυακούς πόρους του θύµατος, από τη στιγµή που αντιµετωπιστεί το δίκτυο επανακάµπτει. Από τη άλλη είναι πιθανό να χρειαστεί ανθρώπινη παρέµβαση προκειµένου να αποκατασταθεί η πρόσβαση σε µία υπηρεσία. Παράδειγµα είναι µια TCP SYN flood attack σε έναν web-server ο οποίος παγώνει και χρειάζεται επανεκκίνηση. Τέλος υπάρχει η περίπτωση µία DDoS επίθεση να έχει επιπτώσεις στο υλικό (hardware) του θύµατος, έτσι ώστε για να αποκατασταθεί η βλάβη να είναι απαραίτητη η αντικατάσταση του εξοπλισµού. Τέτοιας φύσεως επίθεση καταγράφηκε πρόσφατα το 2010, υπεύθυνο για την οποία ήταν το STUXNET worm [21] [22] [23] το οποίο στοχεύει σε συστήµατα SCADA της Siemens. Επιθέσεις DDoS που έχουν ως στόχο την µερική όχληση ή κατανάλωση µέρους των πόρων ενός host, δικτύου ή υπηρεσίας δεν αποκόπτουν πλήρως τους νόµιµους χρήστες από το µέσον, γεγονός που συνεπάγεται ότι είναι δυσκολότερη η ανίχνευσή τους, καθώς µπορεί να παραµείνουν ενεργές για µεγάλο χρονικό διάστηµα. Μόνο σε ώρες µεγάλου φόρτου (pick hour) µπορεί να υπάρξει µη-πρόσβαση στην υπηρεσία γεγονός που µπορεί να οδηγήσει το θύµα στην επέκταση δικτυακού ή άλλου εξοπλισµού χωρίς να υπάρχει ανάγκη. Οι επιθέσεις αυτού του τύπου δεν ανιχνεύονται από κανένα σχεδόν σύστηµα αντιµετώπισης DDoS. 31
5 Μέθοδοι και συστήµατα αντιµετώπισης DDoS επιθέσεων Στο κεφάλαιο αυτό παρουσιάζονται οι τρόποι αντιµετώπισης DDoS επιθέσεων οι οποίοι ανήκουν σε δύο κύριες κατηγορίες, αυτήν της πρόληψης εκδήλωσης επιθέσεων και της αντιµετώπισής τους εν τη γενέσει. 5.1 Ανάλυση των υπαρχόντων µεθόδων αντιµετώπισης DDoS Η σοβαρότητα του προβλήµατος των DDoS attacks, η αυξανόµενη συχνότητά τους και η δυναµική τους, που επηρεάζει συστήµατα µεγάλης κλίµακας έχουν οδηγήσει σε πολλές προτάσεις και προσεγγίσεις για την αντιµετώπισή τους. Ωστόσο το πρόβληµα συνεχίζει να υφίσταται καθώς υπάρχουν δυσεπίλυτοι παράγοντες που δυσχεραίνουν την ουσιαστική του αντιµετώπιση. Αυτοί είναι επιγραµµατικά η αναγκαιότητα ενός κατανεµηµένου συστήµατος αντιµετώπισης DDoS επιθέσεων σε πολλά σηµεία του δικτύου (Internet), κι αυτό γιατί σε πολλές περιπτώσεις δεν µπορεί να περιορίσει και να αντιµετωπίσει αποτελεσµατικά ο αποδέκτης µια τέτοια επίθεση µε ίδια µέσα. Η έλλειψη λεπτοµερών δεδοµένων από DDoS attacks στο δίκτυο. Αν και έχουν γίνει µελέτες πάνω σε διαθέσιµα εργαλεία για εξαπόλυση επιθέσεων δεν δίνονται συχνά στη δηµοσιότητα στοιχεία που αφορούν αυτές, όπως ο τύπος της επίθεσης, η διάρκειά της, ο ρυθµός αποστολής πακέτων, το µέγεθος των πακέτων, ο αριθµός των agent και ο βαθµός διείσδυσης αυτής όπως και οι επιπτώσεις της. Τα παραπάνω δεδοµένα θα µπορούσαν να οδηγήσουν στην ανάπτυξη αποτελεσµατικότερων εργαλείων ανίχνευσης και αντιµετώπισης. Επιπλέον δεν υπάρχει τρόπος να προσοµοιωθεί µια τέτοιας έκτασης επίθεση ώστε να εξάγουµε χρήσιµα συµπεράσµατα και τέλος δεν είναι δυνατή η αξιολόγηση των συστηµάτων άµυνας απέναντι στις DDoS attacks, αφού δεν υπάρχει ένα κοινό πρότυπο κατάταξής τους. 32
5.2 Παρουσίαση των συστηµάτων αντιµετώπισης DDoS επιθέσεων Ακολουθεί µια παρουσίαση [3] των υπαρχόντων συστηµάτων αναγνώρισης µε βάση το αν αυτά είναι προληπτικού χαρακτήρα (µέτρα ασφαλείας και πολιτικές που εφαρµόζονται πάντα σε ένα δίκτυο είτε αυτό δέχεται επίθεση είτε όχι) ή ενεργητικού χαρακτήρα (συστήµατα αναγνώρισης επιθέσεων εν τη γενέσει τους και αντιµετώπισή τους), όπως επίσης µε κριτήριο το βαθµό αυτονοµίας των συστηµάτων αυτών (αποµονωµένα συστήµατα ή συνεργαζόµενα και µε άλλες οντότητες του δικτύου) αλλά και το σηµείο του δικτύου που θα πρέπει να εγκατασταθούν (τοπικό δίκτυο του θύµατος, ενδιάµεσο δίκτυο (ISP) ή στο Internet). Σχήµα 3: Κατηγορίες συστηµάτων αναγνώρισης DDoS επιθέσεων 33
5.3 Συστήµατα αντιµετώπισης DDoS προληπτικού χαρακτήρα Οι µηχανισµοί προληπτικού χαρακτήρα στοχεύουν είτε στην εξάλειψη της πιθανότητας εµφάνισης DDoS επίθεσης ή στην ανοσία των θυµάτων σε τέτοιες επιθέσεις έτσι ώστε να µην διακοπούν οι υπηρεσίες που προσφέρονται στους νόµιµους χρήστες. Πρόληψη εµφάνισης DDoS attack: Η πρόληψη βασίζεται στην άρση των όποιων τρωτών σηµείων έχουν τα συστήµατα και τα πρωτόκολλα που αυτά χρησιµοποιούν για την πρόσβασή τους στο Internet. εν µπορεί προφανώς µια τέτοια πολιτική να εφαρµοσθεί καθολικά σε όλα τα δίκτυα, αλλά υλοποιούµενο στο βαθµό που είναι εφικτό έχει σαν αποτέλεσµα τον περιορισµό των DDoS attacks σε συχνότητα και ένταση. Οι πολιτικές ασφαλείας µπορούν να προστατεύσουν µεµονωµένους host από γνωστές αδυναµίες των πρωτοκόλλων επικοινωνίας, ενώ λειτουργούν συµπληρωµατικά ως προς τις άλλες µεθόδους αντιµετώπισης DDoS επιθέσεων. Σύµφωνα µε τα παραπάνω έχουµε τη διασφάλιση του host ως προς το λειτουργικό σύστηµα (OS security) και ως προς τα χρησιµοποιούµενα δικτυακά πρωτόκολλα. o Ασφάλεια λειτουργικού συστήµατος: Η ασφάλεια των συστηµάτων αυξάνει τις πιθανότητες να µην γίνουν agents κάποιου botnet. Οι DDoS επιθέσεις βασίζονται στην εύρεση µεγάλου αριθµού host που µπορούν να ελέγξουν εύκολα στοχεύοντας σε αδυναµίες του λειτουργικού τους συστήµατος. Η πρόληψη αφορά εγκατάσταση ενηµερώσεων και εφαρµογή συστάσεων για όλα τα OS s (Linux, Unix, Solaris, Windows, etc.) προς αποφυγή ζηµιάς από κάποιο exploit (κώδικας που εκµεταλλεύεται κενά ασφαλείας). Επιπλέον υπάρχουν εφαρµογές που παρακολουθούν τα συστήµατα για µη εγκεκριµένη πρόσβαση και πιθανές αλλαγές σε κρίσιµα αρχεία. Τέτοια είναι το Tripwire [24] και το Aide [25], antivirus όπως τα Eset [26], Kaspersky [27] και Symantec [28] και firewalls όπως το Iptables [29]. 34
o Ασφάλεια πρωτοκόλλων: Υπάρχουν µηχανισµοί που στόχο έχουν την αντιµετώπιση των κενών ασφαλείας που προκύπτουν από κακό σχεδιασµό ή και εκµετάλλευση τρωτών µεθόδων κατά τη χρήση συγκεκριµένων πρωτοκόλλων επικοινωνίας. Επιπλέον προστασία µπορούµε να έχουµε απέναντι σε γνωστές επιθέσεις όπως TCP SYN attack, authentication server attack και fragment packet attack. Τα αντίστοιχα µέτρα που προτείνονται είναι η χρήση TCP SYN cookies [30]ή SYN cache [31] µε στόχο την επιβεβαίωση της εγκυρότητας των συνδέσεων και αντικατάσταση του δηµοσίου κλειδιού (public key) για authentication στον server µε απαίτηση επίλυσης πολυωνύµου από τον client [32] (αποθέτοντας υπολογιστικό φόρτο στον client έναντι του server). Τέλος για την αντιµετώπιση της χρήσης ψευδούς IP (spoofing) προτείνεται φιλτράρισµα των έγκυρων IP σε επίπεδο ISP [33] ή η χρήση ενός νέου πρωτοκόλλου [34] µε δυνατότητα επιβολής έγκυρης IP διεύθυνσης τουλάχιστον σε επίπεδο δικτύου (subnet) όπου ανήκει ο επιτιθέµενος. Ανοσία των θυµάτων απέναντι σε DDoS attacks: Σκοπός των µηχανισµός αυτών είναι η αύξηση της ανοχής των θυµάτων απέναντι σε DDoS επιθέσεις έτσι ώστε να εξυπηρετούνται οι νόµιµοι πελάτες τους. Αυτό επιτυγχάνεται ή µε εφαρµογή πολιτικών κατανάλωσης πόρων ή µε εξασφάλιση επιπλέον πόρων κατά τη διάρκεια µιας επίθεσης. o Περιορισµός χρήσης πόρων: Η µέθοδος αυτή ελέγχει την πρόσβαση του χρήστη µε βάση τα προνόµια και τη συµπεριφορά του στους πόρους του συστήµατος. Όπου χρήστης θεωρείται µια διεργασία, µία µεµονωµένη IP διεύθυνση ή και µία οµάδα IP µε κοινή συµπεριφορά ως προς το σύστηµα. Επειδή προϋπόθεση της λειτουργίας της µεθόδου αυτής είναι η πιστοποίηση της ταυτότητας των χρηστών χρησιµοποιούνται συµπληρωµατικά µέθοδοι επαλήθευσής της. 35
Προτεινόµενοι τρόποι εφαρµογής είναι η χρήση επίλυσης κρυπτογραφηµένων puzzle [35] από τους χρήστες (TCP connections) όταν διαπιστωθεί DDoS επίθεση, η χρήση λίστας πρόσβασης βασισµένης σε χρονική κατανοµή των πόρων [36], η χρήση λίστας προτεραιότητας και κατανοµής των συνδέσεων µέσω διαδροµών δικτύου µε διαφορετικά βάρη [37], η επιβολή QoS (Quality of Service) δικτυακών συνδέσεων [38]µε πρόστιµο (στην πρόσβαση πόρων) ανάλογο µε τον βαθµό επιβάρυνσης της υπηρεσίας καθώς και η χρήση αλγορίθµων (class based) δροµολόγησης στους δροµολογητές (router) του θύµατος [39]. Αυστηρότερη προσέγγιση ακολουθούν οι παρακάτω λύσεις απαγορεύοντας την πρόσβαση a-priori σε όλους τους µη-έγκυρους χρήστες. Τα συστήµατα αυτά είναι: router της cisco που απαγορεύουν τη σύνδεση εφόσον δεν επαληθεύεται η IP του χρήστη µε παράλληλη χρήση λιστών πρόσβασης (ACL) [40] και συστήµατα κατανεµηµένης αρχιτεκτονικής που φιλτράρουν σε επίπεδο ISP την κίνηση [41]. o Πολλαπλασιασµός πόρων: Η µέθοδος αυτή στην ουσία δεν αντιµετωπίζει το πρόβληµα των DDoS επιθέσεων, αλλά υποθέτει ότι αν έχουµε πολλαπλάσιους πόρους από αυτούς που µπορεί να καταναλώσει µία επίθεση τότε η νόµιµη κίνηση δεν διακόπτεται. Το γεγονός αυτό σηµαίνει ότι συνδέουµε πολλαπλούς server πίσω από έναν ισοσταθµιστή κίνησης (load balancer) ο οποίος θα χρησιµοποιεί γραµµές υψηλής χωρητικότητας µε το υπόλοιπο δίκτυο. Η λύση αυτή θεωρείται κοστοβόρα. Σαν εναλλακτική υπάρχουν εταιρείες που στοχεύουν στην άµεση προστασία υπηρεσιών ή οργανισµών από DDoS επιθέσεις αναδροµολογώντας την κίνησή τους σε ένα cloud το οποίο έχει τη δυνατότητα να αντέξει το επιπλέον φορτίο κίνησης, ενώ οι υπηρεσίες του θύµατος συνεχίζουν να εξυπηρετούν τους νόµιµους πελάτες [42] [43]. 36
5.4 Συστήµατα αντιµετώπισης DDoS επιθέσεων ενεργού χαρακτήρα Σκοπός των συστηµάτων αυτών είναι να µειώσουν τις επιπτώσεις της επίθεσης. Για να γίνει αυτό πρέπει να αναγνωριστεί η επίθεση και να υπάρξει κάποια αντίδραση. Ιδανικός στόχος είναι η αναγνώριση κάθε DDoS attack έχοντας τον ελάχιστο αριθµό σφαλµάτων ως προς το αν υφίσταται ή όχι επίθεση. Μετά από αυτό µπορεί να ακολουθούν τρόποι για αντιµετώπιση των επιπτώσεών της. Με βάση τον τρόπο αναγνώρισης των επιθέσεων έχουµε συστήµατα αναγνώρισης προτύπων (pattern detection), αναγνώρισης ανωµαλιών (anomaly detection) και αναγνώριση της επίθεσης από ανεξάρτητα συστήµατα. Αναγνώριση προτύπων: Μηχανισµοί οι οποίο βασίζονται σε αναγνώριση προτύπων αποθηκεύουν συνήθως σε µία βάση δεδοµένων. Το µειονέκτηµα της µεθόδου αυτής είναι ότι µπορεί να αναγνωρίσει µόνο ήδη γνωστές επιθέσεις, ενώ καινούρια είδη ή ελαφρά τροποποιηµένες περνούν απαρατήρητες. Από την άλλη αναγνωρίζονται εύκολα και αξιόπιστα, χωρίς να υπάρχει περίπτωση λάθους ανίχνευσης, όλα τα δηλωµένα στην βάση δεδοµένων είδη επιθέσεων. Το Snort [44] είναι ένα τέτοιο πρόγραµµα ανοιχτού κώδικα ανίχνευσης DDoS attack. Τα προγράµµατα αυτά χρειάζονται τακτική ανανέωση της βάσης δεδοµένων τους αφού λειτουργούν κατ αντιστοιχία όπως τα antivirus. Αναγνώριση ανωµαλιών: Οι µηχανισµοί αυτοί βασίζονται στην µοντελοποίηση του συστήµατος το οποίο προστατεύουν, όπως ένα µοντέλο της κανονικής δικτυακής κίνησης. Αυτό συγκρίνεται περιοδικά µε την εκάστοτε κατάσταση τους συστήµατος µε σκοπό την ανίχνευση αποκλίσεων. Το πλεονέκτηµα αυτής της προσέγγισης είναι ότι µπορεί να αναγνωρίσει άγνωστου τύπου επιθέσεις, ενώ το µεγαλύτερο πρόβληµα ότι πρέπει να διαχωρίζει επιτυχώς τις επιθέσεις από την κανονική κίνηση. Τέτοια συστήµατα προτείνουν η Arbor Networks [45] και η Mazu Networks [46]. Ένας σηµαντικός διαχωρισµός στα συστήµατα αναγνώρισης ανωµαλιών είναι ο τρόπος ορισµού της κανονικής (normal) συµπεριφοράς του συστήµατος. Μπορεί να είναι: 37