ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Τοπολογίες Διατάξεων Κρυπτογράφησης- Εισαγωγή στην Ασφάλεια Δικτύων και Ασφάλεια Ηλεκτρονικού Ταχυδρομείου Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org Αντίρριο 2015 1
ΔΙΑΡΘΡΩΣΗ ΕΝΟΤΗΤΑΣ 1. Τοπολογίες Διατάξεων Κρυπτογράφησης 2. Ασφάλεια OSI 3. Το Μοντέλο Kerberos 4. Pretty Good Privacy (PGP) 2
ΤΟΠΟΛΟΓΙΕΣ ΔΙΑΤΑΞΕΩΝ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ Link Εncryption (Κρυπτογράφηση Ζεύξης): Μεγάλος αριθμός διατάξεων κρυπτογράφησης Υψηλό επίπεδο ασφάλειας Αποκρυπτογράφηση κάθε πακέτου (packet) End-to-end Εncryption (Κρυπτογράφηση από Άκρη σε Άκρη): H πηγή κρυπτογραφεί τα δεδομένα, τα οποία αποκρυπτογραφούνται στο δέκτη High Security (Υψηλά Επίπεδα Ασφάλειας): Απαιτείται link and end-to-end encryption για την μετάδοση των δεδομένων 3
ΚΡΥΠΤΟΓΡΑΦΗΣΗ ΔΙΑΜΕΣΟΥ ΕΝΟΣ ΔΙΚΤΥΟΥ ΜΕΤΑΓΩΓΗΣ ΠΑΚΕΤΩΝ 4
ΑΣΦΑΛΕΙΑ OSI: ΕΝΑ ΔΙΚΤΥΟ ΥΠΟΛΟΓΙΣΤΩΝ 5
ΤΟ ΜΟΝΤΕΛΟ ΑΝΑΦΟΡΑΣ OSI 6
ΧΡΗΣΗ ΔΙΚΤΥΟΥ Αλέκος Κώστας Βασίλης 7
ΕΠΙΘΕΣΕΙΣ Να διαβάσει ή να τροποποιήσει μηνύματα που ο Αλέκος στέλνει στο Βασίλη Επιθέσεις εναντίον της εμπιστευτικότητας αυτών των μηνυμάτων μπορούν να εκδηλωθούν απ οπουδήποτε μέσα στο δίκτυο Να πλαστογραφήσει μηνύματα, που θα εμφανίζονται ότι στέλνονται από τον Αλέκο στο Βασίλη Να επαναλάβει ένα μήνυμα που στάλθηκε πραγματικά από τον Αλέκο στο Βασίλη Να εμποδίσει την επικοινωνία μεταξύ Αλέκου και Βασίλη Να εμποδίσει τη μετάδοση όλων των μηνυμάτων που περνούν από κάποιο συγκεκριμένο σημείο Να διαβάσει, να τροποποιήσει ή να καταστρέψει δεδομένα που είναι αποθηκευμένα στους σταθμούς εργασίας Γ ή Κ 8
ΚΙΝΔΥΝΟΙ ΣΕ ΕΝΑ ΔΙΚΤΥΟ Παρακολουθήσεις ζεύξεων Πλαστοπροσωπία Παραβιάσεις εμπιστευτικότητας μηνυμάτων Παραβιάσεις ακεραιότητας μηνυμάτων Αρνήσεις παροχής υπηρεσίας 9
ΥΠΗΡΕΣΙΕΣ ΑΣΦΑΛΕΙΑΣ ΣΤΟ OSI Υπηρεσίες εξασφάλισης συνεχούς λειτουργίας Υπηρεσίες προστασίας ακεραιότητας Υπηρεσίες αυθεντικοποίησης Υπηρεσίες ελέγχου πρόσβασης Υπηρεσίες προστασίας εμπιστευτικότητας Υπηρεσίες υποστήριξης μη αμφισβήτησης 10
ΜΗΧΑΝΙΣΜΟΙ ΑΣΦΑΛΕΙΑΣ ΣΤΟ OSI Κρυπτογράφηση Ψηφιακές υπογραφές Έλεγχος πρόσβασης Ακεραιότητα δεδομένων Ανταλλαγή πληροφοριών αυθεντικοποίησης Συμπλήρωση κίνησης Έλεγχος δρομολόγησης Συμβολαιογράφος 11
ΔΙΚΤΥΑ ΚΑΙ ΕΞΑΠΑΤΗΣΗ Χρήστες επιθυμούν να έχουν πρόσβαση σε υπηρεσίες (services) που υποστηρίζονται από εξυπηρετητές (servers) Οι πιθανοί τρόποι εξαπάτησης είναι: Ο χρήστης μπορεί να προσποιηθεί ότι είναι άλλος συνδρομητής Ο χρήστης μπορεί να διαφοροποιήσει την διεύθυνση που έχει κάποιος σταθμός εργασίας σε ένα δίκτυο Ο χρήστης μπορεί να υποκλέψει μεταδιδόμενη πληροφορία στο δίκτυο και να εφαρμόσει κάποιο είδος επίθεσης 12
KERBEROS: ΠΡΟΕΛΕΥΣΗ ΟΝΟΜΑΣΙΑΣ Κατά την μυθολογία, το όνομα «Κέρβερος» παρέπεμπε σε ένα σκύλο με τρία κεφάλια, φύλακα 13 της εισόδου στον «Άδη»
ΤΟ ΣΥΣΤΗΜΑ KERBEROS: ΒΑΣΙΚΑ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ Παρέχει έναν κεντρικό authentication server, με σκοπό την πιστοποίηση της ταυτότητας των χρηστών (users) στους εξυπηρετητές (servers) και αντίστροφα (servers to users) Στηρίζεται στην conventional encryption, ενώ δεν χρησιμοποιείται η κρυπτογράφηση δημοσίου κλειδιού Υποστηρίζονται διαφορετικές εκδόσεις: Version 4 και Version 5 Στην τελευταία έκδοση (5) γίνεται χρήση πολλαπλών symmetric block ciphers 14
15 KERBEROS ΕΚΔΟΣΗ 4 Για να εξασφαλίσει την υπηρεσία της πιστοποίησης αυθεντικότητας χρησιμοποιεί τον DES Παράμετροι: C = client (πελάτης) AS = authentication server (διακομιστής πιστοποίησης) V = server (εξυπηρετητής) IDc = identifier of user on C (αναγνωριστικό του χρήστη C) IDv = identifier of V (αναγνωριστικό του V) P c = password of user on C (συνθηματικό του χρήστη C) ADc = network address of C (διεύθυνση δικτύου του C) Kv = secret encryption key shared by AS an V (μυστικό κλειδί) TS = timestamp = concatenation
16 ΕΝΑΣ ΑΠΛΟΣ ΔΙΑΛΟΓΟΣ ΠΙΣΤΟΠΟΙΗΣΗΣ Ο διακομιστής πιστοποίησης AS γνωρίζει τα συνθηματικά όλων των χρηστών και τα έχει αποθηκεύσει σε κάποια κεντρική βάση δεδομένων. Ο AS μοιράζεται ένα μοναδικό μυστικό κλειδί με κάθε διακομιστή Σενάριο: Ο χρήστης C ζητά πρόσβαση στο διακομιστή V Client Authentication Server: IDc P c IDv Authentication Server Client: Ticket Client V (Server): IDc Ticket IDc : αναγνωριστικό του χρήστη C P c : συνθηματικό του χρήστη C IDv : αναγνωριστικό του διακομιστή V IDc : αναγνωριστικό του χρήστη C Kv : μυστικό κλειδί Ticket = E Kv [IDc P c IDv]
Προβλήματα: VERSION 4 ΜΗΧΑΝΙΣΜΟΣ ΠΙΣΤΟΠΟΙΗΣΗΣ Χρήση συνθηματικού πολλές φορές Η πρώτη μετάδοση του συνθηματικού είναι μη κρυπτογραφημένη Η απειλή έγκειται στο γεγονός ότι ένας εισβολέας μπορεί να υποκλέψει το συνθηματικό και να το χρησιμοποιήσει στις υπηρεσίες που έχει πρόσβαση το θύμα. 17
ΤΕΛΙΚΗ ΠΡΟΣΕΓΓΙΣΗ 1. Ο χρήστης εισέρχεται στο σταθμό εργασίας και ζητά υπηρεσία από τον υπολογιστή υπηρεσίας 2. Ο AS επιβεβαιώνει το δικαίωμα πρόσβασης και δημιουργεί το εισιτήριο εκχώρησης εισιτηρίου και το κλειδί περιόδου τα οποία κρυπτογραφούνται 3. Ο σταθμός εργασίας ζητά συνθηματικό χρήστη για να αποκρυπτογραφήσει τα μηνύματα και μετά στέλνει στον διακομιστή εκχώρησης εισιτηρίων το εισιτήριο με το όνομά του, την IP του και το χρόνο 4. Ο TGS αποκρυπτογραφεί το εισιτήριο, επιβεβαιώνει την αίτηση και δημιουργεί το εισιτήριο για τον αντίστοιχο διακομιστή μαζί με το κλειδί περιόδου 5. Ο σταθμός εργασίας στέλνει το εισιτήριο στο διακομιστή 6. Ο διακομιστής επιβεβαιώνει το εισιτήριο και δίνει πρόσβαση στην 18 υπηρεσία
KERBEROS: ΤΕΛΙΚΗ ΠΡΟΣΕΓΓΙΣΗ ΑΣΦΑΛΕΙΑ ΚΑΙ ΑΞΙΟΠΙΣΤΙΑ ΔΙΚΤΥΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ - Δρ. Π. Κίτσος 19
20 ΤΕΧΝΙΚΕΣ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ ΣΤΟ ΣΥΣΤΗΜΑ KERBEROS
PCBC ΜΗΧΑΝΙΣΜΟΣ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ 21
PRETTY GOOD PRIVACY Το Pretty Good Privacy (PGP) δημιουργήθηκε από το Philip R. Zimmerman Παρέχει την υπηρεσία εξασφάλισης απορρήτου και πιστοποίησης αυθεντικότητας Χρησιμοποιείται σε εφαρμογές ηλεκτρονικού ταχυδρομείου και αποθήκευσης αρχείων 22
ΟΙ ΛΟΓΟΙ ΑΠΟΔΟΧΗΣ ΤΟΥ PGP Διατίθεται δωρεάν σε διάφορες εκδόσεις που λειτουργούν σε ποικιλία από πλατφόρμες (Win, Unix, Mac κλπ) Βασίζεται σε αλγορίθμους που έχουν επιβιώσει μετά από ανάλυση και είναι σχετικά αξιόπιστοι RSA, DSS, Diffie-Hellman: Κρυπτογράφηση δημοσίου κλειδιού CAST-128, IDEA, 3DES: Κρυπτογράφηση ιδιωτικού κλειδιού SHA-1: Κωδικοποίηση συνάρτησης κατακερματισμού Ευρύ πεδίο εφαρμογών (κρυπτογράφηση αρχείων και μηνυμάτων, επικοινωνία μέσω διαδικτύου) Δεν αναπτύχθηκε ούτε ελέγχεται από κάποιο κυβερνητικό φορέα ή οργανισμό προτύπων 23
ΠΕΡΙΓΡΑΦΗ ΛΕΙΤΟΥΡΓΙΑΣ Αποτελείται από πέντε λειτουργίες Πιστοποίηση (Authentication) Εμπιστευτικότητα (Confidentiality) Συμπίεση (Compression) Συμβατότητα με ηλεκτρονικό ταχυδρομείο (E-mail compatibility) Κατάτμηση (Segmentation) 24
25
ΣΥΜΠΙΕΣΗ To PGP συμπιέζει το μήνυμα μετά τη ψηφιακή υπογραφή αλλά πριν τη κρυπτογράφηση Η θέση της συνάρτησης συμπίεσης είναι υψήστης σημασίας Ο αλγόριθμος συμπίεσης είναι ο ZIP 26
ΣΥΜΒΑΤΟΤΗΤΑ E-MAIL Χρησιμοποιεί το radix-64 μετασχηματισμό Η χρήση του radix-64 μετασχηματισμού επεκτείνει το μήνυμα κατά 33% 27
ΚΑΤΑΤΜΗΣΗ ΚΑΙ ΣΥΝΑΡΜΟΛΟΓΗΣΗ Συνήθως αναφέρεται σε μηνύματα μήκους έως 50,000 bytes Μεγαλύτερα μηνύματα πρέπει να τμηματοποιηθούν σε μικρότερα τεμάχια To PGP τμηματοποιεί αυτόματα ένα μήνυμα που είναι μεγάλο Ο δέκτης αφαιρεί όλες τις επικεφαλίδες του e-mail και συναρμολογεί το μήνυμα με σκοπό να το λάβει στην αρχική του μορφή 28
ΣΥΝΟΨΗ PGP ΥΠΗΡΕΣΙΩΝ Function Algorithm Used Digital Signature DSS/SHA or RSA/SHA Message Encryption CAST ή IDEA ή three-key triple DES με Diffie-Hellman ή RSA Compression ZIP E-mail Radix-64 conversion Compatibility Segmentation - 29
FORMAT ΤΟΥ PGP ΜΗΝΥΜΑΤΟΣ Henric Johnson 30
ΠΑΡΑΓΩΓΗ PGP ΜΗΝΥΜΑΤΟΣ 31
ΠΑΡΑΛΑΒΗ PGP ΜΗΝΥΜΑΤΟΣ 32
S/MIME Secure/Multipurpose Internet Mail Extension (Ασφαλές/ Πολλαπλού Σκοπού Επέκταση του E- mail) To S/MIME χρησιμοποιείται για βιομηχανικές εφαρμογές Αντίθετα το PGP χρησιμοποιείται για ατομική χρήση 33
ΛΕΙΤΟΥΡΓΙΕΣ ΤΟΥ S/MIME Enveloped Data: Κρυπτογράφηση των δεδομένων και του κλειδιού συνόδου Signed Data: Η σύνοψη του μηνύματος κρυπτογραφείται με το ιδιωτικό κλειδί του υπογράφοντα Clear-Signed Data: Τα δεδομένα υπογράφονται αλλά δεν κρυπτογραφούνται Signed and Enveloped Data: Τα δεδομένα υπογράφονται και κρυπτογραφούνται 34
ΑΛΓΟΡΙΘΜΟΙ Υπολογισμός σύνοψης: SHA-1 και MDS Ψηφιακή υπογραφή: DSS Κρυπτογράφηση ιδιωτικού κλειδιού: Triple-DES, RC2/40 Κρυπτογράφηση δημόσιου κλειδιού: RSA με κλειδί μήκους 512 και 1024 bits, Diffie-Hellman (για την ανταλλαγή των κλειδιών συνόδου) 35
Ο ΡΟΛΟΣ ΤΟΥ ΑΝΤΙΠΡΟΣΩΠΟΥ Το S/MIME χρησιμοποιεί πιστοποιητικά δημοσίου κλειδιού - X.509 πιστοποίηση τριών σταδίων από την αρχή πιστοποίησης Λειτουργίες: Δημιουργία κλειδιών - Diffie-Hellman, DSS, και RSA κλειδιά Καταχώρηση - Τα δημόσια κλειδιά πρέπει να ανακτηθούν με την X.509 αρχή πιστοποίησης Υπογραφή και κρυπτογράφηση δεδομένων 36
Ο ΡΟΛΟΣ ΤΟΥ ΑΝΤΙΠΡΟΣΩΠΟΥ Παράδειγμα Verisign (www.verisign.com) Class-1: Το e-mail των πελατών (αγοραστών) επαληθεύεται Class-2: Η ταχυδρομική διεύθυνση επαληθεύεται επίσης Class-3: Ο πελάτης πρέπει να παρουσιαστεί αυτοπροσώπως ή να αποστείλει πιστοποιημένο έντυπο 37
Απορίες??? ΑΣΦΑΛΕΙΑ ΚΑΙ ΑΞΙΟΠΙΣΤΙΑ ΔΙΚΤΥΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ - Δρ. Π. Κίτσος 38