ΑΣΦΑΛΕΙΑ WEB CLIENT
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (1/8) Επίθεση άρνησης υπηρεσίας (Denial of Service-DoS). Αποστολή πολλών αιτήσεων στο µηχάνηµα-στόχο ώστε τα resources που του αποµένουν (σε αυτόν ή και στο δίκτυο). δεν αρκούν για την εξυπηρέτηση των νόµιµων αιτήσεων. Υπάρχουν πολλών ειδών επιθέσεις DoS, πολλές από τις οποίες εκµεταλλεύονται αδυναµίες του TCP/IP. Για τις περισσότερες από αυτές, είναι γνωστά τα µέτρα προστασίας-π.χ. εγκατάσταση patches. Παρόλα αυτά συχνά εφευρίσκονται νέες µέθοδοι επίθεσης DoS.
ΑΛΛΑ ΠΑΡΑ ΕΙΓΜΑΤΑ ΕΠΙΘΕΣΕΩΝ
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (2/8) Όταν µια επίθεση DoS γίνεται από πολλούς hosts ταυτόχρονα, τότε έχουµε κατανεµηµένη επίθεση (Distributed DoS). Σε τέτοιες επιθέσεις είναι δυνατό να συµµετέχουν και απλοί προσωπικοί hosts, ακόµη καιχωρίςνατογνωρίζουνοι χρήστες τους. Το παραπάνω γίνεται αν ο επιτιθέµενος καταφέρει να τοποθετήσει στα hosts αυτά ένα µικρό πρόγραµµα. Όταν ο επιτιθέµενος αποφασίσει τη D-DoS επίθεση, στέλνει ένα µήνυµασεκάποιοαπόταµολυσµένα hosts, το οποίο ειδοποιεί τα υπόλοιπα και ξεκινά η distributed επίθεση.
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (3/8) Απρόσκλητοι ωτακουστές (packet sniffers). Πρόκειται για προγράµµατα που υποκλέπτουν δεδοµένα που κινούνται στο δίκτυο. Γιαναλειτουργήσειέναςpacket sniffer θα πρέπει Η κάρτα δικτύου να λειτουργεί σε promiscuous mode, δηλ. µε τρόπο που της δίνει τη δυνατότητα να λαµβάνει όλα τα πακέτα που περνάν από το µέσο µετάδοσης (ανεξάρτητα του αποδέκτη). Να χρησιµοποιείται κάποιο κοινό µέσο µετάδοσης (π.χ. Wireless, hub, star lan).
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (4/8) Συχνά οι sniffers χρησιµοποιούνται από τους network administrators για ανάλυση του traffic του δικτύου και εντοπισµό εστιών προβληµάτων. Επίσης συχνά χρησιµοποιούνται περισσότεροι του ενός sniffers τοποθετηµένοι σε στρατηγικά σηµεία του δικτύου (π.χ. Gateways) ώστε να εντοπίζουν προσπάθειες εισβολής (Intrudion Detection System-IDS). Παρόλα αυτά ένας sniffer µπορεί να χρησιµοποιηθεί από ένα κακόβουλο χρήστη για την υποκλοπή σηµαντικών δεδοµένων όπως passwords, αριθµοί πιστωτικών καρτών κ.α.
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (5/8) Τρόποι προστασίας από packet sniffers Αυστηρή επίβλεψη στα προγράµµατα που εγκαθιστούν οι χρήστες. Περιορισµός φυσικής και ηλεκτρονικής πρόσβασης σε Η/Υ του δικτύου από µηεξουσιοδοτηµένο προσωπικό. Κρυπτογράφηση traffic. Σε περίπτωση αυτή απαιτείται αποκρυπτογράφηση του µετά από το sniffing. Χρήση ειδικών προγραµµάτων που ανιχνεύουν ποιες LAN cards του δικτύου λειτουργούν σε promiscuous mode.
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (6/8) Σάρωση θυρών (port scanning) ιαδικασία αποστολής ερωτηµάτων σε hosts µε σκοπόνα ληφθούν πληροφορίες για: Ποιες θύρες (ports) χρησιµοποιούνται Τι υπηρεσίες προσφέρονται και σε ποιες εκδόσεις. Επίπεδο ασφαλείας του host. Τι λειτουργικό χρησιµοποιείται. Αν τρέχει firewall. Οεπιτιθέµενος µε βάση τα παραπάνω µπορεί να σχεδιάσει επιθέσεις βασισµένες στις αδυναµίες των υπηρεσιών στο host-θύµα.
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (7/8) Επειδή το port-scanning αφήνει ίχνη στα log files του λειτουργικού συστήµατος, υπάρχουν τεχνικές (π.χ. Half-open SYN scan) κατά τις οποίες δεν αφήνονται ίχνη. Π.χ. το Half-open SYN scan ο port scanner συνδέεται στα ports αλλά τερµατίζει τις συνδέσεις πριν αυτές ολοκληρωθούν. Στη µέθοδο αυτή πολλά λειτουργικά αντιδρούν µε τηµη καταγραφή του scan στα log files. Παρόλα αυτά, µε βάση την απάντηση του λειτουργικού συστήµατος ο port scanner καταλαβαίνει ποιες θύρες είναι ανοιχτές. Αντίµετρο: Χρήση firewall στους hosts.
ΤΕΧΝΙΚΕΣ ΕΠΙΘΕΣΗΣ (8/8) Παρά τις προσπάθειες αποτροπής επιθέσεων, απόλυτη ασφάλεια δεν υπάρχει καθώς πολλά προγράµµατα έχουν bugs τα οποία ένας ικανός hacker µπορεί πάντα να εκµεταλλευτεί. Οι εταιρείες κατασκευής λογισµικού βγάζουν updates προσπαθώντας να κλείσουν τις τρύπες αυτές, όταν η ύπαρξη τους διαπιστωθεί. Χρήστες λειτουργικού Windows: Συνίσταται τακτική εγκατάσταση updates. Το ίδιο για χρήστες Linux (το πρόγραµµαενηµέρωσης συνήθως περιλαµβάνεται στις διανοµές).
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (1/12) Γενικά, χωρίζουµε τα κακόβουλα προγράµµατα, σε δύο κύριες κατηγορίες: σε αυτά που χρειάζονται ένα πρόγραµµα-ξενιστή για να λειτουργήσουν και σε εκείνα που αποτελούν αυτόνοµα και ανεξάρτητα προγράµµατα. Τα πρώτα δεν µπορούν να τρέξουν στο σύστηµααπόµόνα τους. Αποτελούν µέρος ενός προγράµµατος ή εφαρµογής του συστήµατος. Σ αυτήν την κατηγορία έχουµεταεξήςείδη κακόβουλων προγραµµάτων: Trapdoors (Καταπακτές) Logic Bombs (Λογικές Βόµβες) Trojan Horses ( ούρειοι Ίπποι) Viruses (Ιοί)
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (2/12) Στη δεύτερη κατηγορία κακόβουλων προγραµµάτων συναντούµεαυτοτελήπρογράµµατα Bacteria (Βακτήρια) Worms (Σκουλήκια) Επίσης µπορούµεναχωρίσουµε τα απειλητικά προγράµµατα σε: αυτά που έχουν τη δυνατότητα να αναπαράγονται δηµιουργώντας ένα ή περισσότερα αντίγραφα του εαυτού τους και ενεργοποιώντας τα στο ίδιο ή σε άλλα υπολογιστικά συστήµατα. Σ αυτήν την κατηγορία ανήκουν οι ιοί, τα βακτήρια και τα worms. αυτά που δεν έχουν την παραπάνω ικανότητα. Εδώ συναντούµε τις περιπτώσεις των trapdoors, logic bombs και Trojan horses.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (3/12) Επικίνδυνα και Επιβλαβή Προγράµµατα Χρειάζονται Πρόγραµµα Ξενιστή Ανεξάρτητα Προγράµµατα Trapdoors Logic Bombs Trojan Horses Viruses Bacteria Worms Ταξινόµηση Κακόβουλων Προγραµµάτων Αναπαράγονται
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (4/12) Trapdoors (Καταπακτές) Ως Trapdoor χαρακτηρίζεται ένα κρυφό σηµείο εισόδου σε ένα πρόγραµµα που επιτρέπει σε κάποιον, ο οποίος γνωρίζει ότι υπάρχει το συγκεκριµένο trapdoor, να αποκτήσει πρόσβαση στο σύστηµα χωρίςναπεράσειαπότοστάδιοτηςπιστοποίησηςτου προσώπου του π.χ. µε εισαγωγή κωδικού. Logic Bombs (Λογικές Βόµβες) Οι Logic Bombs αποτελούν το πιο παλιό είδος απειλής, προηγείται των ιών και των worms. Ουσιαστικά µια λογική βόµβα είναι κώδικας που έχει ενσωµατωθεί σε ένα πρόγραµµα και εκτελείται όταν κάποιες λογικές συνθήκες έχουν πραγµατοποιηθεί.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (5/12) Trojan Horses ( ούρειοι Ίπποι) Ένας ούρειος Ίππος είναι µία ρουτίνα εντολών που έχει ενσωµατωθεί σε ένα πρόγραµµα το οποίο όταν εκτελεστεί επιτρέπει σε έναν εισβολέα που βρίσκεται εκτός συστήµατος να αποκτήσει πρόσβαση σε αυτό και να εκτελέσει επιβλαβείς ενέργειες πάνω του. Έχει συνήθως client-server µορφή. Viruses (Ιοί) Ο ιός αποτελεί το τµήµα κώδικαενόςµολυσµένου προγράµµατος που όταν εκτελεστεί µολύνει αντιγράφοντας τον εαυτό του σε άλλα προγράµµατα χρησιµοποιώντας ως ξενιστές.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (6/12) Ένας τυπικός ιός κατά τη διάρκεια της ζωής του περνά από τις παρακάτω φάσεις: Φάση Αδράνειας (Dormant Phase). Φάση ιάδοσης (Propagation Phase). Φάση Πυροδότησης (Triggering Phase). Φάση Εκτέλεσης (Execution Phase). Συνήθως οι ιοί σχεδιάζονται για να µολύνουν συγκεκριµένα υπολογιστικά συστήµατα ή συστήµατα µε συγκεκριµένο λειτουργικό σύστηµα. Έτσι, περιορίζεται κάπως η διάδοσή τους.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (7/12) Η οµήτωνιών Οιόςσεέναµολυσµένο αρχείο µπορεί να προηγείται ή να έπεται του κώδικα του προγράµµατος. Επίσης υπάρχει περίπτωση να έχει ενσωµατωθεί µε κάποιον άλλο τρόπο. Ωστόσο το κλειδί σε όλες τις περιπτώσεις είναι το εξής: η εκτέλεση του κώδικα του ιού να προηγείται πάντα της εκτέλεσης του προγράµµατος.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (8/12) Αρχικά, το µολυσµένο πρόγραµµαξεκινάµε τον κώδικα του ιού και δουλεύει ως εξής: Η πρώτη γραµµή του κώδικα µεταπηδά τη λειτουργία στο κυρίως µέρος του ιού. Η δεύτερη γραµµή του κώδικα είναι µια σηµαία που καθορίζει εάν το αρχείο είναι µολυσµένο ή όχι. Το πρόγραµµα αρχικάψάχνειγιαµη µολυσµένα αρχεία µε βάση την ύπαρξη ή όχι της σηµαίας στην πρώτη γραµµήτουκώδικά τους. Αφού τα βρει τα µολύνει αντιγράφοντας τον εαυτό του. Στη συνέχεια περιµένει κάποιο γεγονός για να ενεργοποιηθεί και να προκαλέσει ζηµιά στο σύστηµα. Όταν το γεγονός αυτό γίνει αληθές τότε πραγµατοποιείται η συνάρτηση του κώδικα που προκαλεί τις κακόβουλες ενέργειες.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ Program Virus:= { goto main; flag; (9/12) infect_executable:= { file:= get_random_executable_file; if (first_line_of_file = flag) goto loop else prepend Virus to file; } do_damage:= { do_whatever_damage_is_to_be_done; } trigger_pulled:= { if (some_contition == true) return true } main: main-program:= { infect_executable; if trigger_pulled then do_damage; goto next; } next: }
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (10/12) Είδη Ιών Παρασιτικοί Ιοί: Κατά την εκτέλεση το µολυσµένου προγράµµατος ο ιός αντιγράφει τον εαυτό του σε άλλα προγράµµατα, τα εκτελεί και διαδίδεται. Memory-resident Ιοί: ο ιός αφού εκτελεστεί παραµένει στη µνήµη του συστήµατος και κάθε πρόγραµµα που εκτελείται µολύνεται. Boot sector Ιοί: οιόςµολύνει τον αρχικό τοµέα του δίσκου εκκίνησης του συστήµατος. Stealth Ιοί: Έχουν ως κύριο µέληµά τους το µηεντοπισµό τους από προγράµµατα antivirus. Πολυµορφικοί Ιοί: Κάθε φορά που µολύνει ένα αρχείο ο ιός αλλάζει την υπογραφή του ώστε να κάνει πιο δύσκολο τον εντοπισµό τουαπόπρογράµµατα antivirus.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (11/12) H φάση της διάδοσης ενός worm αποτελείται από τα εξής βήµατα: Το πρόγραµµα (Worm) ψάχνει να βρει άλλα συστήµατα που είναι συνδεδεµένατοπικάήδιαδικτυακά γιαναταµολύνει, εξετάζοντας πίνακες καταχωρήσεων στο υπάρχον σύστηµα (π.χ. e-mail address book). Πραγµατοποιεί σύνδεση µε τον αποµακρυσµένο υπολογιστή. Αντιγράφει τον εαυτό στον αποµακρυσµένο υπολογιστή. Το νέο αντίγραφο κάνει τη ζηµιά για την οποία έχει σχεδιαστεί και µεταδίδεται όπως προηγουµένως.
ΙΟΙ, ΣΚΟΥΛΗΚΙΑ ΚΑΙ ΟΥΡΕΙΟΙ ΙΠΠΟΙ (12/12)
ΣΥΝΟΠΤΙΚΑ ΜΕΤΡΑ ΑΣΦΑΛΕΙΑΣ ΑΠΌ ΤΟ ΧΡΗΣΤΗ