Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΑΣΦΑΛΕΙΑ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ 2005-2006.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΑΣΦΑΛΕΙΑ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ 2005-2006."— Μεταγράφημα παρουσίασης:

1 ΑΣΦΑΛΕΙΑ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ

2 Τι είναι ασφάλεια •Ασφάλεια ενός πληροφοριακού συστήματος είναι η προστασία των υπολογιστικών πόρων και δεδομένων από μη εξουσιοδοτημένη ή κακή χρήση τους. •Στόχος είναι η προστασία όλων των περιουσιακών στοιχείων: –Υλικό –Λογισμικό –Δεδομένα •Βασικές αρχές: το τρίπτυχο –Εμπιστευτικότητα (Confidentiality) –Ακεραιότητα (Integrity) –Διαθεσιμότητα (Availability)

3 Δεδομένα και Πληροφορία •Δεδομένα: Ένα σύνολο συμβόλων κατανοητών από ένα υπολογιστικό σύστημα. •Πληροφορία: Η έννοια που αποδίδεται στα δεδομένα. •Π.χ. το byte 0x01 μπορεί να συμβολίζει: –Τον αριθμό 1, ή –Το συνθηματικό “Αύριο βομβαρδίστε το Ιράκ”.

4 Εμπιστευτικότητα •Εμπιστευτικότητα: Προφυλάσσει από μη εξουσιοδοτημένη αποκάλυψη ευαίσθητων πληροφοριών. –Επιτυγχάνεται με τη κρυπτογράφηση των δεδομένων, η οποία καθιστά τα δεδομένα μη αναγνώσιμα, καθώς και με έλεγχο πρόσβασης στα δεδομένα. •Ακεραιότητα: Προφυλάσσει από μη εξουσιοδοτημένη τροποποίηση των δεδομένων. –Τροποποίηση περιλαμβάνει: •Εγγραφή/Δημιουργία νέων δεδομένων. •Εισαγωγή νέων δεδομένων στα υπάρχοντα. •Διαγραφή μέρους ή όλων των δεδομένων. –Επιτυγχάνεται με τη χρήση μηχανισμών αυθεντικοποίησης, με ψηφιακές υπογραφές, και με έλεγχο πρόσβασης. •Διαθεσιμότητα: Εξασφαλίζει ότι οι πόροι ενός συστήματος είναι πάντα διαθέσιμοι, σε εύλογο χρονικό διάστημα, σε όλους τους εξουσιοδοτημένους χρήστες και μόνο σε αυτούς.

5 Άλλες αρχές Ταυτοποίηση ( Identification ) •Η διαδικασία κατά την οποία μία οντότητα (π.χ. άνθρωπος, υπολογιστής, διαδικασία, πιστωτική κάρτα) αναγνωρίζει μία άλλη οντότητα. Αυθεντικο- ποίηση ή Πιστοποίηση ταυτότητας ( Authentication ) •Η διαδικασία κατά την οποία μια οντότητα διαβεβαιώνεται για την ταυτότητα μιας άλλης οντότητας. •Χωρίζεται σε αυθεντικοποίηση μηνύματος και αυθεντικοποίηση οντότητας.

6 Άλλες αρχές Εξουσιοδό- τηση ( Authorization ) Η παροχή σε ένα υποκείμενο του δικαιώματος πρόσβασης σε ένα αντικείμενο. Η παροχή αυτή γίνεται τυπικά μετά την απαραίτητη ταυτοποίηση και αυθεντικοποίηση του υποκειμένου. Απονομή ευθυνών ( Accountability ) Υποδεικνύει ότι μία οντότητα πρέπει να είναι αναγνωρίσιμη και υπεύθυνη των πράξεων της. Μη αποποίηση (Non- repudiation) Η διαθεσιμότητα αδιάψευστων αποδείξεων που μπορούν να χρησιμοποιηθούν σε μία διαφωνία. Αποποίηση αποστολής-παραλαβής.

7 Προστασία από ποιούς; •Οι περισσότερες επιθέσεις προέρχονται από μέσα παρά από έξω. •Hackers-Εισβολείς: Επιτίθενται είτε από χόμπι είτε για οικονομικά οφέλη. –Τράπεζες –Κυβερνητικά συστήματα (τρομοκρατία) –Τηλεπικοινωνιακούς φορείς –Επιχειρήσεις •Ατυχήματα – Ακούσιες βλάβες

8 Που εφαρμόζεται; •Που εφαρμόζεται η ασφάλεια; –Ασφάλεια επικοινωνιών: Η προστασία των πληροφοριών κατά την επικοινωνία ενός συστήματος με ένα άλλο και κατά τη διακίνηση τους μέσα από δημόσιο και μη ασφαλές δίκτυο. –Ασφάλεια υπολογιστών: Η προστασία των πληροφοριών μέσα σε ένα υπολογιστικό σύστημα (λειτουργικό σύστημα, βάσεις δεδομένων) –Φυσική ασφάλεια. –Ασφάλεια προσωπικού. •Βασικοί κανόνες ασφάλειας: –Η ασφάλεια ενός πληροφοριακού συστήματος είναι μια αλυσίδα και είναι τόσο ασφαλές όσο ο πιο αδύναμος κρίκος αυτής της αλυσίδας. –Το κόστος προστασίας των πληροφοριών δε θα πρέπει να υπερβαίνει το κόστος απώλειας των.

9 Εννοιολογική θεμελίωση •Αδυναμία συστήματος (Vulnerability) Είναι ένα ελάττωμα στο λογισμικό, υλικό, ή στις διαδικασίες, το οποίο μπορεί να επιτρέψει την μη εξουσιοδοτημένη πρόσβαση ενός εισβολέα στους πόρους του συστήματος. •Απειλή (Threat) Οτιδήποτε μπορεί να προκαλέσει παραβίαση της ασφάλειας ενός συστήματος. Μπορεί να είναι: •Φυσική ή ανθρώπινη •Τυχαία ή σκόπιμη –Οι απειλές οι οποίες και αντικατοπτρίζουν τις αρχές ασφαλείας είναι: •Διαρροή πληροφοριών: Πληροφορίες αποκαλύπτονται σε μη εξουσιοδοτημένες οντότητες. •Παραβίαση ακεραιότητας: Μη εξουσιοδοτημένη δημιουργία, τροποποίηση ή καταστροφή δεδομένων. •Άρνηση παροχής υπηρεσίας: Παρεμποδίζεται η νόμιμη πρόσβαση σε δεδομένα ή πόρους.

10 Εννοιολογική θεμελίωση •Επικινδυνότητα (risk) Η πιθανότητα ενός φορέα απειλής να εκμεταλλευτεί μια αδυναμία. •Επίθεση (attack) Η εκμετάλλευση μιας αδυναμίας από έναν εισβολέα για την πραγματοποίηση μιας απειλής. •Αντίμετρα (Countermeasures) Είναι ένας μηχανισμός ή μια διαδικασία που περιορίζει ή εξαλείφει τις πιθανότητες ενός φορέα απειλής να εκμεταλλευτεί μια αδυναμία.

11 Βασικές υπηρεσίες ασφάλειας •Αυθεντικοποίηση: Η διαβεβαίωση για την ταυτότητα μιας οντότητας. •Έλεγχος πρόσβασης: Η προστασία από μη εξουσιοδοτημένη χρήση των πόρων ενός υπολογιστικού συστήματος. •Εμπιστευτικότητα: Η προστασία από αποκάλυψη πληροφοριών σε μη εξουσιοδοτημένες οντότητες. •Ακεραιότητα: Η προστασία από μη εξουσιοδοτημένη εισαγωγή, τροποποίηση ή διαγραφή πληροφοριών. •Μη αποποίηση: Η προστασία από την δόλια άρνηση μιας οντότητας ότι έλαβε μέρος σε μια ανταλλαγή πληροφοριών.

12 Τύποι επιθέσεων •Παθητική παρακολούθηση: Περιορίζονται στην απλή παρακολούθηση των διακινουμένων δεδομένων για υποκλοπή πληροφοριών. Είναι πολύ δύσκολα ανιχνεύσιμη. •Ενεργή παρακολούθηση: Έχει τα χαρακτηριστικά της παθητικής παρακολούθησης και επιπλέον αποσκοπεί στην τροποποίηση των πληροφοριών. •Προσποίηση: Ένας εισβολέας προσποιείται ότι είναι μια άλλη οντότητα με σκοπό να αποκτήσει τα δικαιώματα πρόσβασης της εξουσιοδοτημένης οντότητας. •Αποποίηση: Κάποια οντότητα αρνείται τη συμμετοχή σε μια επικοινωνία ή σε μία συναλλαγή.

13 Τύποι επιθέσεων •Κακόβουλο λογισμικό (Ιοί, Δούρειοι Ίπποι): Πρόκειται για μορφές λογισμικού που στόχο έχουν είτε να καταστρέψουν ή να τροποποιήσουν δεδομένα είτε να υποκλέψουν δεδομένα (για δικτυακούς υπολογιστές). •Ανάλυση επικοινωνίας: Αποσκοπούν στην παρακολούθηση της ροής δεδομένων και έχουν στόχο την εξαγωγή συμπερασμάτων για την συγκεκριμένη επικοινωνία (ποιοι εμπλέκονται, τι είδους δεδομένα ανταλλάσσουν). •Άρνηση Παροχής Υπηρεσίας: Έχει ως στόχο την παρεμπόδιση της ομαλής λειτουργίας ενός συστήματος. Αποσκοπεί στο να αποτρέψει την παροχή υπηρεσίας στους νόμιμους χρήστες.

14 Εφαρμογές ασφάλειας ΠεριβάλλονΑπαιτήσεις Τραπεζικές εφαρμογές •Προστασία από δόλιες ή τυχαίες αλλαγές σε μια συναλλαγή •Προστασία προσωπικών δεδομένων •Πιστοποίηση ταυτότητας συναλλασσόμενων Ηλεκτρονικό εμπόριο •Πιστοποίηση της ταυτότητας των συναλλασσόμενων •Προστασία της ακεραιότητας και εμπιστευτικότητας της συναλλαγής

15 Εφαρμογές ασφάλειας ΠεριβάλλονΑπαιτήσεις Κυβέρνηση•Προστασία των προσωπικών δεδομένων των πολιτών •Προστασία της ακεραιότητας των προσωπικών στοιχείων των πολιτών Επιχειρήσεις•Προστασία των περιουσιακών στοιχείων και του ιδιωτικού της επιχείρησης Προσωπικά δίκτυα •Προστασία από μη εξουσιοδοτημένους (ανεπιθύμητους) εισβολείς

16 Κρυπτογραφία Εισαγωγή στην κρυπτογραφία Συμμετρική κρυπτογράφηση Αλγόριθμοι Αντικατάστασης Αλγόριθμοι Αντιμετάθεσης

17 Εισαγωγή •Κρυπτογραφία είναι η μελέτη των μαθηματικών τεχνικών που σχετίζονται με την ασφάλεια πληροφοριών όπως είναι η εμπιστευτικότητα, ακεραιότητα, πιστοποίηση ταυτότητας δεδομένων και αποστολέα. •Προέρχεται από τις λέξεις –Κρυπτό: κρυφό, μυστικό –Γράφος: γραφή –Κρυπτογαφία: η μελέτη της κρυφής γραφής

18 Ιστορική αναδρομή •Πρώτες αναφορές χρονολογούνται πριν τουλάχιστον 4000 χρόνια. •Οι αρχαίοι Αιγύπτιοι διακοσμούσαν με ιερογλυφικά στους τάφους τους για να περιγράψουν τη ζωή του αποθανόντος. •Ο Ηρόδοτος κάνει αναφορές για κρυπτογραφημένα μηνύματα που μετέφεραν οι αγγελιοφόροι. •Το 400π.Χ. οι Σπαρτιάτες χρησιμοποιούσαν ένα σύστημα κρυπτογράφησης μηνυμάτων για να μεταφέρουν με ασφάλεια μηνύματα στους στρατιώτες τους. •Πριν 2000 χρόνια ο Ιούλιος Καίσαρας χρησιμοποίησε έναν αλγόριθμο κρυπτογράφησης (αντικατάστασης) γνωστό ως Caesar cipher. •Η πιο εκτεταμένη αναφορά σε αλγόριθμους κρυπτογράφησης στη σύγχρονη ιστορία έγινε στο Δεύτερο Παγκόσμιο Πόλεμο με τη χρήση της μηχανής Enigma.

19 Βασικές έννοιες •Αλγόριθμος: Σύνολο μαθηματικών κανόνων που χρησιμοποιούνται στην κρυπτογράφηση και αποκρυπτογράφηση. •Κρυπτοσύστημα: Η υλοποίηση ενός αλγορίθμου κρυπτογράφησης. •Κρυπτανάλυση: Η μελέτη των μαθηματικών τεχνικών που αποσκοπούν στην αποκρυπτογράφηση δεδομένων χωρίς τη χρήση κλειδιών. •Κρυπτογράφηση: Η μετατροπή δεδομένων σε μη αναγνώσιμη μορφή. •Αποκρυπτογράφηση: Η μετατροπή δεδομένων σε αναγνώσιμη μορφή. •Plaintext: Το αρχικό μήνυμα. •Ciphertext: Το κρυπτογραφημένο μήνυμα.

20 Βασική αναπαράσταση Κρυπτο- γράφηση Μήνυμα (απλό κείμενο) Κλειδί κρυπτογράφησης Κρυπτογραφημένο κείμενο (κρυπτόγραμμα) Κλειδί αποκρυπτογράφησης Αποκρυπτο- γράφηση Μήνυμα (απλό κείμενο) This is plain- text &cW*4l %$?e}

21 Συμμετρική κρυπτογράφηση •Είναι επίσης γνωστή ως κρυπτογράφηση: –συμμετρικού κλειδιού –μυστικού κλειδιού –ενός κλειδιού •Ένας αλγόριθμος κρυπτογράφησης λέγεται συμμετρικός εάν γνωρίζοντας το κλειδί κρυπτογράφησης k είναι υπολογιστικά “εύκολο” να προσδιορίσουμε το κλειδί αποκρυπτογράφησης k′, και αντίστροφα. •Πρακτικά, για τους περισσότερους συμμετρικούς αλγόριθμους k = k′. •Αποστολέας και παραλήπτης μοιράζονται ένα κοινό κλειδί.

22 Απαιτήσεις •Η ασφαλής επικοινωνία μεταξύ δύο χρηστών με τη χρήση ενός συμμετρικού αλγορίθμου κρυπτογράφησης απαιτεί τα ακόλουθα: –Δυνατότητα χρήσης του ίδιου αλγορίθμου. –Χρήση ενός μυστικού κλειδιού το οποίο γνωρίζουν μόνο ο αποστολέας και ο παραλήπτης. –Ύπαρξη ενός ασφαλούς καναλιού για τη διανομή του κλειδιού.

23 Κρυπτο- γράφηση Υ = Ε k (Χ) Κλειδί κρυπτογράφησης k Κρυπτογραφημένο κείμενο Y Κλειδί αποκρυπτογράφησης k Αποκρυπτο- γράφηση X = Ε k (Y) Έξοδος απλού κειμένου X This is plain- text &cW*4l %$?e} Είσοδος απλού κειμένου X Πρέπει να υπάρχει κάποιος μηχανισμός για τη ασφαλή διανομή του κλειδιού

24 Συμμετρικά κρυπτοσυστήματα •Πλεονεκτήματα –Ταχύτητα κρυπτογράφησης/αποκρυπτογράφησης –Μέγεθος κλειδιών –Μπορούν να χρησιμοποιηθούν ως βάση για τη κατασκευή άλλων μηχανισμών όπως παραγωγής τυχαίων αριθμών, συναρτήσεων κατακερματισμού, και ψηφιακών υπογραφών. •Μειονεκτήματα –Μυστικότητα του κλειδιού. –Διαχείριση των κλειδιών: •Κατανομή/Διανομή •Αλλαγή/Ανανέωση •Περίοδος ζωής

25 Επιθέσεις σε συστήματα κρυπτογράφησης •Επίθεση κρυπτογράμματος μόνο: Ο επιτιθέμενος (κρυπταναλυτής) προσπαθεί να ανακαλύψει το κλειδί ή το αρχικό κείμενο παρατηρώντας μόνο το κρυπτογράφημα. Κάθε κρυπτοσύστημα που είναι ευπαθές σε αυτό το είδος της επίθεσης λέγεται πως είναι τελείως ανασφαλές. •Επίθεση γνωστού κειμένου: Ο επιτιθέμενος (κρυπταναλυτής) έχει στην κατοχή του ένα μέρος κειμένου και του αντίστοιχου κρυπτογραφήματος.

26 Επιθέσεις σε συστήματα κρυπτογράφησης •Επίθεση επιλεγμένου κειμένου: Ο επιτιθέμενος επιλέγει ένα κείμενο και αποκτά το αντίστοιχο κρυπτογράφημα. Κατόπιν, χρησιμοποιεί αυτά τα δύο για να ανακτήσει το κείμενο από άλλο κρυπτογράφημα. •Επίθεση επιλεγμένου κρυπτογραφήματος: Ο επιτιθέμενος επιλέγει το κρυπτογράφημα και αποκτά με κάποιο τρόπο πρόσβαση στο αντίστοιχο κείμενο.

27 Κατηγορίες συμμετρικών κρυπτοσυστημάτων •Block ciphers –Το αρχικό μήνυμα διασπάται σε κομμάτια (blocks) συγκεκριμένου μήκους t το κάθε ένα και η κρυπτογράφηση γίνεται σε αυτά τα blocks του κειμένου. •Stream ciphers –Μπορούν να θεωρηθούν ως πολύ απλοί block ciphers όπου το μήκος του block είναι ίσο με 1 bit. Η κρυπτογράφηση γίνεται κρυπτογραφώντα τα bits ένα προς ένα.

28 Stream ciphers •Με τη χρήση ενός stream cipher ένα bit ή byte του αρχικού μηνύματος θα μεταμορφωθεί σε διαφορετικό bit ή byte κάθε φορά που κρυπτογραφείται. •Σε περιπτώσεις όπου υπάρχει μεγάλη πιθανότητα να έχουμε σφάλματα στη μετάδοση οι stream ciphers είναι χρήσιμοι γιατί δεν υπάρχει μετάδοση λάθους.

29 Stream ciphers •Ένας ισχυρός και αποτελεσματικός stream cipher έχει τα ακόλουθα χαρακτηριστικά: –Μεγάλες περιόδους από μη επαναλαμβανόμενα υποδείγματα μέσα στη γεννήτρια κλειδιών. –Στατιστικά απρόβλεπτος. –Το κλειδί περιέχει τόσα 1 όσα και 0. •Επειδή κρυπτογραφούν και αποκρυπτογραφούν ένα bit κάθε φορά, είναι πιο αποτελεσματικοί όταν υλοποιούνται σε υλικό παρά με λογισμικό.

30 Stream ciphers •Ο αλγόριθμος Vernam ορίζεται ως εξής: –Ένα δυαδικό μήνυμα μήκους t m 1 m 2 …m t κρυπτογραφείται χρησιμοποιώντας το κλειδί k 1 k 2 …k t ίδιου μήκους για να μας δώσει το κρυπτόγραμμα c 1 c 2 …c t όπου: c i = m i  k i, 1  i  t •Π.χ. Μήνυμα: Κλειδί: Κρυπτόγραμμα:

31 Stream ciphers •Εάν τα ψηφία του κλειδιού είναι τυχαία και ανεξάρτητα το ένα από το άλλο τότε ο Vernam cipher λέγεται one-time-pad. •O one-time-pad προσφέρει τέλεια ασφάλεια απέναντι σε μια επίθεση επιλεγμένου κρυπτογράμματος. Απαραίτητη προυπόθεση για τέλεια ασφάλεια είναι το μήκος του κλειδιού να είναι τουλάχιστον ίσο με το μήκος του μηνύματος. •Ένας αλγόριθμος κρυπτογράφησης προσφέρει τέλεια ασφάλεια εάν το κρυπτογράφημα και το κείμενο είναι στατιστικά ανεξάρτητα.

32 Symmetric-key block ciphers •Ένας block cipher είναι μία συνάρτηση που μετατρέπει μπλοκς κειμένου μεγέθους n-bit σε μπλοκς κρυπτογραφήματος μεγέθους n-bit. Η συνάρτηση αυτή έχει ως παράμετρο ένα k-bit κλειδί. Κρυπτογράφηση: C = E K (P) Αποκρυπτογράφηση: P = D K (C) •Τέσσερις τρόπους λειτουργίας: ECB, CBC, CFB, OFB.

33 Λειτουργία ηλεκτρονικού βιβλίου κωδικών (Electronic CodeBook Mode; ECB mode) •Αλγόριθμος: Είσοδος: k-bit κλειδί K; n-bit μπλοκς κειμένου x 1,x 2,…,x t. Έξοδος: Μπλοκς κρυπτογραφήματος c 1,c 2,…,c t Κρυπτογράφηση: για 1  j  t, c j  E K ( x j ). Αποκρυπτογράφηση: για 1  j  t, x j  D K ( c j ). Κλειδί k

34 Λειτουργία ηλεκτρονικού βιβλίου κωδικών (Electronic CodeBook Mode; ECB). •Ιδιότητες του τρόπου λειτουργίας ECB: –Ίδια μπλοκς κειμένου δίνουν ίδια κρυπτογραφήματα (χρησιμοποιώντας το ίδιο κλειδί). –Κάθε μπλοκ κρυπτογραφείται ανεξάρτητα από τα άλλα μπλοκς. –Μετάδοση λάθους: ένα ή περισσότερα λάθη σε bits ενός μπλοκ επηρεάζουν μόνο το συγκεκριμένο μπλοκ. •Που χρησιμοποιείται: –Συνιστάται η χρήση του μόνο για κρυπτογράφηση μηνυμάτων του ενός μπλοκ.

35 Λειτουργία κώδικα αλυσίδων μπλοκ (Cipher Block Chaining mode; CBC) •Αλγόριθμος: Είσοδος: k-bit κλειδί K; n-bit διάνυσμα αρχικοποίησης IV; n- bit μπλοκς κειμένου x 1,x 2,…,x t. Έξοδος: Μπλοκς κρυπτογραφήματος c 1,c 2,…,c t Κρυπτογράφηση: για 1  j  t, c j  E K (c j-1  x j ). Αποκρυπτογράφηση: για 1  j  t, x j  c j-1  D K ( c j ).

36 Λειτουργία κώδικα αλυσίδων μπλοκ (Cipher Block Chaining mode; CBC) •Ιδιότητες του τρόπου λειτουργίας CBC: –Ίδια μπλοκς κρυπτογραφήματος δίνουν ίδια μπλοκς κειμένου μόνο όταν έχουν κρυπτογραφηθεί χρησιμοποιώντας το ίδιο κλειδί και το ίδιο διάνυσμα αρχικοποίησης. Αλλάζοντας το κλειδί, το IV, ή πρώτο μπλοκ κειμένου δίνει διαφορετικό κρυπτογράφημα. –Ο μηχανισμός αλυσίδας έχει ως αποτέλεσμα το κρυπτογράφημα c j να εξαρτάται από το x j και όλα τα προηγούμενα μπλοκς. Εάν αλλαχτεί η σειρά των μπλοκς κρυπτογραφήματος θα επηρεαστεί και η αποκρυπτογράφηση.

37 Λειτουργία κώδικα αλυσίδων μπλοκ (Cipher Block Chaining mode; CBC) •Ιδιότητες του τρόπου λειτουργίας CBC: –Διάδοση λάθους: ένα λάθος bit στο μπλοκ c j θα επηρεάσει την αποκρυπτογράφηση των μπλοκς c j και c j+1 (αφού το x j εξαρτάται από τα c j και c j-1 ) –Ανάκτηση λάθους: ο τρόπος λειτουργίας CBC είναι self- synchronizing υπό την έννοια ότι εάν έχουμε ένα λάθος στο μπλοκ c j αλλά όχι στο c j+1, τότε θα έχουμε σωστή αποκρυπτογράφηση του c j+2 σε x j+2. •Παρόλο που η μυστικότητα του IV δεν είναι απαραίτητη, η ακεραιότητα του είναι σημαντική γιατί αλλάζοντας το κάποιος μπορεί να προκαλέσει συγκεκριμένες αλλαγές στο πρώτο μπλοκ κειμένου κατά την αποκρυπτογράφηση.

38 Πολλαπλή κρυπτογράφηση •Διπλή κρυπτογράφηση E(x) = E K2 (E K1 (x)) –Χρησιμοποιεί δύο ανεξάρτητα κλειδιά K1 και Κ2 για να κρυπτογραφήσει δύο φορές το μήνυμα •Τριπλή κρυπτογράφηση E(x) = Y K3 (Y K2 (Y K1 (x))). Το Y υποδηλώνει ότι μπορούμε να έχουμε είτε κρυπτογράφηση είτε αποκρυπτογράφηση. Η πιό συνηθισμένη χρήση είναι E(x) = Ε K3 (D K2 (E K1 (x))). –Τα κλειδιά δεν είναι απραίτητο να είναι ανεξάρτητα και στην τριπλή κρυπτογράφηση διπλού κλειδιού έχουμε K1=Κ3. –Μπορούμε να έχουμε K1=Κ2=Κ3;

39 Symmetric-key Block Ciphers •Δύο σημαντικές κατηγορίες: –Αλγόριθμοι αντικατάστασης (substitution) •Κάθε γράμμα (ή ομάδα γραμμάτων) αντικαθίσταται από ένα άλλο γράμμα (ή ομάδα γραμμάτων). •Χαρακτηριστικό παράδειγμα ο Caesar cipher όπου έχουμε ολίσθηση των γραμμάτων του αλφαβήτου κατά 3 γράμματα: plaintext: abcdefghijklmnopqrstuvwxyz ciphertext: defghijklmnopqrstuvwxyzabc •Μία γενίκευση του Caesar cipher θέλει την ολίσθηση των γραμμάτων του αλφαβήτου Α κατά k γράμματα. Το αποτελεί σε αυτήν την περίπτωση το κλειδί του αλγορίθμου αντικατάστασης.

40 Symmetric-key Block Ciphers •Δύο σημαντικές κατηγορίες: –Αλγόριθμοι αντικατάστασης (substitution) •Ένας τύπος αλγορίθμου αντικατάστασης είναι η μονοαλφαβητική αντικατάσταση, όπου κάθε γράμμα αντικαθίσταται με κάποιο άλλο, “τυχαίο”, γράμμα. Π.χ. plaintext: abcdefghijklmnopqrstuvwxyz ciphertext: rIvnsojltzkgaqsmwvbyex •Παρόλο που ο αριθμός των πιθανών κλειδιών είναι πολύ μεγάλος (26!=4x10 26 ) για να δοκιμάσει κάποιος όλα τα πιθανά κλειδιά μπορεί κάποιος να χρησιμοποιήσει στατιστικές μεθόδους για να βρεί ποιό γράμμα αντιστοιχεί σε ποιό. Για αυτό το σκοπό χρησιμοποεί τις πιθανότητες εμφανισης των γραμμάτων σε ένα κείμενο. Κατόπιν εξετάζει τις πιθανότητες εμφάνισης διγραμμάτων και τριγραμμάτων.

41 Symmetric-key Block Ciphers •Δύο σημαντικές κατηγορίες: –Αλγόριθμοι αντικατάστασης (substitution) •Στην πολυαλφαβητική αντικατάσταση (παράδειγμα της οποίας αποτελεί ο απλός Vigenere) έχουμε ένα κλειδί χαρακτήρων μεγέθους t k 1 k 2… k t. Η μετατροπή του κειμένου m=m 1 m 2 m 3 … σε κρυπτογραφημένο μήνυμα c=c 1 c 2 c 3 … γίνεται ως c 1 = m 1 + k t mod s όπου s είναι το μέγεθος του αλφαβητου μας. Ο αλγόριθμος λέμε ότι έχει περίοδο t.

42 Symmetric-key Block Ciphers •Δύο σημαντικές κατηγορίες: –Αλγόριθμοι αντιμετάθεσης (transposition) •Έχουμε απλή αναδιάταξη των γραμμάτων ενός κειμένου. Για έναν απλό αλγόριθμο αντιμετάθεσης με περίοδο t, η κρυπτογράφηση περιλαμβάνει την ομαδοποίηση του κειμένου σε μπλοκς των t χαρακτήρων το καθένα, και εφαρμογή σε κάθε ένα από αυτά τα μπλοκς μιας απλής αντικατάστασης e πάνω στους αριθμούς 1 ως t. •Ένας αλγόριθμος αντιμετάθεσης διατηρεί τον αριθμό των συμβόλων μέσα σε ένα μπλοκ και επομένως μπορεί εύκολα να κρυπταναλυθεί. •Π.χ. Υποθέστε ένα απλό αλγόριθμο αντιμετάθεσης με περίοδο t = 6 και e = (641352). Το μήνυμα “ΚΡΥΠΤΟΓΡΑΦΙΑ” θα δώσει το κρυπτογράφημα “ΟΠΚΥΤΡΑΦΓΑΙΑ”. Το κλειδί αποκρυπτογράφησης είναι d = (364251).

43 Symmetric-key Block Ciphers •Κώδικας γινομένου (Product cipher): Συνδυάζει δύο ή περισσότερες μετατροπές με τέτοιο τρόπο ώστε το αποτέλεσμα να είναι πιο ασφαλές από ότι είναι κάθε μια από τις μετατροπές που απαρτίζουν τον κώδικα γινομένου. Π.χ. Ένας κώδικας γινομένου μπορεί να αποτελείται από συνδυασμό κωδικών αντικατάστασης και αντιμετάθεσης. •Επαναληπτικός block cipher (iterated block cipher): ένας block cipher όπου έχουμε την ακολουθιακή επανάληψη μιας εσωτερικής συνάρτησης η οποία λέγεται κυκλική συνάρτηση (round function).

44 Symmetric-key Block Ciphers •Κώδικας Feistel: Είναι ένας επαναλαμβανόμενος κώδικας που “αντικαθιστά” 2t-bit κειμένου (L 0, R 0 ), για t-bit μπλοκς L 0 και R 0, σε ένα κρυπτογράφημα (R r, L r ) μέσω μιας διαδικασίας r-κύκλων όπου r  1. Για 1  i  r L i = R i-1, R i = L i-1  f(R i-1, K i ) όπου κάθε κλειδί K i προκύπτει από το κλειδί κρυπτογράφησης Κ. Η συνάρτηση f μπορεί να είναι ένας κώδικας γινομένου. •Τυπικά r  3 και είναι ζυγός αριθμός.

45 DES •O Data Encryption Standard (DES) είναι ο πιό γνωστός block cipher συμμετρικού κλειδιού. Ορίζεται στο FIPS •Επεξεργάζεται μπλοκς κειμένου μεγέθους n = 64bits και παράγει μπλοκς κρυπτογραφημάτων μεγέθους επίσης 64bits. Το μέγεθος των κλειδιών που χρησιμοποιεί είναι 64bits αλλά 8 από αυτά (8,16,...,64) χρησιμοποιούνται ως bits ισοτιμίας (parity). •Ο σχεδιασμός του βασίστηκε στους κώδικες γινομένου, και στον κώδικα Feistel.

46 DES •Κρυπτογράφηση: –Γίνεται σε 16 επαναλήψεις. –Από το κλειδί εισόδου K δημιουργούνται bit κλειδιά, ένα για την κάθε επανάληψη, βάσει κάποιων αντιμεταθέσεων. –Η κρυπτογράφηση αρχίζει με μια αντιμετάθεση του κειμένου των 64-bit. –Το αποτέλεσμα διασπάται σε 2 32-bit μπλοκς L 0 και R 0. –Οι 16 επαναλήψεις είναι λειτουργικά ταυτόσημες όπου σε κάθε επαναληψη οι 32-bit είσοδοι L i-1 και R i-1 της προηγούμενης επανάληψης παράγει 32-bit εξόδους L i και R i ως εξής: •L i = R i-1 ; •R i = L i-1  f(R i-1, K i ) –Η συνάρτηση f είναι μια σειρά από αντικαταστάσεις (βάσει κάποιων κουτιών αντικατάστασης ή S-boxes) και μια αντιμετάθεση. –Τα 8 S-boxes αποτελούν την καρδιά της ασφάλειας του DES. –Ο αλγόριθμος τελειώνει με μια αντιμετάθεση που είναι ακριβώς αντίθετη από την αρχική. –Η αποκρυπτογράφηση του DES γίνεται με τον ίδιο ακριβώς τρόπο όπως και η κρυπτογράφηση μόνο που τα 16 κλειδιά χρησιμοποιούνται αντίστροφα (από το Κ 16 στο Κ 1 ).

47 DES •Αδύναμα κλειδιά του DES: είναι αυτά όπου για κάθε μήνυμα x Ε Κ (Ε Κ (x)) = x •Ημι-αδύναμα κλειδιά του DES: είναι ένα ζευγάρι κλειδιών Κ 1, Κ 2, για τα οποία Ε Κ1 (Ε Κ2 (x)) = x. •Ο DES έχει 4 αδύναμα κλειδιά και έξι ζεύγη από ημι- αδύναμα. •Λόγω της βελτιστοποίησης μεθόδων κρυπτανάλυσης και της υπολογιστικής ισχύος η οποία καθιστά επιθέσεις εφικτές συνιστάται η χρήση του 3-DES (E- D-E) με διπλό ή με τριπλό κλειδί.

48 AES •Πρόκειται για τον αντικαταστάτη του DES. Ορίζεται από τον αλγόριθμο Rijndael. Ήταν ο νικητής ενός διαγωνισμού του NIST (National Institute of Standards and Technology). •Κρυπτογραφεί μπλοκς των 128bits χρησιμοποιώντας κλειδιά των 128, 192, και 256 bits. •Προσφέρει μεγαλύτερη ασφάλεια από τον DES. Ενδεικτικά: –Μια μηχανή σπασίματος του DES που δοκιμάζει ~10 12 keys / sec μπορεί να βρει ένα κλειδί DES μέσα σε μερικές ώρες. –Μια μηχανή σπασίματος του ΑES που δοκιμάζει ~10 16 keys / sec μπορεί να βρει ένα κλειδί ΑES σε ~150,000,000,000 χρόνια. •Είναι ανθεκτικός σε όλες τις γνωστές μεθόδους κρυπτανάλυσης. •Είναι σχεδιαστικά πιο απλός από τον DES. •Είναι σχεδιασμένος για καλή απόδοση όταν υλοποιείται τόσο σε λογισμικό όσο και σε υλικό.

49 AES •Χρησιμοποιεί πίνακες από bytes (γνωστοί ως States) μεγέθους 4x4, για να κάνει τις πράξεις σε κάποιες επαναλήψεις ο αριθμός των οποίων εξαρτάται από το μέγεθος του κλειδιού (10 για τον AES-128, 12 για τον AES- 192, και 14 για τον AES-256). •Το κλειδί της κάθε επανάληψης προκύπτει από το αρχικό κλειδί. •Σε κάθε επανάληψη έχουμε τις ακόλουθες μετατροπές: –Αντικατάσταση bytes χρησιμοποιώντας ένα S-box –Ολίσθηση γραμμών –Ανάμειξη των δεδομένων σε κάθε στήλη του πίνακα –XOR του πίνακα με το κλειδί.

50 Κρυπτογράφηση δημοσίου κλειδιού •Κάθε οντότητα έχει ένα δημόσιο κλειδί e και ένα ιδιωτικό κλειδί d. Σε ασφαλή κρυπτοσυστήματα, ο υπολογισμός του d δεδομένου του e είναι υπολογιστικά αδύνατος. Το δημόσιο κλειδί e ορίζει έναν μετασχηματισμό κρυπτογράφηση Ε e, ενώ το ιδιωτικό κλειδί ορίζει έναν μετασχηματισμό αποκρυπτογράφησης D d. •Όταν ο Β θέλει να στείλει ένα μήνυμα m στον Α πρέπει να πάρει ένα αυθεντικοποιημένο αντίγραφο του δημοσίου κλειδιού e του Α και χρησιμοποιώντας τον μετασχηματισμό κρυπτογράφησης Ε e παίρνει το κρυπτογράφημα c = Ε e (m). Για να αποκρυπτογραφήσει το μήνυμα ο Α πρέπει να χρησιμοποιήσει το ιδιωτικό κλειδί d και το μετασχηματισμό αποκρυπτογράφησης D d για να πάρει το μήνυμα m = D d (c).

51 Κρυπτογράφηση δημοσίου κλειδιού •Πλεονεκτήματα –Μόνο το μυστικό κλειδί πρέπει να κρατηθεί κρυφό –Εύκολη διαχείριση κλειδιών με τη βοήθεια μιας τρίτης εμπιστευτικής οντότητας –Ανάλογα με τη χρήση του αλγορίθμου ένα ζεύγος μυστικού/δημοσίου κλειδιού μπορεί να χρησιμοποιηθεί για μεγάλες χρονικές περιόδους σε σχέση με τα κλειδιά ενός συμμετρικού κρυπτοσυστήματος. –Είναι πιο αποτελεσματικοί σε ψηφιακές υπογραφές λόγψ της διαχείρισης των κλειδιών και λόγω του μεγέθους του κλειδιού επιβεβαίωσης της υπογραφής.

52 Κρυπτογράφηση δημοσίου κλειδιού •Μειονεκτήματα –Είναι χαρακτηριστικά πιο αργά σε σχέση με τα συμμετρικά κρυπτοσυστήματα. –Το μέγεθος των κλειδιών. –Δεν υπάρχουν αποδείξεις ότι οι αλγόριθμοι είναι ασφαλείς (αν και το ίδιο μπορεί να ειπωθεί και τους συμμετρικούς αλγορίθμους). •Αναγκαιότητα της αυθεντικοποίησης σε συστήματα δημοσίου κλειδιού. Ανάλυση γιατί χρειαζόμαστε πιστοποίηση όσον αφορά σε ποιόν ανήκει το κλειδί.

53 RSA •Βασίζεται στο πρόβλημα της παραγοντοποίησης μεγάλων ακεραίων (Δεδομένου ενός ακεραίου n βρείτε τους πρώτους αριθμούς το γινόμενο των οποίων μας δίνει n). •Κάθε οντότητα A έχει ένα δημόσιο κλειδί (n, e), όπου n είναι το modulus και e ο εκθέτης κρυπτογράφησης, και ένα μυστικό κειδί d. •Όταν ο Β θέλει να κρυπτογραφήσει ένα μήνυμα για τον Α κάνει τα εξής: –Παίρνει ένα αυθεντικοποιημένο αντίγραφο του δημοσίου κλειδιού του Α. –Αναπαριστά το μήνυμα ως έναν ακέραιο m (μέσα στο διάστημα [0, n- 1]) –Υπολογίζει c = m e mod n. Το c είναι το κρυπτογράφημα.

54 RSA •Το modulus n δίνει το μέγεθος του κλειδιού που χρησιμοποιούμε. Τυπικά μεγέθη είναι τα 512, 768, 1024, 2048, •Η ασφάλεια του RSA αλγορίθμου βασίζεται στη δυσκολία του να βρούμε τους πρώτους αριθμούς p και q που απαρτίζουν τον n = pq. •Δημιουργία κλειδιών: –Δημιουργούμε δύο μεγάλους τυχαίους πρώτους αριθμούς p και q, του ίδιου περίπου μεγέθους. –Υπολογίζουμε n = pq και φ = (p -1)(q -1). –Επιλέγουμε έναν τυχαίο ακέραιο e, 1

55 Ψηφιακές υπογραφές •Είναι ένας μηχανισμός που μας επιτρέπει να εξάγουμε συμπεράσματα όσον αφορά την σχέση κάποιων δεδομένων με κάποια οντότητα. •Είναι βασικός μηχανισμός παροχής αυθεντικοποίησης, εξουσιοδότησης, και μη-αποποίησης. •Η διαδικασία της υπογραφής περιλαμβάνει την μετατροπή του μηνύματος και κάποιας μυστικής πληροφορίας που η οντότητα που κάνει την υπογραφή σε μια ετικέττα ή ταμπέλα που ονομάζεται υπογραφή. •Μια οντότητα Α δημιουργεί μια ψηφιακή υπογραφή για ένα μήνυμα m χρησιμοποιώντας κάποιο μηχανισμό ψηφιακής υπογραφής S κάνοντας τα ακόλουθα: –Υπολογισμό s = S Α (m). –Μετάδοση του ζεύγους (m, s). Το s αποκαλείται υπογραφή του Α για το μήνυμα m.

56 Ψηφιακές υπογραφές •Η επαλήθευση μιας υπογραφής s της οντότητας Α για το μήνυμα m, από μια οντότητα Β γίνεται κάνοντας τα ακόλουθα: –Η οντότητα Β πρέπει να έχει στην κατοχή της την συνάρτηση επαλήθευσης V A του Α. –Υπολογισμό του u = V A (m, s). –Αποδοχή ότι η υπογραφή αυτή δημιουργήθηκε από τον Α, αν u = true και απόρριψη εάν u = false. •Οι μετασχηματισμοί γίνονται με τη χρήση κάποιων κλειδιών όπου η δημιουργία της υπογραφής γίνεται με τη χρήση ενός κλειδιού K Α το οποίο πρέπει να κρατηθεί μυστικό από τον Α. Παρομοίως, η επαλήθευση της υπογραφής γίνεται χρησιμοποιώντας κάποιο άλλο κλειδί L Α το οποίο είναι δημόσιο και διαθέσιμο σε όλους.

57 Ψηφιακές υπογραφές •Βασική ιδιότητα: –Είναι υπολογιστικά αδύνατο για κάποια άλλη οντότητα, διαφορετική της Α να μπορέσει να βρει, για κάποιο μήνυμα m μια υπογραφή s τέτοια ώστε V A (m, s) = true. •Άλλες ιδιότητες: –Θα πρέπει να είναι εύκολος ο υπολογισμός της υπογραφής από αυτόν που υπογράφει, –Θα πρέπει να είναι εύκολη η διαδικασία της επαλήθευσης της υπογραφής. –Θα πρέπει να έχει μια διάρκεια ζωής: Θα πρέπει να είανι υπολογιστικά ασφαλής μέχρι η υπογραφή να μην είναι πλέον απαραίτητη για τον αρχικό της σκοπό.

58 Ψηφιακές υπογραφές •Επίλυση των διαφορών με τη χρήση έμπιστων τρίτων οντοτήτων. Π.χ. Μια οντότητα Α μπορεί σε κάποια φάση να αρνηθεί ότι υπέγραψε κάποιο μήνυμα ή ότι κάποια άλλη οντότητα Β μπορεί λανθασμένα να υποστηρίξει ότι η υπογραφή ενός μηνύματος έγινε από την Α. Σε μια τέτοια περίπτωση η επίλυση της διαφοράς μεταξύ των δύο μπορεί να γίνει από κάποια έμπιστη Τρίτη οντότητα ή κάποιο δικαστή. Απαραίτητη προϋπόθεση είναι: –να ισχύει η βασική ιδιότητα των ψηφιακών υπογραφών –Η TTP να έχει ένα αυθεντικοποιημένο αντίγραφο της συνάρτησης επαλήθευσης της υπογραφής καθώς και του δημοσίου κλειδιού επαλήθευσης της υπογραφής. –Το μυστικό κλειδί υπογραφής έχει παραμείνει μυστικό.

59 Διαχείριση κλειδιών •Χρησιμοποιώντας τεχνικές συμμετρικών κλειδιών. –Κέντρα διανομής κλειδιών (key distribution centers) –Κέντρα μετάφρασης κλειδιών (key translation centers) •Πλεονεκτήματα: –Είναι εύκολο να προσθέσουμε ή να αφαιρέσουμε οντότητες από το δίκτυο. –Κάθε οντότητα χρειάζεται μόνο να αποθηκεύση ένα μυστικό κλειδί μακράς διαρκείας. •Μειονεκτήματα: –Όλες οι επικοινωνίες απαιτούν μια αρχική επικοινωνία με την έμπιστη τρίτη οντότητα. –Η TTP πρέπει να αποθηκεύσει n κλειδιά μακράς διαρκείας. –Η TTP έχει τη δυνατότητα να διαβάσει όλα τα μηνύματα. –Εάν παραβιαστεί η ασφάλεια του TTP τότε όλες οι επικοινωνίες είναι ανασφαλείς.

60 Διαχείριση κλειδιών •Χρησιμοποιώντας τεχνικές δημοσίου κλειδιού: Τα δημόσια κλειδιά μπορούν είτε να χρησιμοποιηθούν για την απ’ ευθείας κρυπτογράφηση των μηνυμάτων, είτε για την κρυπτογράφηση κλειδιών τα οποία με τη σειρά τους θα χρησιμοποιηθούν για τη κρυπτογράφηση του μηνύματος. Είναι εφικτή με τη χρήση ενός TTP το οποίο θα προστατεύσει τα δημόσια κλειδιά και θα εγγυηθεί για την αυθεντικότητα των κλειδιών. •Πλεονεκτήματα χρήσης τεχνικών δημοσίου κλειδιού με TTP: –Το TTP δε μπορεί να παρακολουθήσει τις επικοινωνίες. –Η επικοινωνία με το TTP μπορεί να περιοριστεί αν οι οντότητες αποθηκεύουν τα κλειδιά τοπικά. •Μειονεκτήματα: –Πρέπει να υπάρχει πλήρης εμπιστοσύνη του TTP από όλες τις οντότητες.

61 Αυθεντικοποίηση

62 •Αυθνετικοποίηση είναι η πιστοποίηση της ταυτότητας. Διακρίνεται σε: –Αυθεντικοποίηση οντότητας: Η διαδικασία σύμφωνα με την οποία μια οντότητα Α βεβαιώνεται για την ταυτότητα μιας άλλης οντότητας Β (άτομο, τερματικό, πιστωτική κάρτα) και ότι η Β είναι ενεργή την ώρα που γίνεται η διαδικασία της αυθεντικοποίησης. Πρόκειται για μια διαδικασία πραγματικού χρόνου, με την έννοια ότι διαβεβαιώνει πως η οντότητα που αυθεντικοποιείται είναι λειτουργική την ώρα που αυθεντικοποιείται (παρέχουν διαβεβαιώσεις μόνο για τη συγκεκριμένη χρονική στιγμή). –Αυθεντικοποίηση μηνύματος: Η διαδικασία σύμφωνα με την οποία επιβεβαιώνεται ότι μια οντότητα αποτελεί την πηγή κάποιων δεδομένων τα οποία δημιουργήθηκαν κάποια στιγμή στο παρελθόν (η χρονική αυτή στιγμή συνήθως δε δηλώνεται). Μέθοδοι που χρησιμοποιούνται: •Κώδικες αυθεντικοποίησης μηνύματος (MAC): Χρησιμοποιούν συμμετρικές μεθόδους. •Ψηφιακές υπογραφές

63 Αυθεντικοποίηση οντότητας •Δύο κατηγορίες –Μονόδρομη αυθεντικοποίηση (unilateral authentication): Μόνο η μια οντότητα αυθεντικοποιεί την άλλη. –Αμφίδρομη αυθεντικοποίηση (mutual authentication): Αυθεντικοποίηση και των δύο οντοτήτων. •Η αυθεντικοποίηση οντότητας γίνεται σύμφωνα με –κάτι που ξέρει •Password (η ασφάλεια μπορεί να αυξηθεί εάν χρησιμοποιούμε κάποια μέθοδο πρόκλησης-απόκρισης) •PIN •Ένα μυστικό ή ιδιωτικό κλειδί γνώση του οποίου αποδεικνύεται σε ένα πρωτόκολλο πρόκλησης-απάντησης (challenge-response). –κάτι που έχει •Security token (password generator) •Smart card, magnetic stripe card •Για να κάνουμε την αυθεντικοποίηση πιο ασφαλή συνήθως τις χρησιμοποιούμε σε συνδυασμό με κάποια μέθοδο τύπου “κάτι που ξέρει” –κάτι που είναι •Βιομετρικές μέθοδοι -

64 Passwords •Πρόκειται για ένα string x χαρακτήρων γνώση του οποίου αποδέχεται ένα σύστημα ως διαβεβαίωση της ταυτότητας μιας οντότητας. •Απειλές από τις οποίες πρέπει να προστατευτούμε όταν χρησιμοποιούμε passwords: –Αποκάλυψη του κωδικού πρόσβασης. –Παρακολούθηση της γραμμής μεταβίβασης του κωδικού πρόσβασης. –Εύρεση του κωδικού πρόσβασης χρησιμοποιώντας τεχνικές τύπου dictionary attacks. •Απαραίτητη η χρήση δύσκολων κωδικών (χρήση αλφαριθμητικών χαρακτήρων σε συνδυασμό με μη αλφαριθμητικούς χαρακτήρες) •Μπορούμε να χρησιμοποιήσουμε password checkers για να ελέξουμε πόσο δυνατό είναι το password που επιλέξαμε.

65 Passwords •Τρόποι μείωσης του κινδύνου εύρεσης ενός password: –Εκπαίδευση σε χρήστες και διαχειριστές –Περιορισμός των μη έγκυρων προσπαθειών αυθεντικοποίησης σε πολύ μικρό αριθμό –Χρήση τεχνητής καθυστέρησης στη διαδικασία επαλήθευση για να δυσκολέψουμε την αποτελεσματικότητα των επιθέσεων τύπου dictionary attacks. –Χρήση μηχανισμών που αποτρέπουν τους χρήστες να επιλέξουν passwords που είναι πολύ μικρά, εύκολα, σχετίζονται με τα χαρακτηριστικά του χρήστη. –Συχνή αλλαγή των passwords. –Αποφυγή των default passwords.

66 Βιομετρικές μέθοδοι •Εξετάζουν κάποια στοιχεία που χαρακτηρίζουν μοναδικά έναν χρήστη. •Πλεονεκτήματα –Αποτελεί την πιο αποτελεσματική μέθοδο πιστοποίησης ταυτότητας. •Μειονεκτήματα –Κόστος –Όχι ιδιαίτερα αποδεκτό από τους χρήστες •Χαρακτηριστικά –Λάθος τύπου Ι: το σύστημα απορρίπτει έναν εξουσιοδοτημένο (νόμιμο) χρήστη. –Λάθος τύπου ΙΙ: το σύστημα δέχεται μη εξουσιοδοτημένο χρήστη. –Crossover Error Rate: Αντιπροσωπεύει το σημείο στο οποίο το ποσοστό εσφαλμένης απόρριψης ισοδυναμεί με το ποσοστό εσφαλμένης αποδοχής. •Το πρόβλημα με τις βιομετρικές μεθόδους είναι ότι η αποτελεσματικότητα τους δε συμπίπτει με την αποδοχή τους.

67 Είδη βιομετρικών μεθόδων –Δακτυλικά αποτυπώματα –Σάρωση παλάμης (περιλαμβάνει και δακτυλικά αποτυπώματα) –Γεωμετρία χεριού: μετρά το μήκος και το πλάτος ενός χεριού και των δακτύλων –Σάρωση αμφιβληστροειδούς: Διαβάζει το σχέδιο των αιμοφόρων αγγείων στο πίσω μέρος του βολβού. –Σάρωση ίριδας: Η ίριδα είναι το χρωματισμένο μέρος του ματιού που περιβάλλει την κόρη. Ελέγχει κάποια χαρακτηριστικά τα οποία είναι μοναδικά όπως χρώμα, κύκλους, ραβδώσεις. –Αναγνώριση φωνής: Το άτομο πρέπει να εκφωνήσει κάποιες λέξεις που του ζητούνται και τις οποίες έχει εκφωνήσει και κατά τη διάρκεια της εγγραφής.

68 Είδη βιομετρικών μεθόδων –Σάρωση προσώπου: Χρησιμοποιεί τη γεωμετρία του προσώπου και τα χαρακτηριστικά του. –Δυναμική υπογραφής: Κάθε άτομο έχει έναν ιδιαίτερο τρόπο που υπογράφει. Ο τρόπος και η ταχύτητα με την οποία το κάνει είναι μοναδικά. Ο τρόπος με τον οποίο γίνεται η αναγνώριση είναι ο εξής: κατά τη διάρκεια της υπογραφής καταγράφονται από το βιομετρικό σύστημα κάποια ηλεκτρικά σήματα. Κάθε φορά που υπογράφει κάποιος γίνεται η σύγκριση με τα αποθηκευμένα στοιχεία και αν αυτά συμπίπτουν τότε γίνεται η αυθεντικοποίηση του ατόμου. –Δυναμική δακτηλογράφησης: Δουλεύει με παρόμοιο τρόπο με τη τεχνική της δυναμικής υπογραφής.

69 Αποτελεσματικότητα βιομετρικών μεθόδων •Σάρωση παλάμης •Γεωμετρία χεριού •Σάρωση ίριδας •Σάρωση αμφιβληστροειδούς •Δακτυλικά αποτυπώματα •Αναγνώριση φωνής •Αναγνώριση προσώπου •Δυναμική υπογραφής •Δυναμική δακτυλογράφησης

70 Αποδοχή βιομετρικών μεθόδων •Σάρωση ίριδας •Δυναμική δακτυλογράφησης •Δυναμική υπογραφής •Αναγνώριση φωνής •Αναγνώριση προσώπου •Δακτυλικά αποτυπώματα •Σάρωση παλάμης •Γεωμετρία χεριού •Σάρωση αμφιβληστροειδούς

71 Αυθεντικοποίηση μηνύματος •Γίνεται κυρίως με τρεις μεθόδους: – Κώδικας αυθεντικοποίησης μηνύματος (MAC): Βασίζονται στη χρήση συμμετρικών κλειδιών και έτσι δεν επιτρέπουν το διαχωρισμό μεταξύ των οντοτήτων που μοιράζονται το κλειδί. Επομένως, και σε αντίθεση με τις ψηφιακές υπογραφές δε παρέχουν μη αποποίηση της προέλευσης του μηνύματος. Εάν η επίλυση διαφορών αποτελεί απαίτηση, τότε αντ’αυτού συνιστάται η χρήση είτε μιας έμπιστης τρίτης οντότητας, είτε η χρήση ασύμμετρων μεθόδων. –Ψηφιακές υπογραφές –Επισύναψη (πριν την κρυπτογράφηση) στα κρυπτογραφημένα δεδομένα μιας μυστικής τιμής.

72 Κώδικας Αυθεντικοποίησης Μηνύματος •Πρόκειται για μια μονόδρομη συνάρτηση κατακερματισμού ή ανάδευσης (one-way hash function) με κλειδί. •Μια μονόδρομη συνάρτηση κατακερματισμού είναι μια συνάρτηση η οποία μετατρέπει ένα μήνυμα μεταβλητού μήκους σε ένα μήνυμα σταθερού μήκους (χρησιμοποιώντας ένα είδος συμπίεσης) το οποίο ονομάζεται τιμή κατακερματισμού (hash value) ή σύνοψη μηνύματος (message digest). Έχει τα εξής χαρακτηριστικά: –Δεδομένου του μηνύματος m, είναι πολύ εύκολο να υπολογίσουμε τη τιμή κατακερματισμού f(m). –Δεδομένης της f(m), είναι πρακτικά αδύνατο να υπολογίσουμε το m. –Είναι αδύνατο να βρούμε δύο μηνύματα m και m΄ τέτοια ώστε f(m) = f(m΄)

73 Κώδικας Αυθεντικοποίησης Μηνύματος •Μια μονόδρομη συνάρτηση κατακερματισμού δε χρησιμοποιεί κάποιο κλειδί. Αυτό σημαίνει ότι όποιος πάρει το πάρει το μήνυμα μπορεί να εφαρμόσει τη συνάρτηση κατακερματισμού για να επαληθεύσει την ακεραιότητα του μηνύματος. Ωστόσο, αν ο αποστολέας επιθυμεί μόνο κάποιος συγκεκριμένος παραλήπτης να μπορεί να επαληθεύσει την ακεραιότητα του μηνύματος καθώς και να μπορεί να αυθεντικοποιήσει το μήνυμα τότε μπορεί να χρησιμοποιήσει τη συνάρτηση κατακερματισμού σε συνδυασμό με ένα κλειδί. Το αποτέλεσμα είναι ένας κώδικας αυθεντικοποίησης μηνύματος.

74 Υποδομές Δημοσίου Κλειδιού Έμπιστες Τρίτες Οντότητες Ψηφιακά πιστοποιητικά Υποδομές δημοσίου κλειδιού

75 Εμπιστες Τρίτες Οντότητες ή Trusted Third Parties (TTPs) •Πρόκειται για μια οντότητα την οποία εμπιστεύονται όλες οι οντότητες μέσα σε ένα σχήμα. •Ο βαθμός εμπιστοσύνης διαφέρει και μπορεί να είναι μια άνευ όρων εμπιστοσύνη όπου το TTP έχει πρόσβαση σε μυστικά και ιδιωτικά κλειδιά των χρηστών ή μια λειτουργική εμπιστοσύνη εάν απλά η οντότητα είναι ειλικρινής και δίκαιη αλλά δεν έχει πρόσβαση σε μυστικά ή ιδιωτικά κλειδιά. •Από την πλευρά των επικοινωνιών υπάρχουν τρεις κατηγορίες έμπιστων οντοτήτων Τ βάσει της σχετικής τους θέσης και της αλληλεπίδρασης τους με τις οντότητες που επικοινωνούν Α και Β: –In-line: Λειτουργεί ως μεσάζων και αποτελεί το μέσο επικοινωνίας μεταξύ Α και Β. –On-line: Συμμετέχει ενεργά (σε πραγματικό χρόνο) κατά τη διάρκεια της εκτέλεσης του πρωτοκόλλου. Οι Α και Β όμως επικοινωνούν άμεσα από ότι μέσω του Τ. –Off-line: Το Τ δε συμμετέχει σε πραγματικό χρόνο αλλά ετοιμάζει τις σχετικές πληροφορίες οι οποίες είναι διαθέσιμες στους Α και Β πριν την εκτέλεση του πρωτοκόλλου.

76 TTPs •Ρόλοι μιας Έμπιστης Τρίτης Οντότητας περιλαμβάνουν: –Αρχή Πιστοποίησης: Χρησιμοποιείται σε υποδομές δημοσίου κλειδιού και είναι η αρχή που εκδίδει τα ψηφιακά πιστοποιητικά. –Registration Authority (Αρχή εγγραφής): Χρησιμοποιείται σε υποδομές δημοσίου κλειδιού και είναι η αρχή που χρησιμεύει στην εγγραφή ενός χρήστη σε μια υποδομή δημοσίου κλειδιού. –Key Generator (Γεννήτρια κλειδιών): Χρησιμοποιείται για τη διαχείρηση κλειδιών, και πιό συγκεκριμένα στη δημιουργία κλειδιών για τους χρήστες. –Certificate Directory (Κατάλογος Πιστοποιητικών): Χρησιμεύει ως χώρος αποθήκευσης ψηφιακών πιστοποιητικών. –Key server (Εξυπηρετητής κλειδιών): Χρησιμοποιείται για την αποθήκευση και διαχείριση κλειδιών κρυπτογράφησης. Παραδείγματα αποτελούν τα Κέντρα Διανομής Κλειδιών και Κέντρα Διαχείρισης Κλειδιών. –Timestamp Agent: Πιστοποιεί τη χρονική στιγμή την οποία έγινε μια συναλλαγή. –Notary Agent: Χρησιμεύει ως αρχή επίλυσης διαφορών. –Key Escrow Agent: Πρόκειται για μια αρχή στην οποία εμπιστευόμαστε αντίγραφα κλειδιών κρυπτογράφησης.

77 Ψηφιακά πιστοποιητικά •Είναι ο μηχανισμός που χρησιμοποιείται για να σχετίσει κάποιες πληροφορίες που αφορούν μια οντότητα με την ταυτότητα αυτής της οντότητας. Αποτελείται από ένα τμήμα δεδομένων και από ένα τμήμα υπογραφής. –Το τμήμα δεδομένων αποτελείται από το όνομα της οντότητας, το δημόσιο κλειδί της, καθώς και άλλες πληροφορίες που αφορούν αυτήν την οντότητα. –Το τμήμα υπογραφής αποτελείται από την ψηφιακή υπογραφή μιας έμπιστης τρίτης οντότητας στο τμήμα δεδομένων. •Για να επαληθεύσει η οντότητα Α την αυθεντικότητα κάποιων πληροφοριών που αφορούν την οντότητα Β (και πιό συγκεκριμένα αυτών των πληροφοριών που περιλαμβάνονται σε ένα πιστοποιητικό) η Α πρέπει να κάνει τα εξής (θεωρούμε ότι η Α έχει ένα αυθεντικοποιημένο αντίγραφο του δημοσίου κλειδιού της έμπιστης τρίτης οντότητας ΤΤΡ): –Να πάρει ένα αντίγραφο του πιστοποιητικού της Β –Χρησιμοποιώντας το δημόσιο κλειδί του TTP που υπέγραψε το πιστοποιητικό να επαληθεύσει την υπογραφή στο πιστοποιητικό. –Εάν η υπογραφή επαληθευτεί σωστά τότε η Α μπορεί να δεχτεί ότι τα στοιχεία που αφορούν τον Β και περιλαμβάνονται στο πιστοποιητικό ως έγκυρα.

78 Ψηφιακά πιστοποιητικά •Είδη πιστοποιητικών –Πιστοποιητικά δημοσίου κλειδιού (public-key certificates): Συνδέουν την ταυτότητα μιας οντότητας, και προεραιτικά κάποιες πληροφορίες οι οποίες αναγνωρίζουν μοναδικά αυτή την οντότητα, με το δημόσιο κλειδί της. –Πιστοποιητικά ταυτότητας (identity certificates): Πιστοποιούν την ταυτότητα μιας οντότητας μαζί με κάποια άλλα χαρακτηριστικά που ταυτοποιούν αυτήν την οντότητα. –Πιστοποιητικά ιδιότητας (attribute certificates): Πιστοποιούν κάποια χαρακτηριστικά μιας οντότητας (θέση σε μια εταιρία, δικαιώματα πρόσβασης). Μπορεί να περιλαμβάνει και ένα δημόσιο κλειδί το οποίο όμως μπορεί να χρησιμοποιηθεί μόνο σε συνδυασμό με τις ιδιότητες οι οποίες περιλαμβάνονται στο πιστοποιητικό.

79 Ψηφιακά πιστοποιητικά •Άλλες πληροφορίες που μπορεί να υπάρχουν στο τμήμα δεδομένων ενός πιστοποιητικού: –Μια περίοδο ισχύος του δημοσίου κλειδιού (ημερομηνία έναρξης και ημερομηνία λήξης) –Έναν σειριακό αριθμό ο οποίος αναγνωρίζει μοναδικά το πιστοποιητικό. –Πρόσθετες πληροφορίες για την οντότητα (π.χ. διεύθυνση) –Πρόσθετες πληροφορίες για το κλειδί (π.χ. αλγόριθμος με τον οποίο χρησιμοποιείται και για ποιούς σκοπούς) –Πληροφορίες σχετικά με την υπογραφή στο πιστοποιητικό (αλγόριθμος, το όνομα της αρχής πιστοποίησης)

80 Υποδομή Δημοσίου Κλειδιού •Πρόκειται για την υποδομή η οποία κάνει χρήση κρυπτογραφίας δημοσίου κλειδιού για να προσφέρει σε οντότητες που συμμετέχουν σε αυτή υπηρεσίες προστασίας πληροφοριών όπως αυθεντικοποίηση, εμπιστευτικότητα, μη αποποίηση, και ακεραιότητα των ανταλλασσόμενων μηνυμάτων. •Μια υποδομή δημοσίου κλειδιού αποτελείται από εκείνα τα προγράμματα, δομές δεδομένων, διαδικασίες, πρωτόκολλα επικοινωνίας, πολιτικές ασφαλείας, και μηχανισμούς κρυπτογραφίας δημοσίου κλειδιού που επιτρέπει τις οντότητες που την απαρτίζουν να επικοινωνήσουν με ασφαλή τρόπο.

81 Υποδομή Δημοσίου Κλειδιού •Η διαφορά μεταξύ κρυπτογραφίας δημοσίου κλειδιού και υποδομής δημοσίου κλειδιού είναι ότι η πρώτη περιλαμβάνει τους αλγορίθμους, τα κλειδιά, και την τεχνολογία που απαιτείται για την κρυπτογράφηση και αποκρυπτογράφηση μηνυμάτων ενώ η δεύτερη περιλαμβάνει εκείνα τα κομμάτια που αναγνωρίζυν τους χρήστες, διαχειρίζονται πιστοποιητικά, διανέμουν και ανακαλούν κρυπτογραφικά κλειδιά. Η κρυπτογραφία δημοσίου κλειδιού είναι μόνο ένα κομμάτι της υποδομής δημοσίου κλειδιού. •Μια υποδομή δημοσίου κλειδιού απαρτίζεται από: –Αρχές πιστοποίησης- Αρχές εγγραφής –Πιστοποιητικά- Χρήστες –Αποθήκη πιστοποιητικών (repository) - Κλειδιά –Μηχανισμό ανάκλησης κλειδιών

82 Υποδομή Δημοσίου Κλειδιού •Κάθε οντότητα που συμμετέχει σε μια υποδομή χρειάζεται ένα ψηφιακό πιστοποιητικό. Τα στοιχεία του πιστοποιητικού συγκεντρώνονται από την αρχή εγγραφής και περιλαμβάνουν εκτός των άλλων το δημόσιο κλειδί και την ταυτότητα του χρήστη. Το πιστοποιητικό υπογράφεται από μια αρχή πιστοποίησης. •Αρχή πιστοποίησης: Πρόκειται για έναν οργανισμό ο οποίος εκδίδει και διατηρεί ψηφιακά πιστοποιητικά. Όταν μια οντότητα αιτείται ενός πιστοποιητικού η αρχή πιστοποίησης συγκεντρώνει τα στοιχεία από την αρχή εγγραφής, δημιουργεί το πιστοποιητικό, το υπογράφει, το διανέμει στην οντότητα που το αιτήθηκε, προαιρετικά το δημοσιεύει, και είναι υπεύθυνη για τη διαχείριση του καθ’όλη τη διάρκεια της ζωής του.

83 Υποδομή Δημοσίου Κλειδιού •Κάθε πιστοποιητικό έχει τυπικά μια ημερομηνία λήξης. Υπάρχουν όμως περιπτώσεις που αυτό το πιστοποιητικό πρέπει να πάψει να είναι έγκυρο πριν την ημερομηνία λήξης του. Τέτοιοι λόγοι περιλαμβάνουν: –Αποκάλυψη του αντίστοιχου ιδιωτικού κλειδιού ή υποψία αποκάλυψης. –Αλλαγή των στοιχείων της οντότητας () –Αλλαγή της ιδιότητας της οντότητας (απόλυση από τη δουλειά) •Σε μια τέτοια περίπτωση γίνεται χρήση ενός μηχανισμού ανάκλησης πιστοποιητικών. Ένας τέτοιος μηχανισμός είναι η λίστα ανάκλησης πιστοποιητικών (certificate revocation list). Η CRL είναι μια υπογεγραμμένη από την αρχή πιστοποίησης λίστα με όλα τα πιστοποιητικά που έχουν ανακληθεί για τον ένα ή τον άλλο λόγο. Αποτελεί υποχρέωση της αρχής πιστοποίησης να διατηρεί και να ανανεώνει αυτή τη λίστα σε τακτά χρονικά διαστήματα.

84 Υποδομή Δημοσίου Κλειδιού •Αρχή εγγραφής (Registration Authority): Πρόκειται για έναν οργανισμό, ο οποίος μπορεί να είναι ανεξάρτητος από την αρχή πιστοποίησης, και ο οποίος είναι υπεύθυνος –Για τη συλλογή των στοιχείων μιας οντότητας που αιτείται ένα πιστοποιητικό καθώς και για την επαλήθευση της εγκυρότητας των. –Την παράδοση ενός πιστοποιητικού. •Δε μπορεί να εκδώσει πιστοποητικά. •Οι λόγοι χρήσης μιας αρχής εγγραφής είναι: –Για να ελαττώσει τη δουλειά που έχει να διεκπεραιώσει η αρχή πιστοποίησης –Για να χρησιμοποιήσει την υπάρχουσα υποδομή ενός οργανισμού ο οποίος μπορεί να φέρει εις πέρας μια τέτοια διεργασία.

85 Υποδομή Δημοσίου Κλειδιού •Κατάλογο πιστοποιητικών (certificate directory): Πρόκειται για μια βάση δεδομένων στην οποία οι χρήστες έχουν πρόσβαση ανάγνωσης για να μπορούν να παίρνουν κάποιο πιστοποιητικό. Ο κάθε χρήστης μπορεί να διαχειρίζεται το πιστοποιητικό του ενώ η αρχή πιστοποίησης είναι επεύθυνη για την διαχείριση όλης της βάσης (εγγραφή νέου πιστοποιητικού, διαγραφή πιστοποιητικών που έχουν λήξει). •Με τον κατάλογο πιστοποιητικών συνήθως δημοσιεύεται και η λίστα ανάκλησης πιστοποιητικών. Γενικότερα (αν ο μηχανισμός που χρησιμοποιείται για την ανάκληση δεν είναι η λίστα ανάκλησης πιστοποιητικών), θα υπάρχει κάποιος μηχανισμός ο οποίος θα επιτρέπει στους χρήστες να ελέγχουν εάν κάποιο πιστοποητικό έχει ανακληθεί ή όχι.

86 Υποδομή Δημοσίου Κλειδιού •Πως δουλεύουν όλα αυτά μαζί: –Ο χρήστης Α ο οποίος θέλει να χρησιμοποιεί ένα ζευγάρι δημοσίου/ιδιωτικού κλειδιού μέσα σε μια συγκεκριμένη υποδομή θα επισκεφτεί την Αρχή Εγγραφής αυτής της υποδομής για να κάνει μια αίτηση εγγραφής. –Η Αρχή Εγγραφής θα συλλέξει όλα τα στοιχεία του χρήστη και όταν θα είναι ικανοποιημένη για την εγκυρότητα τους θα ζητήσει από την Αρχή Πιστοποίησης να πιστοποιήσει το δημόσιο κλειδί του χρήστη. Το δημόσιο κλειδί του χρήστη μπορεί να δημιουργηθεί από •Την αρχή πιστοποίησης η οποία όμως θα πρέπει μετά να του δώσει με πολύ ασφαλή τρόπο το ιδιωτικό κλειδί (αυτός ο τρόπος δε συνηθίζεται για κλειδιά που χρησιμοποιούνται για ψηφιακές υπογραφές). •Τον ίδιο το χρήστη ο οποίος όμως θα πρέπει να αποδείξει ότι είναι κάτοχος του αντίστοιχου ιδιωτικού κλειδιού. –Η Αρχή Πιστοποίησης θα δημιουργήσει ένα πιστοποιητικό για το χρήστη που έκανε την αίτηση και θα δημοσιεύσει ένα αντίγραφο στον κατάλογο πιστοποιητικών (εκτός αν το απαγορέψει ο χρήστης) και θα δώσει ένα αντίγραφο στο χρήστη.

87 Υποδομή Δημοσίου Κλειδιού •Όταν μια άλλη οντότητα Β η οποία χρησιμοποιεί ένα ζευγάρι δημοσίου/ιδιωτικού κλειδιού σε αυτήν την υποδομή θέλει να χρησιμοποιήσει το δημόσιο κλειδί της Α πρέπει να κάνει τα ακόλουθα. –Θα πάρει από τον κατάλογο πιστοποιητικών το πιστοποιητικό της Α (ένας άλλος τρόπος είναι να το ζητήσει από την ίδια την Α). –Θα επαληθεύσει ότι τη συγκεκριμένη μέρα και ώρα που το χρησιμοποιεί το πιστοποιητικό ισχύει ακόμη. –Θα επαληθεύσει την εγκυρότητα του κλειδιού της Αρχής Πιστοποίησης. –Χρησιμοποιώντας το δημόσιο κλειδί της Αρχής Πιστοποίησης (αυθεντικοποιημένο αντίγραφο της οποίας θεωρούμε ότι έχουν όλες οι οντότητες που χρησιμοποιούν κλειδιά σε αυτήν την υποδομή) θα επαληθεύσει το γνήσιο της υπογραφής στο πιστοποιητικό και αν είναι γνήσια θα πάρει το δημόσιο κλειδί που υπάρχει στο πιστοποιητικό. Με αυτόν τον τρόπο η Β γνωρίζει ότι έχει ένα αυθεντικοποιημένο αντίγραφο του κλειδιού της Α. –Πριν όμως χρησιμοποιήσει αυτό το κλειδί η Β θα πρέπει να ελέγξει εάν αυτό το πιστοποιητικό έχει ανακληθεί. Εάν όχι, τότε δέχεται ότι το δημόσιο κλειδί στο πιστοποιητικό είναι ένα αυθεντικοποιημένο κλειδί της Α.

88 Υποδομή Δημοσίου Κλειδιού •Αλυσίδες πιστοποιητικών: Τα πιστοποιητικά δημοσίων κλειδιών παρέχουν έναν τρόπο για την απόκτηση αυθεντικοποιημένων δημοσίων κλειδιών, δεδομένου ότι ο χρήστης που κάνει την επαλήθευση έχει ένα αυθεντικοποιημένο αντίγραφο του δημοσίου κλειδιού της αρχής πιστοποίησης που χρησιμοποιήθηκε για την υπογραφή του πιστοποιητικού. Εάν ο χρήστης αυτός θέλει να πάρει ένα αυθεντικοποιημένο αντίγραφο ενός πιστοποιητικού που υπογράφηκε από άλλη αρχή πιστοποίησης μπορεί να το κάνει εάν μπορεί να δημιουργηθεί μια αλυσίδα πιστοποιητικών η οποία ανταποκρίνεται σε μια αλυσίδα εμπιστοσύνης από το δημόσιο κλειδί της αρχής πιστοποίησης την οποία ο χρήστης εμπιστεύεται εως το δημόσιο κλειδί που θέλει να επαληθεύσει.

89 PGP

90 •Pretty Good Privacy: σχεδιάστηκε από τον Phil Zimmerman το •Χρησιμοποιεί τόσο αλγορίθμους δημοσίου κλειδιού για τη διαχείριση των κλειδιών και για ψηφιακές υπογραφές αλλά και συμμετρικούς αλγορίθμους για τη κρυπτογράφηση δεδομένων. •Παρέχει εμπιστευτικότητα, ακεραιτότητα (με τη χρήση συναρτήσεων κατακερματισμού), αυθεντικοποίηση, και μη αποποίηση με τη χρήση ψηφιακών υπογραφών. •Δε χρησιμοποιεί μια ιεραρχημένη υποδομή δημοσίου κλειδιού όπου έχουμε μια κεντρική αρχή πιστοποίησης, αλλά βασίζεται σε έναν “ιστό εμπιστοσύνης” (web of trust) όπου χρήστες που χρησιμοποιούν το PGP υπογράφουν μεταξύ τους τα κλειδιά τους, το οποίο δημιουργεί μια “κοινωνία χρηστών που εμπιστεύονται ο ένας τον άλλο”.

91 PGP •Χρησιμοποιεί passphrases (αντί για passwords), για την κρυπτογράφηση του ιδιωτικών κλειδιών των χρηστών. •Κάθε χρήστης διατηρεί μια συλλογή από υπογεγραμμένα δημόσια κλειδιά τα οποία λαμβάνει από άλλους χρήστες σε ένα αρχείο το οποίο ονομάζεται key ring. Κάθε κλειδί μέσα σε αυτό το αρχείο έχει μια παράμετρο που υποδικνύει το βαθμό εμπιστοσύνης για αυτό το χρήστη και την ισχύ αυτού του κλεδιού. •Τo σημαντικότερο πρόβλημα που αντιμετωπίζει το PGP είναι αυτό της ανάκλησης πιστοποιητικών. Όταν τα κλειδιά κάποιου χρήστη πρέπει να ανακληθούν, τότε πρέπει να ειδοποιηθούν όλοι οι χρήστες για αυτήν την ανάκληση. Ο χρήστης που υπέγραψε το πιστοποιητικό μπορεί να στείλει ένα μήνυμα ανάκλησης αυτών των κλειδιών αλλά δεν είναι σίγουρο εάν αυτό το μήνυμα θα φθάσει σε όλους τους ενδιαφερόμενους αφού δεν υπάρχει μια κεντρική αρχή που θα διανείμει αυτό το μήνυμα όπως θα συνέβαινε αν είχαμε μια ιεραρχημένη υποδομή.

92 Κακόβουλο λογισμικό Ιοί, Δούρειοι Ίπποι, Σκουλήκια Τρόποι αντιμετώπισης ιών

93 Τύποι Ιών •Ταξινόμηση σύμφωνα με τον τρόπο λειτουργίας τους: –Ιός: είναι ένα κομμάτι κώδικα το οποίο αναπαράγεται από μόνο του (self-replicating) και το οποίο είναι προσκολλημένο σε άλλο κώδικα. Μολύνει τα προγράμματα με το να τα αλλάζει. Ο όρος ιός προκύπτει από το γεγονός ότι το μολυσμένο πρόγραμμα μπορεί να αλλάξει ώστε να συμπεριλάβει ένα αντίγραφο του ιού, έτσι ώστε το μολυσμένο πρόγραμμα να αρχίσει να συμπεριφέρεται το ίδιο ως ιός μολύνοντας άλλα προγράμματα. –Δούρειοι Ίπποι (Trojan Horses): πρόκειται για ένα πρόγραμμα με κρυμμένες παρενέργειες οι οποίες δεν αναφέρονται στις λειτουργίες του προγράμματος. Αυτές οι παρενέργεια δεν αποτελούν μέρος των φυσιολογικών λειτουργιών του προγράμματος. Έχουν απλά σκοπό να βλάψουν το σύστημα. Σκοπός του είναι να πετύχει την εκτέλεση του με περισσότερα δικαιώματα εκμεταλλευόμενο τα δικαιώματα πρόσβασης που θα έχει το πρόγραμμα το οποίο το μεταφέρει. –Παροδικός Ιός (Transient virus): είναι ενεργός μόνο όταν τρέχει το πρόγραμμα το οποίο έχει μολύνει.

94 Τύποι Ιών –Εγκατεστημένος Ιός (Resident Virus): εγκαθίσταται στην μνήμη όταν το τρέχει το πρόγραμμα που έχει μολύνει. Ο εγκατεστημένος (Terminate-stay-resident) ιός μπορεί να παραμείνει ενεργός ακόμη και όταν το πρόγραμμα το οποίο έχει μολύνει σταματήσει να τρέχει συνδέοντας τον εαυτό του σε άλλα προγράμματα που τρέχουν εκείνη τη στιγμή. –Λογική βόμβα (logic bomb): είναι ένα πρόγραμμα το οποίο εκτελείται κάτω από ορισμένες συνθήκες (π.χ. Σε μια συγκεκριμένη ημερομηνία). –Σκουλήκι (Worm): είναι ένας αναπαραγόμενος ιός το οποίο δε μολύνει προγράμματα και δε χρειάζεται κάποιο πρόγραμμα για να αναπαραχθεί. Βρίσκει ελεύθερους δικτυακούς υπολογιστές για να μεταδοθεί χρησιμοποιώντας , ή/και το TCP/IP. Όταν θα εγκατασταθεί βρίσκει άλλους υπολογιστές στους οποίους θα μεταδοθεί. Σκοπός του είναι να καταλαμβάνει τους πόρους των συστημάτων έτσι ώστε να μη μπορούν να τα χρησιμοποιήσουν οι νόμιμοι χρήστες τους. •Μερικά σκουλήκια έχουν και νόμιμες χρήσεις όπως είναι οι πίνακες ανακοινώσεων και οι παράλληλοι υπολογιστές.

95 Τύποι Ιών (Ιός εκκίνησης) •Ταξινόμηση σύμφωνα με τι προσβάλλουν: –Ιός εκκίνησης συστήματος: Οι Ιοί γενικά έχουν σκοπό να προσβάλλουν εκείνα τα σημεία του συστήματος τα οποία δε προστατεύονται από μη εξουσιοδοτημένες αλλαγές. Η ακολουθία εκκίνησης ενός συστήματος τύπου IBM είναι η εξής: •Αρχικά όλη η μνήμη του συστήματος είναι άδεια εκτός από τη ROM. Η ROM περιέχει μια ρουτίνα αρχικοποίησης η οποία προσδιορίζει τη θέση του κύριου τομέα εκκίνησης (master boot sector) στο μέσο αποθήκευσης που είναι εγκατεστημένο το λειτουργικό σύστημα (σκληρό δίσκο). •Ο κύριος τομέας εκκίνησης βρίσκεται σε μια προκαθορισμένη θέση όπως τομέας (sector) 0, ίχνος εγγραφής (track) 1, πλευρά (side) 0 μιας δισκέτας. Περιέχει κάποιον κώδικα εκτέλεσης και ένα πίνακα τμημάτων (partition table) ο οποίος χωρίζει το δίσκο σε τμήματα και μας δηλώνει ποιό από αυτά χρησιμοποιείται για την εκκίνηση (είναι bootable). Αυτό το τμήμα διαβάζεται ακολουθιακά κατά τη διάρκεια της εκκίνησης. Ο κύριος τομέας εκκίνησης προσδιορίζει και τη θέση του τμήματος εκκίνησης DOS (DOS boot sector).

96 Τύποι Ιών (Ιός εκκίνησης) •Τομέας Εκκίνησης DOS (DOS boot sector): περιέχει εκτελέσιμο κώδικα και τον πίνακα εντοπισμού αρχείων (file allocation table ή FAT). O FAT καταγράφει που αποθηκεύονται τα αρχεία στη μνήμη. Υπάρχει μια συνδεδεμένη λίστα (linked list) από ομάδες εγγραφών (clusters) για το κάθε αρχείο. –Η ακολουθία εκκίνησης συνεχίζει ως εξής: •Φορτώνεται το πρόγραμμα IO.SYS, το οποίο περιέχει το BIOS και το πρόγραμμα SYSINIT. •To SYSINIT φορτώνει το MSDOS.SYS. •Ο έλεγχος μετά περνάει στο DOS το οποίο τρέχει το μεταφραστή εντολών (COMMAND.COM) το οποίο λαμβάνει υπ’όψη το AUTOEXEC.BAT αρχείο. Το COMMAND.COM πλέον και κατ’επέκταση ο υπολογιστής είναι έτοιμα να δεχτούν εντολές από το χρήστη.

97 Τύποι Ιών (Ιός εκκίνησης) –Ένας ιός εκκίνησης εγκαθίσταται σε ένα από τα τμήματα εκκίνησης. Αφού γίνεται ενεργός πριν το DOS να μπει σε πλήρη λειτουργία, μπορεί να χρησιμοποιήσει μόνο συναρτήσεις BIOS και επομένως ένας τέτοιος ιός γράφεται μόνο για συγκεκριμένες αρχιτεκτονικές συστημάτων. Σε άλλα συστήματα δε θα πετύχει το στόχο του αλλά είναι πολύ πιθανό ότι θα κολλήσει το σύστημα. •Παραδείγματα: –Ο New Zealand ιός: αντιγράφει τον κύριο τομέα εκκίνησης σε συγκεκριμένο μέρος του δίσκου και εισάγει το κακόβουλο λογισμικό στο σημείο όπου το DOS περιμένει να βρει τον κύριο τομέα εκκίνησης. Ο ιός μπορεί επίσης να υπάρξει σε άλλα στάδια της διαδικασίας εκκίνησης όπως ιοί που προσβάλλουν τα αρχεία IO.SYS και COMMAND.COM.

98 Τύποι ιών (Παρασιτικός ιός) •Το δεύτερο σημείο επίθεσης των ιών είναι τα προγράμματα των χρηστών. Ένας παρασιτικός ιός (parasitic virus) προσκολλάται σε ένα εκτελέσιμο πρόγραμμα, όπως είναι τα.COM και.EXE αρχεία, και μολύνει άλλα προγράμματα. •Τυπικά, ένας παρασιτικός ιός επισυνάπτεται στο μολυσμένο πρόγραμμα και εισάγει στην αρχή του προγράμματος ένα δείκτη για τον κώδικα του ιού. Στο τέλος του κώδικα του ιού υπάρχει επίσης ένας δείκτης για την αρχή του κανονικού προγράμματος. Έτσι, όταν το πρόγραμμα εκτελείται, θα εκτελεστεί πρώτα ο ιός και αμέσως μετά το πρόγραμμα θα επιστρέψει στην κανονική του εκτέλεση. •Οι πιό εξελιγμένες μορφές αυτών των ιών σπάνε σε μικρότερα κομμάτια τα οποία κρύβονται σε διάφορα τμήματα του μολυσμένου προγράμματος. •Σε ένα λειτουργικό σύστημα όπου δεν υπάρχουν έλεγχοι ακεραιότητας των προγραμμάτων, δεν υπάρχουν όρια στο τι μπορεί να μολύνει ένας παρασιτικός ιός.

99 Τύποι ιών (ακολουθιακός ιός) •Ένας ακολουθιακό ιός (companion virus) εκμεταλλεύεται το γεγονός ότι τα περισσότερα λειτουργικά συστήματα χρησιμοποιούν μια συγκεκριμένη ακολουθία στην εκτέλεση των προγραμμάτων που καλούνται χωρίς την επέκταση τους. Π.χ. Στο DOS, όταν ένα αρχείο καλείται χωρίς την επέκταση του το DOS θα κοιτάξει πρώτα για ένα.COM αρχείο, κατόπιν για ένα.EXE αρχείο, και μετά για ένα.BAT αρχείο. Εάν το αρχικό πρόγραμμα είναι ένα.EXE αρχείο, τότε μπορεί να δημιουργηθεί ένα.COM αρχείο με το ίδιο όνομα έτσι ώστε αν ο χρήστης προσπαθήσει να εκτελέσει το αρχείο μόνο με το όνομα του (και όχι και με την επέκταση) να εκτελεστεί το.COM αρχείο το οποίο είναι και μολυσμένο.

100 Τύποι ιών (Macro ιός) •Τα macros είναι προγράμματα γραμμένα σε Word Basic, Visual Basic, ή VBScript και χρησιμοποιούνται συνήθως από το Microsoft Office. •Η χρήση ενός macro είναι η αυτοματοποίηση ορισμένων λειτουργιών που εκτελεί ο χρήστης με σκοπό να διευκολύνει το χρήστη. Ο χρήστης δηλώνει μια σειρά από ενέργειες που πρέπει να εκτελέσει η εφαρμογή αποφεύγοντας έτσι να εκτελεί ο χρήστης μια προς μια αυτές τις ενέργειες. •Ένας ιός macro είναι ένας ιός γραμμένος σε μια από αυτές τις γλώσσες και είναι πολύ διαδεδομένοι λόγω της ευκολίας δημιουργίας τους και της πολύ διαδεδομένης χρήσης του Microsoft Office.

101 Τύποι ιών (Κρυφός ιός) •Κρυφός ιός (stealth virus): Πρόκειται για ιούς που προσπαθούν να κρύψουν τα ίχνη τους αφού μολύνουν το σύστημα. Το επιτυγχάνουν αλλάζοντας τις μολυσμένες εφαρμογές έτσι ώστε αυτές να φαίνονται στο χρήστη, στο σύστημα και στο λογισμικό antivirus σα να μην έχουν αλλάξει. Π.χ. Μπορεί να αλλάξει το μέγεθος ενός αρχείο αφού το μολύνει έτσι ώστε αυτό να μη φαίνεται μεγαλύτερο από όσο ήταν προσπαθώντας έτσι να ξεγελάσει το λογισμικό antivirus.

102 Τύποι ιών (Πολυμορφικός ιός) •Πρόκειται για ιούς που μεταλλάσσονται (δημιουργούν όχι όμοια, αλλά διαφορετικά αντίγραφα) με σκοπό να μπορέσουν να ξεγελάσουν το antivirus λογισμικό (ακόμη και αν βρεθούν ένα η δύο αντίγραφα του ιού κάποιο αντίγραφο μπορεί να μην ανιχνευτεί από το λογισμικό και έτσι να παραμείνει στο σύστημα). •Για να πετύχει αυτή την παραλλαγή ένας πολυμορφικός ιός μπορεί να κρυπτογραφείται χρησιμοποιώντας διαφορετικούς αλγορίθμους κρυπτογράφησης/αποκρυπτογράφησης τους οποίους δε γνωρίζει το λογισμικό.

103 Λογισμικό αντιμετώπισης ιών •Η αντιμετώπιση των ιών απαιτεί την ύπαρξη ελέγχων για την ακεραιότητα των προγραμμάτων και των αρχείων. Η στρατηγική αντιμετώπισης ιών είναι η ακόλουθη: –Πρόληψη: σταματάει κάποιο ιό από το να μολύνει το σύστημα. –Ανίχνευση: ανιχνεύει κάποιον ιό που έχει μολύνει το σύστημα. –Αντιμετώπιση: αποκατάσταση του συστήματος σε μια καθαρή κατάσταση. •Ένα βασικό στοιχείο για την αντιμετώπιση των ιών εκτός από την ύπαρξη διαχειριστικών ελέγχων είναι και η εκπαίδευση των χρηστών. •Τύποι λογισμικού αντιμετώπισης ιών: –Σαρωτές (scanners): Αναζητούν στα αρχεία συγκεκριμένες ακολουθίες οι οποίες δηλώνουν την ύπαρξη ιού (υπογραφή ιού). Το πρόβλημα, είναι ότι πρέπει να γνωρίζουν τον ιό για να μπορέσουν να τον ανιχνεύσουν. –Κρυπτογραφικό άθροισμα ελέγχου (cryptographic checksum): Πρόκειται για ένα μηχανισμό ακεραιότητας όπου ένα άθροισμα ελέγχου υπολογίζεται στη μη μολυσμένη εφαρμογή. Κάθε φορά που εκτελείται το πρόγραμμα, υπολογίζεται εκ νέου το άθροισμα ελέγχου και εάν αυτό δεν είναι ίδιο με το άθροισμα ελέγχου που έχει αποθηκευτεί από το λογισμικό τότε υπάρχει πιθανότητα ύπαρξης ενός ιού.

104 SSL

105 •Πρόκειται για ένα πρωτόκολλο το οποίο παρέχει ένα ασφαλές κανάλι επικοινωνίας μεταξύ ενός πελάτη και ενός διακομιστή για την ανταλλαγή πληροφοριών μέσω Internet. •Η έκδοση που χρησιμοποιείται ευρέως είναι η 3. Το Transport Layer Security πρωτόκολλο αποτελεί τη συνέχεια του Secure Sockets Layer (SSL) πρωτοκόλλου αλλά δεν είναι ευρέως διαδεδομένο λόγω της ασυμβατότητας του με το SSL •Χρησιμοποιεί κρυπτογραφία δημοσίου κλειδιού και παρέχει –Εμπιστευτικότητα –Ακεραιότητα –Αυθεντικοποίηση διακομιστή, και –Προαιρετικά, αυθεντικοποίηση πελάτη. •Το βασικό του πλεονέκτημα είναι ότι είναι ανεξάρτητο από τα πρωτόκολλα του επιπέδου εφαρμογής. •Μια ιστοσελίδα μπορεί να έχει δημόσια και προστατευμένα τμήματα. Όταν κάποιος χρήστης/πελάτης επισκέπτεται μια τέτοια ιστοσελίδα και θέλει να έχει πρόσβαση στα προστατευμένα/ασφαλή τμήματα της ιστοσελίδας ο διακομιστής θα ξεκινήσει τη διαδικασία χρήσης του SSL για να προστατεύσει αυτά τα τμήματα της προστατευμένης ιστοσελίδας.

106 SSL •Το SSL διατηρεί το κανάλι επικοινωνίας ανοιχτό μέχρι μια από τις δύο οντότητες να αιτηθεί τερματισμό της επικοινωνίας. Αυτό που γίνεται συνήθως είναι ο πελάτης να επισκεφτεί κάποια άλλη ιστοσελίδα ή να κλείσει το παράθυρο του browser. Σε μια τέτοια περίπτωση η σύνοδος τερματίζεται. •Το SSL απαιτεί τόσο ο server όσο και ο browser του πελάτη να το υποστηρίζουν. •Παρέχει ασφάλεια για την επικοινωνία αλλά δε προστατεύει τα δεδομένα από τη στιγμή που θα ληφθούν και μετά. •Ο χρήστης μπορεί να επαληθεύσει μια προστατευμένη από το SSL επικοινωνία εξετάζοντας το URL το οποίο θα πρέπει να ξεκινά με την ακολουθία https:// αντί του Ένας άλλος τρόπος είναι από την ύπαρξη κλειδαριάς ή ενός κλειδιού στον browser τα οποία υποδηλώνουν την προστασία των δεδομένων. •Αποτελείται από δύο υποπρωτόκολλα: –Πρωτόκολλο χειραψίας (Handshake Protocol) –Πρωτόκολλο εγγραφής (Record Protocol)

107 Πρωτόκολλο Χειραψίας –Πρωτόκολλο χειραψίας: Πρόκειται για το πρωτόκολλο εγκαθίδρυσης της επικοινωνίας που επιτρέπει τις δύο οντότητες (πελάτη και εξυπηρετητή) να αυθεντικοποιήσουν η μία την άλλη και να διαπραγματευτούν έναν αλγόριθμο κρυπτογράφησης καθώς και κλειδιά κρυπτογράφησης πριν το πρωτόκολλο εφαρμογής να αρχίσει να ανταλλάσει δεδομένα. Έχει τρεις βασικές ιδιότητες: •(Προαιρετικά αν και τυπικά απαιτείται για τουλάχιστον μια από τις δύο οντότητες): Η πιστοποίηση της ταυτότητας μιας οντότητας μπορεί να γίνει με τη χρήση κρυπτογραφίας δημοσίου κλειδιού. •Η διαπραγμάτευση ενός κοινού μυστικού είναι ασφαλής: το κοινό μυστικό δεν είναι διαθέσιμο σε επιτιθέμενους. •Η διαπραγμάτευση είναι αξιόπιστη: κανένας επιτιθέμενος δε μπορεί να τροποποιήσει την επικοινωνία της διαπραγμάτευσης χωρίς αυτή να γίνει αντιληπτή από τις δύο οντότητες.

108 Πρωτόκολλο Χειραψίας •Περιλαμβάνει τα ακόλουθα βήματα: –Ανταλλαγή ειδικών μηνυμάτων hello τα οποία χρησιμοποιούνται από τις δύο οντότητες για •να συμφωνήσουν στους αλγορίθμους που θα χρησιμοποιήσουν, και για •να ανταλλάξουν τυχαίους αριθμούς. –Ανταλλαγή πιστοποιητικών που θα επιτρέψουν στον πελάτη και τον διακομιστή να αυθεντικοποιηθούν. –Να δημιουργήσουν ένα κύριο κλειδί από ένα προκαταρκτικό κλειδί και τους τυχαίους αριθμούς. –Παρέχουν παραμέτρους ασφαλείας στο πρωτόκολλο εγγραφής. –Ο πελάτης και ο διακομιστής επαληθεύουν ότι η άλλη οντότητα έχει υπολογίσει τις ίδιες παραμέτρους ασφαλείας και ότι δεν υπήρξε κάποια παρέμβαση από τρίτη οντότητα.

109 Πρωτόκολλο Χειραψίας Client Server ClientHello >ServerHello Certificate* ServerKeyExchange* CertificateRequest* < ServerHelloDone Certificate* ClientKeyExchange CertificateVerify* [ChangeCipherSpec] Finished > [ChangeCipherSpec] < Finished Application Data Application Data Tα μηνύματα που έχουν αστερίσκο είναι προαιρετικά.

110 Πρωτόκολλο Χειραψίας •Το πρωτόκολλο ξεκινά με μια αίτηση του πελάτη για την εγκαθίδρυση μιας σύνδεσης (ClientHello). Η αίτηση περιέχει: –Τον αριθμό της έκδοσης SSL που υποστηρίζει ο χρήστης –Τις προτιμήσεις που έχει ο χρήστης όσον αφορά τους αλγορίθμους κρυπτογράφησης που πρόκειται να χρησιμοποιηθούν. Οι προτιμήσεις αυτές καθορίζονται κυρίως από τους αλγορίθμους που υποστηρίζει ο χρήστης. –Έναν τυχαίο αριθμό R A. •Ο διακομιστής απαντά με ένα μήνυμα (ServerHello) το οποίο περιέχει: –Τον αριθμό της έκδοσης SSL που υποστηρίζει ο διακομιστής. –Τον αλγόριθμο τον οποίο επέλεξε από ο διακομιστής από τους αλγορίθμους τους οποίους ήταν διατεθειμένος να χρησιμοποιήσει ο χρήστης. –Έναν τυχαίο αριθμό R Β.

111 Πρωτόκολλο Χειραψίας •Ο διακομιστής στέλνει επίσης: –Με το μήνυμα Certificate, το πιστοποιητικό δημοσίου κλειδιού του το οποίο θα πρέπει να είναι υπογεγραμμένο με ένα ιδιωτικό κλειδί του οποίου το αντίστοιχο δημόσιο είναι εγκατεστημένο στον browser του χρήστη. Εάν το πιστοποιητικό δεν είναι απευθείας υπογεγραμμένο από ένα τέτοιο ιδιωτικό κλειδί τότε θα πρέπει να σταλεί όλη η αλυσίδα πιστοποιητικών που θα επιτρέψει την επαλήθευση του πιστοποιητικού. –Προαιρετικά, με το ServerKeyExchange, κάποιες παραμέτρους που τυχόν να απαιτούνται από τους επιλεγμένους αλγορίθμους κρυπτογράφησης. –Προαιρετικά, με το CertificateRequest, μπορεί να στείλει μια αίτηση για το δημόσιο κλειδί του πελάτη.

112 Πρωτόκολλο Χειραψίας •Ο πελάτης όταν θα λάβει αυτά τα μηνύματα θα κάνει τα ακόλουθα: –Στέλνει το πιστοποιητικό του αν έχει και αν του έχει ζητηθεί. –Δημιουργεί ένα προκαταρτικό κλειδί το οποίο και στέλνει στον διακομιστή κρυπτογραφημένο με το δημόσιο κλειδί του διακομιστή (με το μήνυμα ClientKeyExchange). –Κατόπιν ο πελάτης ειδοποιεί το διακομιστή ότι μπορούν πλέον να δημιουργήσουν το κοινό κλειδί συνόδου και επομένως τα επόμενα μηνύματα που θα στείλει ο πελάτης θα είναι κρυπτογραφημένα με το νέο κλειδί (με το μήνυμα ChangeCipherSpec). –Επίσης ο πελάτης ενημερώνει το διακομιστή ότι έχει τελειώσει με το πρωτόκολλο της χειραψίας (Finished). •Ο διακομιστής και αυτός με τη σειρά του ειδοποιεί τον πελάτη ότι: –Θα αρχίσει να χρησιμοποιεί το νέο κλειδί (ChangeCipherSpec) και ότι –Έχει τελειώσει και αυτός με το πρωτόκολλο χειραψίας (Finished).

113 Πρωτόκολλο Χειραψίας •Για τη δημιουργία του κοινού κύριου κλειδιού συνόδου (master key) ο διακομιστής και ο πελάτης χρησιμοποιούν το προκαταρκτικό κλειδί που δημιουργεί ο πελάτης σε συνδυασμό με τους τυχαίους αριθμούς R A και R Β. •To SSL υποστηρίζει πολλούς αλγορίθμους με τον ποιο ισχυρό από αυτούς τον 3-DES με τριπλό κλειδί για την κρυπτογράφηση και SHA-1 για συνάρτηση κατακερματισμού. Αυτός ο συνδυασμός όμως, λόγω της ταχύτητας του, χρησιμοποιείται μόνο σε συγκεκριμένες συναλλαγές όπου υπάρχουν μεγάλες απαιτήσεις, όπως είναι οι τραπεζικές. •Άλλοι αλγόριθμοι που χρησιμοποιούνται είναι ο RC4 για κρυπτογράφηση και ο MD5 για κατακερματισμό. •Ο RC4 μπορεί να είναι πιο γρήγορος αλλά έχει αποδειχτεί ότι δεν είναι και αρκετά ασφαλής. Για αυτό το λόγο, εάν ο browser δίνει τη δυνατότητα της επιλογής του αλγορίθμου θα πρέπει να επιλέγεται ο 3-DES με SHA-1.

114 Πρωτόκολλο Εγγραφής •Πρωτόκολλο εγγραφής (Record Protocol): Χρησιμοποιείται κυρίως για την ενθυλάκωση (encapsulation) πρωτοκόλλων ανώτερων επιπέδων. Βρίσκεται πάνω από κάποιο αξιόπιστο πρωτόκολλο μεταφοράς όπως είναι το TCP και έχει δύο βασικές ιδιότητες: –(Προαιρετικά) Χρησιμοποιεί συμμετρική κρυπτογραφία για την κρυπτογράφηση των δεδομένων με σκοπό να παρέχει εμπιστευτικότητα. Τα κλειδιά είναι μοναδικά για κάθε σύνδεση και βασίζονται σε κάποια κοινά μυστικά δεδομένα τα οποία διαπραγματεύονται οι δύο οντότητες χρησιμοποιώντας κάποιο άλλο πρωτόκολλο όπως είναι το πρωτόκολλο χειραψίας. –Παρέχει ακεραιότητα δεδομένων με τη χρήση ενός κώδικα αυθεντικοποίησης μηνύματος (MAC). Τυπικά μπορεί να χρησιμοποιηθεί χωρίς το MAC αλλά αυτό συμβαίνει σπάνια.

115 Πρωτόκολλο Εγγραφής •Πρόκειται για ένα πολυεπίπεδο πρωτόκολλο. Σε κάθε ένα από αυτά τα επίπεδα του πρωτοκόλλου προστίθενται και κάποιες πληροφορίες όπως είναι ο κώδικας αυθεντικοποίησης, το μήκος των δεδομένων κ.λ.π. –Τα μηνύματα αρχικά τεμαχίζονται σε τμήματα μεγέθους μέχρι 16KB το καθένα. –Εάν χρησιμοποιείται συμπίεση κάθε τμήμα συμπιέζεται χωριστά. –Ένα μυστικό κλειδί που δημιουργείται από το προκαταρκτικό και τους δύο τυχαίους αριθμούς συνενώνεται με το συμπιεσμένο κείμενο και το αποτέλεσμα κατακερματίζεται χρησιμοποιώντας τη συνάρτηση κατακερματισμού. Το αποτέλεσμα της συνάρτησης αποτελεί τον κωδικό αυθεντικοποίησης μηνύματος (MAC). –Το συμπιεσμένο τμήμα μαζί με τον κωδικό MAC κρυπτογραφούνται χρησιμοποιώντας τον αλγόριθμο κρυπτογράφησης που έχει επιλεχθεί και ένα κλειδί το οποίο δημιουργείται και πάλι από το προκαταρκτικό κλειδί και τους δύο τυχαίους αριθμούς. –Τέλος, προστίθεται μια επικεφαλίδα και το τμήμα αυτό μεταδίδεται με τη χρήση του TCP πρωτοκόλλου.

116 Firewalls

117 •Τα firewalls (τοίχοι πυρασφάλειας ή πυρότοιχοι ή αναχώματα ασφαλείας ή φράγματα ασφαλείας) είναι ένα σύστημα το οποίο παρεμβάλλεται μεταξύ του ιδιωτικού δικτύου και του δημοσίου δικτύου (αλλά και μεταξύ τμημάτων του ιδιωτικού δικτύου) για να ελέγχει την κίνηση των δεδομένων μεταξύ των δύο δικτύων. Πιό συγκεκριμένα, τα firewalls μπορούν να: –προστατεύσουν το ιδιωτικό δίκτυο από επιθέσεις, –να καταστήσουν μη διαθέσιμες τις πληροφορίες για την οργάνωση του ιδιωτικού δικτύου, –να παρέχουν ένα μοναδικό σημείο σύνδεσης του ιδιωτικού δικτύου με το δημόσιο και αντιστρόφως και επομένως να κάνουν ευκολότερη τη διαχείριση ασφάλειας του ιδιωτικού δικτύου, –να δίνει δυνατότητα πρόσβασης στο ιδιωτικό δίκτυο μόνο σε εξουσιοδοτημένους χρήστες ή/και μόνο σε συγκεκριμένες εφαρμογές, –να ελέγχει την κίνηση των πληροφοριών από το ιδιωτικό δίκτυο στο δημόσιο με σκοπό να αποτρέψει την αποκάλυψη εμπιστευτικών πληροφοριών, –να ελέγχει την εισροή δεδομένων που έχουν σκοπό να βλάψουν το ιδιωτικό δίκτυο (όπως κακόβουλο λογισμικό), –να χρησιμοποιηθεί για τη δημιουργία εικονικών ιδιωτικών δικτύων.

118 Firewalls •Τα firewalls υποστηρίζουν και υλοποιούν την πολιτική ασφάλειας του οργανισμού που τα χρησιμοποιεί. •Πολιτική χρήσης ενός firewall: Τυπικά υπάρχουν δύο τρόποι χρήσης ενός firewall: –Να επιτρέπει όλες τις επικοινωνίες, την εκτέλεση όλων των διεργασιών και τη διέλευση όλων των πληροφοριών εκτός και αν απαγορεύονται ρητά. –Να απαγορεύει όλες τις επικοινωνίες, την εκτέλεση όλων των διεργασιών και τη διέλευση όλων των πληροφοριών εκτός και αν επιτρέπονται ρητά. •Ο πρώτος τρόπος χρήσης γεννά και τους περισσότερους κινδύνους καθώς οι πιθανότητες της μη εφαρμογής της ρητής απαγόρευσης μιας ανεπιθύμητης λειτουργίας είναι μεγάλες. •Ο δεύτερος τρόπος είναι πιο ασφαλής και προτιμάται αφού γίνεται καλύτερος έλεγχος των επιτρεπόμενων λειτουργιών. •Η απαγόρευση μιας επιθυμητής λειτουργίας ανιχνεύεται πολύ πιο εύκολα από τη μη απαγόρευση μιας μη επιθυμητής λειτουργίας.

119 Firewalls •Ένα firewall είναι στην ουσία ένας τύπος πύλης η οποία μπορεί να είναι ένας δρομολογητής, ένας εξυπηρετητής, ένας εξυπηρετητής αυθεντικοποίησης ή μια συσκευή υλικού ειδικά σχεδιασμένη για αυτό το λόγο. •Παρακολουθεί τα πακέτα που εισέρχονται και εξέρχονται από το δίκτυο που προστατεύει και φιλτράρει αυτά που δεν ικανοποιούν τις απαιτήσεις της πολιτικής ασφαλείας του δικτύου. •Βάσει αυτής της πολιτικής το firewall μπορεί να απορρίψει, να επαναδημιουργήσει ή να δρομολογήσει προς άλλη κατεύθυνση τα πακέτα που λαμβάνει. •Τα πακέτα φιλτράρονται βάσει της διεύθυνσης και θύρας πηγής ή προορισμού, βάσει της υπηρεσίας, τύπου πακέτου, τύπο πρωτοκόλλου, πληροφορίες στην επικεφαλίδα.

120 Firewalls •Τα firewalls επίσης χρησιμοποιούνται για τη δημιουργία αποστρατικοποιημένων ζωνών (demilitarized zone - DMZ) όπου ένα τμήμα του δικτύου βρίσκεται μεταξύ του προστατευόμενου και του μη προστατευόμενου δικτύου. •Για τη δημιουργία μιας τέτοιας ζώνης τυπικά χρησιμοποιούνται δύο firewalls. Η DMZ τυπικά περιλαμβάνει εξυπηρετητές Web, mail, και DNS στους οποίους πρέπει να δοθεί ιδιαίτερη προσοχή όσον αφορά την προστασία τους γιατί αποτελούν τα πρώτα σημεία επίθεσης.

121 Firewalls (Τύποι) •Φίλτρα πακέτων (Packet filtering): –Πρόκειται για μια μέθοδο που δουλεύει στο επίπεδο δικτύου και ελέγχει ποιά δεδομένα μπορούν να περάσουν από και προς το δίκτυο. –Χρησιμοποιούν λίστες ελέγχου πρόσβασης (Access Control Lists ή ACLs) οι οποίες είναι απλά λίστες από κανόνες που θα πρέπει η συσκευή που χρησιμοποιεί αυτή τη τεχνική να εφαρμόσει στα πακέτα που παραλαμβάνει. –Οι κανόνες μπορεί να υπαγορεύουν ποιά πακέτα επιτρέπεται να περάσουν και σε ποιά θα πρέπει να απαγορευτεί η διέλευση. –Παράδειγμα: •Ένας κανόνας μπορεί να λέει ότι όλα τα πακέτα που έρχονται από το δίκτυο πρέπει να απορριφθούν. •Άλλος κανόνας μπορεί να λέει ότι στα πακέτα που χρησιμοποιούν την υπηρεσία Telnet δε μπορεί να επιτραπεί η είσοδος. •Όλα τα πακέτα που έχουν σαν θύρα προορισμού τη θύρα 80 μπορούν να περάσουν αλλά να δρομολογηθούν προς τον εξυπηρετητή Web.

122 Firewalls (Τύποι) •Φίλτρα πακέτων: –Αφού η τεχνική αυτή δουλεύει στο επίπεδο δικτύου αυτό σημαίνει ότι δε μπορεί να δει τα δεδομένα που μεταφέρει το πακέτο. Έτσι, μπορεί να πάρει αποφάσεις βασισμένο μόνο στις πληροφορίες τις επικεφαλίδας. –Λόγω της απλότητας του μπορεί να υλοποιηθεί και από άλλες δικτυακές συσκευές όπως είναι ένας δρομολογητής. –Πλεονεκτήματα: •Απλότητα •Είναι επεκτάσιμα •Έχει καλή απόδοση •Είναι ανεξάρτητο από τις εφαρμογές –Μειονεκτήματα •Δεν ελέγχει τα περιεχόμενα του πακέτου: εξετάζει μόνο την επικεφαλίδα •Παρέχει χαμηλή ασφάλεια σε σχέση με άλλες επιλογές •Δε παρακολουθεί την κατάσταση της σύνδεσης •Χρησιμοποιούνταν σε firewalls πρώτης γενιάς.

123 Firewalls (Τύποι) •Φίλτρα πακέτων βάσει κατάστασης (Stateful packet filtering): –Σύμφωνα με αυτή τη τεχνική το firewall εκτός από το να φιλτράρει τα πακέτα “θυμάται” και παρακολουθεί ποιά πακέτα πήγαν που μέχρι το κλείσιμο της συγκεκριμένης σύνδεσης. –Παράδειγμα: •Ένας κανόνας μπορεί να υπαγορεύει ότι όλα τα UDP πακέτα που προσπαθούν να κάνουν χρήση της θύρας 25 θα πρέπει να απορριφθούν εκτός και αν πρόκειται για απάντηση σε μια εξερχόμενη αίτηση. •Όταν κάποιος χρήστης Α εντός του ιδιωτικού δικτύου στέλνει μια αίτηση σε έναν υπολογιστή σε άλλο δίκτυο αυτή η αίτηση θα καταγραφεί σε έναν πίνακα κατάστασης του firewall. •Όταν θα ληφθεί ένα πακέτο το οποίο αποτελεί μια απάντηση για τον Α το firewall θα κοιτάξει στον πίνακα κατάστασης να δει αν ο Α περιμένει μια απάντηση. Αν ναι, και αν βάσει των ACLs που διατηρεί στον πίνακα του επιτρέπεται η συγκεκριμένη λειτουργία θα επιτρέψει τη διέλευση του πακέτου. Ειδάλλως, θα απορριφθεί.

124 Firewalls (Τύποι) •Φίλτρα πακέτων βάσει κατάστασης: –Χαρακτηριστικά της επιθεώρησης κατάστασης: •Το firewall διατηρεί ένα πίνακα κατάστασης ο οποίος παρακολουθεί όλα τα κανάλια επικοινωνίας. •Είναι επεκτάσιμο και μη αντιληπτό από τους χρήστες. •Παρέχει ένα υψηλό επίπεδο ασφαλείας και δεν έχει τα προβλήματα απόδοσης των πληρεξούσιων φραγμάτων (proxy firewalls). •Παρέχει δεδομένα για την παρακολούθηση επικοινωνιών χωρίς σύνδεση όπως είναι το UDP και το RPC. •Η κατάσταση και το περιεχόμενο των δεδομένων μέσα στα πακέτα αποθηκεύονται και ενημερώνονται συνεχώς. –Το πρόβλημα που παρουσιάζουν είναι ότι μπορεί να γίνουν αντικείμενο επίθεσης άρνησης υπηρεσίας όπου ο επιτιθέμενος προσπαθεί να γεμίσει τον πίνακα καταστάσεων με σκοπό να μη μπορεί το firewall να εξυπηρετήσει άλλες αιτήσεις ή να προκαλέσει επανεκκίνηση με σκοπό το firewall να χάσει όλες τις εγγραφές του πίνακα.

125 Firewalls (Τύποι) •Πληρεξούσια φράγματα (proxy firewalls): –Λειτουργούν σαν ένας μεσάζοντας μεταξύ των δικτύων που διαχωρίζονται από αυτό το firewall. –Δέχονται μηνύματα τα οποία είτε εισέρχονται είτε εξέρχονται από το δίκτυο, τα εξετάζουν για την ύπαρξη κακόβουλων δεδομένων, και όταν αποφασίσουν ότι όλα είναι εντάξει προωθούν τα δεδομένα στον απόλυτο προορισμό τους. –Ένα πληρεξούσιο φράγμα βρίσκεται μεταξύ ενός έμπιστου και ενός μη έμπιστου δικτύου και κάνει τη σύνδεση προς κάθε κατεύθυνση εκ μέρους της πηγής. Έτσι: •Αν ένας χρήστης του Internet θέλει να στείλει κάποια δεδομένα στο ιδιωτικό, προστατευμένο, δίκτυο το πληρεξούσιο φράγμα θα πάρει τα δεδομένα και θα τα εξετάσει για να δει αν περιέχουν κάποια κακόβουλα δεδομένα. •Τα δεδομένα δε πηγαίνουν αυτόματα στον απόλυτο προορισμό αλλά το πληρεξούσιο φράγμα προσποιείται ότι πρόκειται για τον απόλυτο προορισμό και δέχεται αυτά τα δεδομένα εκ μέρους του προορισμού τον οποίο προστατεύει.

126 Firewalls (Τύποι) •Πληρεξούσια φράγματα (proxy firewalls): •Εάν το πληρεξούσιο φράγμα αποφασίσει ότι τα δεδομένα είναι ασφαλή για να τα δεχτεί ο απόλυτος προορισμός τα προωθεί σε αυτόν. •Όταν ο απόλυτος προορισμός απαντήσει σε αυτά τα δεδομένα αυτά θα σταλούν πίσω στον πληρεξούσιο εξυπηρετητή ο οποίος θα βάλει τα δεδομένα αυτά σε ένα νέο πακέτο το οποίο θα περιέχει τη δική του διεύθυνση για να αποκρύψει τον αληθινό αποστολέα του πακέτου. –Με αυτή τη διαδικασία ο πληρεξούσιος εξυπηρετητής “σπάει” το κανάλι επικοινωνίας μεταξύ του υπολογιστή που βρίσκεται στο μη έμπιστο δίκτυο και αυτού που βρίσκεται μέσα στο προστατευμένο δίκτυο. Έτσι δεν υπάρχει άμεση επικοινωνία μεταξύ των δύο υπολογιστών. –Εάν ο επιτιθέμενος επιχειρήσει να σαρώσει ή να ερευνήσει το προστατευμένο δίκτυο θα μπορέσει μόνο να αποκτήσει πληροφορίες που θα του δώσει ο πληρεξούσιος εξυπηρετητής. Τα επιστρεφόμενα πακέτα θα έχουν τη διεύθυνση του φράγματος ασφαλείας και οι πληροφορίες που θα δοθούν θα είναι ελάχιστες κρύβοντας έτσι τις λεπτομέρειες του εσωτερικού δικτύου.

127 Firewalls (Τύποι) •Πληρεξούσια φράγματα (proxy firewalls): –Πλεονεκτήματα: •Μπορούν να εξετάσουν τις πληροφορίες που βρίσκονται μέσα σε ένα πακέτο μέχρι και το επίπεδο εφαρμογής (πύλες εφαρμογής). •Παρέχουν περισσότερη ασφάλεια από τα φίλτρα πακέτων. •Γνωρίζουν για όλα τα πρωτόκολλα, τις υπηρεσίες και τις εντολές που χρησιμοποιούνται. –Μειονεκτήματα: •Υπάρχει περιορισμός στις εφαρμογές που μπορεί να υποστηρίξει. •Μειώνει την απόδοση της κίνησης. •Δεν είναι εύκολα επεκτάσιμο (στην περίπτωση χρήσης και άλλων υπηρεσιών) •Σπάει το μοντέλο πελάτη/εξυπηρετητή (client/server), το οποίο είναι μεν καλό από την πλευρά της ασφάλειας αλλά δεν είναι καλό από την πλευρά της λειτουργικότητας.

128 Firewalls (Τύποι) •Πληρεξούσια φράγματα (proxy firewalls). Χωρίζονται σε δύο κατηγορίες: –Πύλη επιπέδου εφαρμογών: Εξετάζουν όλο το πακέτο και παίρνουν αποφάσεις βάσει του περιεχομένου του πακέτου. Απαραίτητη προϋπόθεση για τη λειτουργία τους είναι η κατανόηση όλων των πρωτοκόλλων, υπηρεσιών και εντολών που χρησιμοποιούνται στο προστατευμένο δίκτυο. –Μια πύλη επιπέδου εφαρμογών μπορεί να διαχωρίσει μεταξύ μιας εντολής FTP GET και μιας FTP PUT και επομένως μπορεί να πάρει αποφάσεις σε αυτό το επίπεδο της λεπτομέρειας σε αντίθεση με τα φίλτρα πακέτων που μπορούν μόνο να διαχωρίσουν μια FTP αίτηση από μια άλλη και όχι εντολές του FTP πρωτοκόλλου. –Μια πύλη επιπέδου εφαρμογών δουλεύει για μια υπηρεσία ή ένα πρωτόκολλο. Επομένως, πρέπει να υπάρχει μια πύλη επιπέδου εφαρμογών για κάθε υπηρεσία που μπορεί να παρέχει ένας υπολογιστής (FTP, SMTP, Telnet)

129 Firewalls (Τύποι) •Πληρεξούσια φράγματα (proxy firewalls). Χωρίζονται σε δύο κατηγορίες: –Πύλη επιπέδου κυκλώματος: Δημιουργεί ένα κύκλωμα μεταξύ του υπολογιστή πελάτη και του εξυπηρετητή. Δεν καταλαβαίνει ούτε νοιάζεται για ζητήματα υψηλότερων επιπέδων με τα οποία ασχολείται μια πύλη επιπέδου εφαρμογών. Γνωρίζει την πηγή και τον προορισμό και παίρνει αποφάσεις σύμφωνα με αυτές τις πληροφορίες. •Η υλοποίηση μιας πύλης επιπέδου εφαρμογών μπορεί να είναι πιο πολύπλοκη από όσο δείχνει γιατί: –Το πληρεξούσιο φράγμα πρέπει να καταλαβαίνει πως δουλεύουν όλα τα πρωτόκολλα, ποιές εντολές είναι αποδεκτές και πρέπει να γνωρίζει ποιές εφαρμογές χρησιμοποιούν αυτά τα πρωτόκολλα και τις υπηρεσίες. –Αυτή η διεργασία δεν είναι εύκολη ειδικά όταν γίνεται κατά τη διάρκεια της μετάδοσης των δεδομένων. Εάν η πύλη δεν καταλαβαίνει ένα συγκεκριμένο πρωτόκολλο ή υπηρεσία δε μπορεί να προστατεύσει αυτού του είδους την επικοινωνία.

130 Firewalls (Τύποι) •Ένα πλεονέκτημα των πυλών επιπέδου κυκλώματος είναι ότι μπορεί να χειριστεί ένα μεγαλύτερο εύρος πρωτοκόλλων και υπηρεσιών από ότι μπορεί να χειριστεί μια πύλη επιπέδου εφαρμογών. •Το μειονέκτημα όμως είναι ότι η πύλη επιπέδου κυκλώματος δε μπορεί να παρέχει το βαθμό του ελέγχου που μπορεί να δώσει η πύλη επιπέδου εφαρμογών. •Μια πύλη επιπέδου κυκλώματος είναι παρόμοια με τα φίλτρα πακέτων στο ότι γνωρίζει τη διεύθυνση της πηγής και του προορισμού και παίρνει αποφάσεις βάσει των δεδομένων της επικεφαλίδας και όχι των δεδομένων που μεταφέρει το πακέτο. Δε γνωρίζει αν τα περιεχόμενα του πακέτου είναι επιβλαβή.

131 Firewalls (Τύποι) •Χαρακτηριστικά των πληρεξούσιων φραγμάτων: –Επιπέδου εφαρμογής: •Μεταφέρει ένα αντίγραφο από κάθε αποδεκτό πακέτο από το ένα δίκτυο στο άλλο. •Απαιτεί διαφορετικό πληρεξούσιο για κάθε επιτρεπόμενη υπηρεσία. •Αποκρύπτει τις πληροφορίες του δικτύου από πιθανούς επιτιθέμενους. •Αποκρύπτει πληροφορίες και διευθύνσεις των υπολογιστών που βρίσκονται στο προστατευόμενο δίκτυο. •Παρέχει τις δυνατότητες περισσότερο διακριτού ελέγχου από τις πύλες επιπέδου κυκλώματος. •Μειώνει την απόδοση του δικτύου.

132 Firewalls (Τύποι) •Χαρακτηριστικά των πληρεξούσιων φραγμάτων: –Επιπέδου κυκλώματος: •Παρέχει ένα κύκλωμα μεταξύ του αποστολέα και του παραλήπτη. •Δεν απαιτεί ένα πληρεξούσιο για κάθε υπηρεσία. •Δε δίνει τη δυνατότητα του διακριτού ελέγχου που παρέχει η πύλη επιπέδου εφαρμογών. •Παρέχει ασφάλεια σε ένα μεγαλύτερο εύρος πρωτοκόλλων.

133 Firewalls (Τύποι) •SOCKS: –Πρόκειται για ένα πληρεξούσιο φράγμα επιπέδου κυκλώματος το οποίο παρέχει ένα ασφαλές κανάλι μεταξύ δύο υπολογιστών που τρέχουν το TCP/IP. –Όταν ένας σταθμός που χρησιμοποιεί SOCKS στείλει μια αίτηση για πρόσβαση σε υπολογιστή στο Internet, η αίτηση αυτή θα περάσει από από το SOCKS πληρεξούσιο εξυπηρετητή ο οποίος •θα εξετάσει το πακέτο για την ύπαρξη κακόβουλου λογισμικού και •θα ελέγξει τήν πολιτική ασφαλείας για να διαπιστώσει εάν επιτρέπεται αυτή η σύνδεση. –Εάν το πακέτο είναι αποδεκτό και η σύνδεση αυτή επιτρέπεται ο εξυπηρετητής SOCKS θα στείλει το πακέτο στον προορισμό του. –Η ίδια διαδικασία ακολουθείται και κατά την επιστροφή δεδομένων.

134 Firewalls (Τύποι) •SOCKS: –Ο εξυπηρετητής SOCKS μπορεί να παρακολουθεί, να φιλτράρει, να ελέγχει, και να καταγράφει τη ροή των δεδομένων από και προς το προστατευόμενο δίκτυο. –Λόγω του ότι είναι ένας εξυπηρετητής επιπέδου κυκλώματος δε μπορεί να παρέχει έλεγχο βάσει των λεπτομερειών του πρωτοκόλλου. •Χαρακτηριστικά: –Εξυπηρετητής επιπέδου κυκλώματος. –Απαιτεί τη μετατροπή των προγραμμάτων-πελατών με το λογισμικό SOCKS για πελάτες. –Χρησιμοποιείται κυρίως για εξερχόμενη κίνηση και για εικονικά ιδιωτικά δίκτυα (virtual private networks). –Μπορεί να σπαταλά τους πόρους του συστήματος. –Παρέχει αυθεντικοποίηση και κρυπτογράφηση παρόμοια με άλλα πρωτόκολλα εικονικών ιδιωτικών δικτύων, αλλά δεν θεωρείται παραδοσιακό VPN πρωτόκολλο.

135 Αρχιτεκτονικές Firewalls •Διπλοσυνδεδεμένα φράγματα ασφαλείας (Dual- Homed Firewalls): –Αποτελούν συνήθως ένα σημαντικό μέρος των proxy firewalls αλλά και τα proxy firewalls αποτελούν ένα σημαντικό μέρος αυτών και επομένως χρησιμοποιούνται κυρίως με λογισμικό εξουσιοδότησης. –Πρόκειται για έναν υπολογιστή με διαφορετικές κάρτες δικτύου συνδεδεμένες σε κάθε δίκτυο. –Χρησιμοποιείται για να διαιρέσει ένα εσωτερικό έμπιστο δίκτυο από ένα εξωτερικό μη έμπιστο. –Πρέπει να έχει απενεργοποιημένη τη λειτουργία της δρομολόγησης και της προώθησης πακέτων για να υπάρχει σωστός διαχωρισμός των δύο δικτύων.

136 Αρχιτεκτονικές Firewalls •Σταθμός-οχυρό (bastion host): –Αποτελεί το θεμέλιο πάνω στο οποίο θα λειτουργήσει το λογισμικό του firewall. –Πρόκειται για ένα σταθμό ο οποίος θα είναι προσβάσιμος από όλες τις οντότητες που θα προσπαθούν να εισέλθουν ή να εξέλθουν από το προστατευμένο δίκτυο. –Είναι πολύ εκτεθειμένος (και επομένως υψηλού κινδύνου) γιατί αποτελεί την πρώτη γραμμή στην ασφάλεια του δικτύου και η ύπαρξη της είναι γνωστή στο Internet. –Αυτό σημαίνει ότι: •πρέπει να έχει απόλυτη προστασία, •όλες οι μη απαραίτητες υπηρεσίες πρέπει να απενεργοποιηθούν, •να μην υπάρχουν τρωτά σημεία (vulnerabilities), •αχρησιμοποίητοι λογαριασμοί χρηστών πρέπει να απενεργοποιηθούν, •οι θύρες που δε χρειάζονται πρέπει να είναι κλειστές.

137 Αρχιτεκτονικές Firewalls •Σταθμός-οχυρό (bastion host): –Όλα αυτά τα μέτρα είναι απαραίτητα γιατί αν αυτό το σύστημα παραβιαστεί τότε το δίκτυο θα μείνει απροστάτευτο. –Μπορεί να υποστηρίξει φιλτράρισμα πακέτων, πληρεξούσια φράγματα, και υβριδικά φράγματα (συνδυασμός φίλτρων πακέτων και πυλών εφαρμογών).

138 Αρχιτεκτονικές Firewalls •Προστατευμένος υπολογιστής ή υπολογιστής διαλογής (screened host): –Πρόκειται συνήθως για ένα υπολογιστή οχυρό ο οποίος επικοινωνεί απευθείας με ένα συνοριακό δρομολογητή και το εσωτερικό δίκτυο. Αποτελεί τον ενδιάμεσο σταθμό μεταξύ του δρομολογητή και του εσωτερικού δικτύου. –Όλη η εισερχόμενη κίνηση φιλτράρετε πρώτα από το δρομολογητή χρησιμοποιώντας φιλτράρισμα πακέτων. –Η φιλτραρισμένη πλέον κίνηση προωθείται στον προστατευμένο υπολογιστή ο οποίος εφαρμόζει περισσότερους κανόνες διαλογής και απορρίπτει τα απαγορευμένα πακέτα. –Μετά και από αυτή τη διαλογή τα πακέτα προωθούνται στον απόλυτο προορισμό τους.

139 Αρχιτεκτονικές Firewalls •Προστατευμένος Υπολογιστής (screened host): –Ο προστατευμένος υπολογιστής είναι η μόνη συσκευή η οποία λαμβάνει πακέτα από το δρομολογητή. –Εάν ο υπολογιστής διαλογής (οχυρό) είναι μια πύλη εφαρμογής, τότε: •Ο δρομολογητής προστατεύει το δίκτυο στο επίπεδο δικτύου •Το οχυρό προστατεύει το δίκτυο στο επίπεδο εφαρμογής. –Αυτό παρέχει ένα υψηλότερο επίπεδο προστασίας. Ο επιτιθέμενος θα πρέπει να παραβιάσει δύο συστήματα για να μπορέσει να μπει στο εσωτερικό δίκτυο.

140 Αρχιτεκτονικές Firewalls •Προστατευμένο υποδίκτυο ή υποδίκτυο διαλογής (screened subnet): –Αυτή η αρχιτεκτονική προσθέτει ένα ακόμα επίπεδο ασφαλείας στην αρχιτεκτονική του προστατευμένου υπολογιστή (screened host). –Ο υπολογιστής οχυρό που φιλοξενεί το firewall βρίσκεται μεταξύ δύο δρομολογητών. –Ο εξωτερικός δρομολογητής, όπως και στο προστατευμένο υπολογιστή, φιλτράρει τα πακέτα και τα προωθεί στον υπολογιστή οχυρό. –Αντί όμως της απευθείας δρομολόγησης των πακέτων από τον υπολογιστή οχυρό στο εσωτερικό δίκτυο, ο υπολογιστής οχυρό δρομολογεί τα πακέτα στον εσωτερικό δρομολογητή ο οποίος επίσης φιλτράρει τα εισερχόμενα πακέτα.

141 Αρχιτεκτονικές Firewalls •Αυτές οι αρχιτεκτονικές είναι πολύ απλές και χρησιμοποιούνται σπάνια. Αποτελούν απλώς τη βάση δημιουργίας πιο πολύπλοκων αρχιτεκτονικών. •Η αρχιτεκτονική προστατευμένου οχυρού αποτελεί τη βάση της δημιουργίας αποστρατικοποιημένων ζωνών. •Η αποστρατικοποιημένη ζώνη λειτουργεί σαν ένα μικρό απομονωμένο δίκτυο μεταξύ του έμπιστου εσωτερικού δικτύου και του εξωτερικού μη έμπιστου. •Οι εσωτερικοί χρήστες συνήθως έχουν περιορισμένη πρόσβαση σε αυτό το δίκτυο (στους εξυπηρετητές αυτής της περιοχής). •Αυτή η ζώνη χρησιμοποιείται για την τοποθέτηση εξυπηρετητών Web, mail, DNS, και άλλων δημοσίων εξυπηρετητών. •Παρόλο που αυτή η αρχιτεκτονική παρέχει την υψηλότερη ασφάλεια, είναι η πιο πολύπλοκη από όλες ειδικά όσον αφορά τη διαχείριση της και υποστήριξη της.

142 Firewalls •Τα πρέπει των firewalls: –Το firewall θα πρέπει εξ’ορισμού να αρνείται εμμέσως την εξυπηρέτηση πακέτων για τα οποία δεν επιτρέπεται ρητά η εξυπηρέτηση τους. –Πακέτα τα οποία εισέρχονται στο δίκτυο και έχουν διεύθυνση πηγής από το εσωτερικό δίκτυο (IP spoofing) θα πρέπει να απορριφθούν. –Κατά τον ίδιο τρόπο, πακέτα που εξέρχονται και δεν έχουν διεύθυνση πηγής από το εσωτερικό δίκτυο θα πρέπει να απορριφθούν. –Τα firewalls θα πρέπει να επανενώνουν τεμαχισμένα πακέτα πριν να τα προωθήσουν στο προορισμό τους. Υπάρχουν πολλές επιθέσεις όπου οι hackers τροποποιούν τα πακέτα ώστε αυτά να φαίνονται σαν κάτι που δεν είναι. Όταν ένα τεμαχισμένο πακέτο εισέρχεται στο δίκτυο το firewall βλέπει μόνο ένα μέρος των δεδομένων. Εάν τα συνολικά δεδομένα τα οποία θα επανενωθούν στον απόλυτο προορισμό τους μεταφέρουν κακόβουλο λογισμικό αυτό δε θα είναι ανιχνεύσιμο από το firewall. Έτσι, το firewall θα πρέπει να αποφεύγει να παίρνει αποφάσεις βασισμένο μόνο σε μέρος των δεδομένων.

143 Firewalls •Τα πρέπει των firewalls: –Το πρόβλημα με την επανένωση των τεμαχισμένων πακέτων από το firewall είναι ότι δημιουργεί καθυστερήσεις και καταναλώνει πόρους του firewall. –To firewall μπορεί επίσης να αρνείται να εξυπηρετήσει πακέτα τα οποία έχουν πληροφορίες δρομολόγησης από την πηγή (όπου οι αποφάσεις δρομολόγησης του πακέτου παίρνονται από την πηγή και όχι από τους δρομολογητές). Ο λόγος είναι ο εξής: •Όταν ένας δρομολογητής λαμβάνει ένα πακέτο που έχει τις δικές του πληροφορίες δρομολόγησης, τότε ο δρομολογητής θεωρεί ότι το πακέτο αυτό γνωρίζει που πηγαίνει και επομένως το προωθεί χωρίς να το εξετάσει. •Αυτό μπορεί να έχει ως αποτέλεσμα να μην εφαρμοστούν όλα τα φίλτρα στο πακέτο ή αν ο διαχειριστής επιθυμεί τη δρομολόγηση των πακέτων μέσω ενός μονοπατιού το πακέτο να σταλεί από ένα μη επιτρεπτό μονοπάτι.

144 Firewalls •Μειονεκτήματα: –Η ασφάλεια συγκεντρώνεται σε ένα συγκεκριμένο σημείο σε αντίθεση με μια προσέγγιση κατανεμημένης ασφάλειας η οποία προστατεύει πολλά διαφορετικά τμήματα του δικτύου. –Αποτελούν ένα πιθανό σημείο μείωσης της ροής δεδομένων. –Μπορεί να περιορίσει τις υπηρεσίες που θα ήθελαν να χρησιμοποιήσουν οι χρήστες σε αυτές που μπορεί να υποστηρίξει. –Τα περισσότερα δε μπορούν να προστατεύσουν από ιούς οι οποίοι μεταδίδονται με κάποιο . –Παρέχουν ελάχιστη προστασία από τους επιτιθέμενους που βρίσκονται μέσα στο προστατευμένο δίκτυο.

145 Έλεγχος πρόσβασης

146 •Πρόκειται για τη διαδικασία που ελέγχει πως οι χρήστες και τα συστήματα επικοινωνούν και ανταλλάσσουν πληροφορίες με άλλους χρήστες και άλλα συστήματα. •Προστατεύουν τα συστήματα και τους πόρους από μη εξουσιοδοτημένη πρόσβαση και συνήθως προσδιορίζουν το επίπεδο της εξουσιοδότησης μετά την επιτυχή αυθεντικοποίηση της οντότητας (χρήστης, διεργασία) που αιτείται πρόσβαση σε ένα αντικείμενο. •Πρέπει να γίνει ο διαχωρισμός μεταξύ του υποκειμένου και του αντικειμένου: –Πρόσβαση (access) είναι η ροή της πληροφορίας μεταξύ ενός υποκειμένου και ενός αντικειμένου. –Υποκείμενο (subject) είναι μια ενεργή οντότητα η οποία αιτείται πρόσβαση σε ένα αντικείμενο ή τα δεδομένα του αντικειμένου. Μπορεί να είναι ένας χρήστης, ένα πρόγραμμα, ή μια διαδικασία που απαιτεί πρόσβαση για να ολοκληρώσει μια διεργασία. –Αντικείμενο (object) είναι μια παθητική οντότητα η οποία περιέχει πληροφορίες. Μπορεί να είναι ένας υπολογιστής, μια βάση δεδομένων, ένα αρχείο, ένα πρόγραμμα, ή ένα απλό πεδίο ενός πίνακα σε μια βάσδη δεδομένων.

147 Έλεγχος πρόσβασης •Μπορούμε να ορίσουμε δύο πράγματα όσον αφορά τον έλεγχο: –Τι επιτρέπεται να κάνει ένα υποκείμενο –Τι επιτρέπεται να γίνει με ένα αντικείμενο. •Τρόποι πρόσβασης: –Στην πιό απλή προσέγγιση της πρόσβασης υπάρχουν δύο βασικοί τρόποι σύμφωνα με τους οποίους ένα υποκείμενο μπορεί να έχει πρόσβαση σε ένα αντικείμενο: •Παρατηρώ (observe): κοιτάω τα περιεχόμενα ενός αντικειμένου •Αλλάζω (alter): τροποποιώ τα περιεχόμενα ενός αντικειμένου. –Οι λειτουργίες αυτών των τύπων μπορεί να διαφέρουν και ως προς το είδος του αντικειμένου: αν π.χ. το αντικείμενο είναι ένα αρχείο ή ένας κατάλογος –Άλλοι τρόποι πρόσβασης που συναντώνται σε λειτουργικά συστήματα είναι: •Ανάγνωση: Από ένα αρχείο η από ένα κατάλογο •Εγγραφή: Εγγραφή σε ένα αρχείο, ή δημιουργία ή μετονομασία ενός αρχείου σε ένα κατάλογο. •Εκτελώ (execute): εκτέλεση ενός προγράμματος ή αναζήτηση σε ένα κατάλογο •Διαγραφή (delete - windows): •Αλλαγή δικαιωμάτων (change ownership - windows):

148 Έλεγχος πρόσβασης (Μοντέλα) •Μοντέλα ελέγχου πρόσβασης: Ορίζουν με ποιό τρόπο τα υποκείμενα αποκτούν πρόσβαση στα αντικείμενα. Υπάρχουν τρια μοντέλα: –Διακριτικός έλεγχος πρόσβασης (discretionary access control DAC): •Εάν κάποιος χρήστης δημιουργήσει ένα αρχείο (ή γενικότερα ένα αντικείμενο), είναι ο ιδιοκτήτης αυτού του αρχείου. •Η ιδιοκτησία μπορεί να δοθεί και σε μια συγκεκριμένη οντότητα (όπως για παράδειγμα ο manager ενός τμήματος μιας επιχείρησης). •Ο ιδιοκτήτης του αντικειμένου μπορεί να ορίσει ποιός επιτρέπεται να έχει πρόσβαση σε αυτό το αντικείμενο και τι είδους πρόσβαση •Αποκαλείται διακριτική γιατί είναι στη διακριτικότητα του ιδιοκτήτη να δώσει δικαιώματα πρόσβασης στα υποκείμενα. •Η πιο συχνή υλοποίηση της DAC είναι με τη χρήση ACLs (Access Control Lists ή Λίστες Ελέγχου Πρόσβασης).

149 Έλεγχος πρόσβασης (Μοντέλα) –Υποχρεωτικός έλεγχος πρόσβασης (mandatory access control MAC): •Οι χρήστες και οι ιδιοκτήτες των δεδομένων δεν έχουν τόση ελυθερία στο να ορίσουν ποιός μπορεί να έχει πρόσβαση στα αρχεία τους. •Οι χρήστες μπορεί να ορίσουν ποιός μπορεί να έχει πρόσβαση αλλά το λειτουργικό σύστημα είναι αυτό που θα πάρει την τελική απόφαση και να υπερισχύσει έναντι των επιθυμιών του χρήστη. •Έτσι οι αποφάσεις παίρνονται σύμφωνα με μια πολιτική ασφαλείας που καλύπτει όλο το σύστημα. •Ο τύπος αυτός είναι πιό δομημένος και βασίζεται στη χρήση ενός συστήματος ετικετών ασφαλείας. Στους χρήστες δίνεται μια άδεια ή όριο ασφαλείας (security clearance) όπως είναι το secret, top secret, και confidential, και τα δεδομένα είναι ταξινομημένα (classified) όπως secret, top secret, και confidential. Η ταξινόμηση αποθηκεύεται στις ετικέτες ασφαλείας των αντικειμένων. •Η απόφαση για το αν θα δοθεί πρόσβαση εξαρτάται από το security clearance του υποκειμένου και την ταξινόμηση του αντικειμένου. •Χρησιμοποιείται σε στρατιωτικά συστήματα.

150 Έλεγχος πρόσβασης (Μοντέλα) –Έλεγχος πρόσβασης βασισμένος σε ρόλους (role based access control RBAC) ή Μη-διακριτικός έλεγχος πρόσβασης (Nondiscretionary access control): •Επιτρέπει την πρόσβαση σε πόρους βασισμένο στο ρόλο που έχει το υποκείμενο στο σύστημα. •Οι διαχειριστές του συστήματος αναθέτουν ένα ρόλο σε κάθε χρήστη και μετά δίνουν δικαιώματα πρόσβασης σε αυτό το ρόλο. –Οι ρόλοι είναι διαφορετικοί από τις ομάδες: Παρόλο που και τα δύο έχουν ως σκοπό να δώσουν σε ένα σύνολο από χρήστες συγκεκριμένα δικαιώματα, στις ομάδες ο κάθε χρήστης εκτός από τα δικαιώματα της ομάδας έχει και τα προσωπικά του δικαιώματα σε αντίθεση με τους ρόλους όπου έχει μόνο τα δικαιώματα του ρόλου που του έχει ανατεθεί. –Το RBAC αποτελεί ένα πολύ καλό σύστημα για εταιρίες όπου υπάρχει μεγάλη μετακίνηση εργαζομένων. Σε αυτή τη περίπτωση ο διαχειριστής χρειάζεται μόνο να δημιουργήσει κάποιους ρόλους και να προσθέτει ή να αφαιρεί εργαζομένους από τη λίστα καθώς αυτοί έρχονται ή φεύγουν.

151 Έλεγχος πρόσβασης (Τεχνικές) •Οι τεχνικές που χρησιμοποιούνται για να υποστηρίξουν ένα μοντέλο είναι οι ακόλουθες: –Μήτρα (ή πίνακας) ελέγχου πρόσβασης (access control matrix): •Είναι ένας πίνακας από υποκείμενα και αντικείμενα όπου η κάθε εγγραφή στον πίνακα δηλώνει τι ενέργεια μπορεί να κάνει το υποκείμενο σε αυτό το αντικείμενο. •Χρησιμοποιείται κυρίως από DAC μοντέλα. •Δύσκολα θα υλοποιούσε κάποιος μια μήτρα ελέγχου πρόσβασης. Υπάρχουν δύο εναλλακτικές λύσεις: –Τα δικαιώματα πρόσβασης μπορούν να κρατηθούν με τα υποκείμενα (στην περίπτωση αυτή μιλάμε για ικανότητες ή capabilities) –Τα δικαιώματα πρόσβασης μπορούν να κρατηθούν με τα αντικείμενα (στην περίπτωση αυτή μιλάμε για access control lists)

152 Έλεγχος πρόσβασης (Τεχνικές) •Ικανότητες (capabilities): –Kάθε υποκείμενο έχει μια ικανότητα, η οποία ορίζει τα δικαιώματα πρόσβασης αυτού του υποκειμένου. –Η ικανότητα αντιπροσωπεύει τη γραμμή που αντιστοιχεί σε αυτό το υποκείμενο στη μήτρα ελέγχου πρόσβασης. Π.χ. •Ικανότητα Α: alpha.exe: execute; beta.com: execute, read •Ικανότητα Β: delta.doc: read, write; alpha.exe: execute; beta.com: execute –Τυπικά οι ικανότητες χρησιμοποιούνται από DAC. Όταν κάποιο υποκείμενο δημιουργεί ένα αντικείμενο μπορεί να δώσει σε άλλα υποκείμενα πρόσβαση σε αυτό το αντικείμενο δίνοντας τους τις απαραίτητες ικανότητες. –Η τεχνική αυτή δε χρησιμοποιείται ιδιαίτερα γιατί: •Είναι πολύ δύσκολο για κάποιον (και ειδικά για τον administrator) να καταλάβει ποιός έχει πρόσβαση σε ένα συγκεκριμένοι αντικείμενο. •Είναι δύσκολο να ανακληθεί μια ικανότητα. Είτε το λειτουργικό σύστημα πρέπει να είναι υπεύθυνο για αυτή τη λειτουργία είτε οι χρήστες πρέπει να θυμούνται που έχουν δώσει διακιώματα πρόσβασης. Το πρόβλημα γίνεται εντονότερο όταν μια οντότητα μπορεί να μεταφέρει αυτήν την ικανότητα σε τρίτη οντότητα.

153 Έλεγχος πρόσβασης (Τεχνικές) •Λίστα ελέγχου πρόσβασης (Access control list ή ACL): –Αποθηκεύει τα δικαιώματα πρόσβασης σε ένα αντικείμενο μαζί με αυτό το αντικείμενο. –Μια ACL επομένως αντιστοιχεί σε μια στήλη της μήτρας ελέγχου πρόσβασης και δηλώνει ποιός μπορεί να έχει πρόσβαση σε ένα αντικείμενο. Π.χ. •ACL για alpha.exe: A: execute, Β: execute. –Επειδή η διαχείριση των δικαιωμάτων πρόσβασης που βασίζονται μόνο σε υποκείμενα μπορεί να αποδειχθεί δύσκολη μπορούν να χρησιμοποιηθούν ομάδες (groups) και να δοθούν δικαιώματα πρόσβασης σε ομάδες αντί για κάθε ένα υποκείμενο ξεχωριστά. –Το πρόβλημα που αντιμετωπίζουν οι ACLs είναι παρόμοιο με αυτό των ικανοτήτων και έχει να κάνει με την ανάκληση των δικαιωμάτων ενός χρήστη.

154 Μοντέλα Ασφαλείας •Πρόκειται για μια συμβολική αναπαράσταση της πολιτικής ασφαλείας που θα πρέπει να εφαρμοστεί σε ένα σύστημα. •Αντικατοπτρίζει τις επιθυμίες των δημιουργών της πολιτικής ασφάλειας σε ένα σύνολο από κανόνες που μπορούν να εφαρμοστούν από ένα υπολογιστικό σύστημα. •Η πολιτική ασφάλειας περιγράφει στόχους για την προστασία ενός συστήματος ενώ το μοντέλο ασφαλείας περιλαμβάνει το τι ακριβώς πρέπει να γίνει για να επιτευχθούν αυτοί οι σκοποί. •Υπάρχουν μοντέλα που αντιπροσωπεύουν πολιτικές ασφαλέιας για εμπιστευτικότητα (Bell-LaPadula), και για ακεραιότητα (Biba, Clark-Wilson).

155 Μοντέλα Ασφαλείας •Μοντέλα μηχανής καταστάσεων: –Αποτελούν ένα τρόπο μοντελοποίησης πολλών ζητημάτων των υπολογιστικών συστημάτων. Αποτελούν τη βάση πολλών μοντέλων ασφαλείας. –Τα βασικά χαρακτηριστικά ενός μοντέλου είναι •η έννοια της κατάστασης: η αναπαράσταση του συστήματος σε κάποια χρονική στιγμή που καταγράφει όλα τα δικαιώματα πρόσβασης και όλες τις περιπτώσεις των υποκειμένων που έχουν πρόσβαση σε αντικείμενα. •η αλλαγή των καταστάσεων που συμβαίνουν σε διάφορα χρονικά σημεία: υπάρχουν πολλές ενέργειες που μπορεί να αλλάξουν την κατάσταση μιας μηχανής. Μέλημα μας είναι να διασφαλίσουμε ότι καμία αλλαγή δε θα οδηγήσει το σύστημα σε μη ασφαλή κατάσταση.

156 Μοντέλα Ασφαλείας (Bell- LaPadula) •Πρόκειται για το πιό γνωστό μοντέλο το οποίο προστατεύει κυρίως από διαρροή ταξινομημένων πληροφοριών. •Χρησιμοποιεί άδειες ή όρια ασφαλείας για τους χρήστες του συστήματος ενώ τα δεδομένα του συστήματος έχουν διαφορετική ταξινόμηση. Για αυτό το λόγο το σύστημα που χρησιμοποιεί το μοντέλο Bell-LaPadula ονομάζεται σύστημα πολυεπίπεδης ασφάλειας. •Χρησιμοποιεί μήτρα ελέγχου ασφαλείας και επίπεδα ασφαλείας για να προσδιορίσει εάν ένα υποκείμενο έχει δικαίωμα πρόσβασης σε ένα αντικείμενο. Η άδεια ασφαλείας του υποκειμένου (subject’s security clearance) συγκρίνεται με την ταξινόμηση των δεδομένων (data classification): –Εάν η άδεια είναι σε υψηλότερο ή στο ίδιο επίπεδο με την ταξινόμηση των δεδομένων τότε το υποκείμενο μπορεί να έχει πρόσβαση στο αντικείμενο.

157 Μοντέλα Ασφαλείας (Bell- LaPadula) •Υπάρχουν δύο βασικοί κανόνες που χρησιμοποιεί το μοντέλο Bell-LaPadula: –Απλός κανόνας ασφαλείας (Simple security rule): ένα υποκείμενο σε ένα συγκεκριμένο επίπεδο ασφαλείας δε μπορεί να διαβάσει δεδομένα τα οποία βρίσκονται σε υψηλότερο επίπεδο ασφαλείας. Ονομάζεται και “όχι ανάγνωση προς τα πάνω (no read up)”. –Κανόνας της *-ιδιότητας (*-property rule): ένα υποκείμενο σε ένα επίπεδο ασφαλείας δε μπορεί να γράψει πληροφορίες σε ένα χαμηλότερο επίπεδο ασφαλείας. Ονομάζεται και “όχι εγγραφή προς τα κάτω (no write down)”. •Χαρακτηριστικά: –Ασχολείται μόνο με την εμπιστευτικότητα των δεδομένωνκαι όχι την ακεραιότητα. –Δεν ασχολείται με τη διαχείρηση του ελέγχου πρόσβασης, αφού δεν υπάρχει μηχανισμός που να αλλάζει τα δικαιώματα πρόσβασης. –Δε προστατεύει από την ύπραξη κρυφών καναλιών. –Δεν καλύπτει συστήματα που επιτρέπουν το μοίρασμα των αρχείων.

158 Μοντέλα Ασφαλείας (Biba) •Είναι παρόμοιο με το μοντέλο Bell-LaPadula μόνο που κύριο μέλημα του είναι η διατήρηση της ακεραιότητας. •Προστατεύει από την απειλή ενός υποκειμένου που βρίσκεται σε κάποιο επίπεδο ασφαλείας να γράψει δεδομένα σε κάποιο υψηλότερο επίπεδο ή να διαβάσει δεδομένα που βρίσκονται σε χαμηλότερο επίπεδο. •Χρησιμοποιεί δύο βασικούς κανόνες: –“Όχι εγγραφή προς τα πάνω” (no write up): ένα υποκείμενο δε μπορεί να γράψει δεδομένα σε ένα αντικείμενο που βρίσκεται σε υψηλότερο επίπεδο ασφαλείας. –“Όχι ανάγνωση προς τα κάτω” (no read down): ένα υποκείμενο δε μπορεί να διαβάσει δεδομένα από ένα αντικείμενο που βρίσκεται σε χαμηλότερο επίπεδο ασφαλείας.

159 Μοντέλα Ασφαλείας (Clark-Wilson) •Αποτρέπει τη μη εξουσιοδοτημένη μετατροπή των δεδομένων από εξουσιοδοτημένους χρήστες. –Τα υποκείμενα μπορούν να προσπελάσουν αντικείμενα μόνο μέσω εξουσιοδοτημένων προγραμμάτων. –Χρησιμοποιεί διαχωρισμό καθηκόντων (separation of duties): χωρίζει μια διεργασία σε διαφορετικά κομμάτια και απαιτεί διαφορετικοί χρήστε να εκτελέσουν καθένα από αυτά. Αυτό αποτρέπει εξουσιοδοτημένους χρήστες να κάνουν κατάχρηση της εξουσιοδότησης που έχουν για να κάνουν μη εξουσιοδοτημένες αλλαγές στα αντικείμενα.


Κατέβασμα ppt "ΑΣΦΑΛΕΙΑ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ 2005-2006."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google