1 / 47

Ασφάλεια Δικτύων ( Computer Security )

Ασφάλεια Δικτύων ( Computer Security ). Τι Εννοούμε με τον Όρο Ασφάλεια Δικτύων;. Ασφάλεια Μόνο ο αποστολέας και ο προοριζόμενος παραλήπτης μπορούν να διαβάσουν και να κατανοήσουν ένα μήνυμα. Ο αποστολέας το κρυπτογραφεί (encrypt) Ο παραλήπτης το αποκρυπτογραφεί ( decrypt ) .

brooks
Download Presentation

Ασφάλεια Δικτύων ( Computer Security )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ασφάλεια Δικτύων (Computer Security)

  2. Τι Εννοούμε με τον Όρο Ασφάλεια Δικτύων; • Ασφάλεια • Μόνο ο αποστολέας και ο προοριζόμενος παραλήπτης μπορούν να διαβάσουν και να κατανοήσουν ένα μήνυμα. • Ο αποστολέας το κρυπτογραφεί (encrypt) • Ο παραλήπτης το αποκρυπτογραφεί (decrypt). • Πιστοποίηση Αυθεντικότητας (authentication) • Αποστολέας και παραλήπτης μπορούν να επιβεβαιώσουν την ταυτότητα τους. • Ακεραιότητα Μηνύματος (message integrity) • Αποστολέας και παραλήπτης μπορούν να επιβεβαιώσουν ότι το μήνυμα δεν αλλοιώθηκε ή ξαναστάλθηκε χωρίς να γίνει αντιληπτό.

  3. Κρυπτογραφία Κρυπτογραφία Υπηρεσίες Ασφάλειας Μυστικό κλειδί (π.χ. DES) Φανερό κλειδί (π.χ. RSA) Μυστικότητα (privacy) Message Digest (e.g. MD5) Πιστοποίηση Αυθεντικότητας • Κρυπτογραφία είναι η «επιστήμη» η οποία ασχολείται με την μη καταστρεπτική αλλοίωση δεδομένων με τέτοιο τρόπο έτσι ώστε να μην μπορούν να κατανοηθούν από οποιοδήποτε • Μη καταστρεπτική αλλοίωση: πρέπει να υπάρχει τρόπος ο ιδιοκτήτης ή ο προοριζόμενος παραλήπτης να μπορεί να αναπαράξει τα αρχικά δεδομένα Ασφάλεια Ακεραιότητα Μηνυμάτων

  4. Περίληψη • Απειλές Ασφάλειας στο Διαδίκτυο • Παραδοσιακή Κρυπτογραφία • Βασικές Αρχές Κρυπτογραφίας • Αλγόριθμοι Μυστικού Κλειδιού (secrete key encryption) • Αλγόριθμοι Φανερού Κλειδιού (public key encryption) • Ψηφιακές Υπογραφές • Πρωτόκολλα Πιστοποίησης Αυθεντικότητας

  5. Απειλές Ασφάλειας στο Διαδίκτυο C A src:B dest:A payload B • Packet Sniffing • Κάποιος μπορεί να χρησιμοποιήσει ένα δέκτη για να «κρυφάκουει» όλα τα πακέτα που μεταδίδονται μέσα από μέσα εκπομπής • Μπορεί να διαβάζει όλες τις μη κρυπτογραφημένες πληροφορίες που μεταδίδονται • Μπορεί επίσης να αποθηκεύει ακόμα και κρυπτογραφημένες πληροφορίες

  6. Απειλές Ασφάλειας στο Διαδίκτυο C A src:B dest:A payload B • IP Spoofing (παραπλάνηση) • Κάποιος μπορεί να προγραμματίσει μια εφαρμογή η οποία να δημιουργεί πακέτα στα οποία η διεύθυνση αποστολέα να είναι αλλαγμένη (προσποιείται ότι είναι κάποιος άλλος) • Ο παραλήπτης δεν μπορεί να ξέρε αν ο αποστολέας είναι όντως ο ιδιοκτήτης της διεύθυνσης που αναγράφεται στην επικεφαλίδα του πακέτου.

  7. Απειλές Ασφάλειας στο Διαδίκτυο SYN SYN SYN SYN SYN SYN SYN C A B • Αποστέρηση Υπηρεσιών (Denial of Service) • Αποστολή πλημμυράς πακέτων στα οποία δεν μπορεί να αντεπεξέλθει ο παραλήπτης • Κατανεμημένη αποστέρηση υπηρεσιών (Distributed Denial of Service)

  8. Κρυπτογραφία ΚΑ=ΚΒ : Συμμετρικός αλγόριθμος όπου το κλειδί πρέπει να είναι μυστικό ΚΑ ≠ ΚΒ : Μη συμμετρικός αλγόριθμος όπου το ένα κλειδί είναι μυστικό φανερό (δημόσιο).

  9. Παραδοσιακή Κρυπτογραφία • Κρυπτογραφία Αντικατάστασης(substitution cipher) • Κάθε γράμμα αντικαθίσταται με κάποιο άλλο plaintext: abcdefghijklmnopqrstuvwxyz ciphertext: mnbvcxzasdfghjklpoiuytrewq Παράδειγμα Plaintext: bob. i love you. alice ciphertext: nkn. s gktc wky. mgsbc • Πόσο δύσκολο είναι να σπάσει κάποιος αυτόν τον αλγόριθμο; • Βρίσκοντας όλες τις δυνατέ περιπτώσεις • Χρησιμοποιώντας άλλες τεχνικές

  10. Κρυπτογραφία Μετατροπής (Transposition Cipher) • Αλλάζει η σειρά με την οποία μπαίνουν τα γράμματα • Πώς μπορεί κάποιος να σπάσει αυτόν τον αλγόριθμο;

  11. Βάση μιας Χρήσης (One-Time Pads) • Αυτός ο αλγόριθμος δεν μπορεί να σπάσει, αλλά όμως δεν είναι καθόλου πρακτικός.

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

  13. Πρότυπο Κρυπτογράφησης Δεδομένων (Data Encryption Standard DES)

  14. Τριπλό DES Αποκρυπτογράφηση. Κρυπτογράφηση.

  15. Προχωρημένο Πρότυπο Κρυπτογράφησης (Advanced Encryption Standard). • Απαιτήσεις του νέου αλγορίθμου • Ο αλγόριθμος πρέπει να είναι συμμετρικός • Ο πλήρης σχεδιασμός του αλγόριθμου πρέπει να είναι δημόσιος • Το μήκος των κλειδιών πρέπει να υποστηρίζει 128, 192 και 258 bits. • Θα πρέπει να μπορεί να εφαρμοστεί είτε σε υλικό είτε σε λογισμικό. • Θα πρέπει όποιος θέλει να μπορεί να τον χρησιμοποιήσει χωρίς διακρίσεις. • Rijndael (Joan Daemen και Vincent Rijmen).

  16. Αλγόριθμοι Κρυπτογραφίας με Συμμετρικό Κλειδί Πρόβλημα: Πώς ο αποστολέας και παραλήπτης ανταλλάσσουν το κοινό κλειδί;

  17. Αλγόριθμοι με Φανερό (Δημόσιο) Κλειδί (Public Key Encryption) • Υπάρχουν δύο κλειδιά (ένα μυστικό και ένα φανερό) • Ο αποστολέας χρησιμοποιεί το φανερό κλειδί για την κρυπτογράφηση • Ο παραλήπτης χρησιμοποιεί το μυστικό κλειδί για την αποκρυπτογράφηση

  18. Αλγόριθμοι με Φανερό (Δημόσιο) Κλειδί • Το πρόβλημα έχει τις εξής δύο απαιτήσεις • Χρειάζονται δύο συναρτήσεις eΚ1( ) και dΚ2( ) έτσι ώστε • Χρειάζονται δυο κλειδιά Κ1 (φανερό) και Κ2 (μυστικό) για τις συναρτήσεις eΚ1( ) και dΚ2( ) • RSA: Rivest, Shamir, Adelson algorithm

  19. Αλγόριθμος RSA • Επιλέξτε δύο μεγάλους πρώτους αριθμούς p, q(π.χ., 1024 bits) • Υπολογίστε τα γινόμενα n=pqκαι z=(p-1)(q-1) • Επιλέξτε αριθμό e (όπου e<n)έτσι ώστε να μην υπάρχουν κοινοί παράγοντες μεταξύ eκαι z (eκαι z πρέπει να είναι «πρώτοι» μεταξύ τους) • Επιλέξτε αριθμό d έτσι ώστε ed-1 να διαιρείται ακριβώς από το z (δηλαδή ed mod z = 1) • Το φανερό κλειδί είναι το (n,e) και το μυστικό κλειδί είναι το (n,d).

  20. Κρυπτογράφηση Αποκρυπτογράφηση RSA d e c = m mod n m = c mod n (δηλαδή το υπόλοιπο της διαίρεσης meδιαn) Magic! (δηλαδή το υπόλοιπο της διαίρεσης cdδιαn) d e m = (m mod n) mod n • Δεδομένων των κλειδιών (n,e) και (n,d). • Για την κρυπτογράφηση του μηνύματος m υπολογίζουμε • Για να αποκρυπτογραφήσουμε το κρυπτογραφημένο μήνυμα χρησιμοποιούμε

  21. Παράδειγμα • Ο Bob επέλεξε p =5, q= 7 • Τότε n= pq= 35, z=(p-1)(q-1)= 24 • Επέλεξε επίσης e= 5 (έτσι ώστε να μην διαιρεί το z) • Επέλεξε επίσης το d=29 (έτσι ώστε ed-1 να διαιρείται από το z) • Κρυπτογράφηση του γράμματος μ: • m=12, • me= 1524832 • c= me mod n = 17 • Αποκρυπτογράφηση • cd= 481968572106750915091411825223072000 • m= cd mod n = 12 = μ

  22. Επισκόπηση Μηνύματος (Message Digest) • Κρυπτογραφημένο άθροισμά ελέγχου • Συνηθισμένο άθροισμα ελέγχου το οποίο είναι κρυπτογραφημένο έτσι ώστε ένα αλλάξει κάποιος το μήνυμα να μπορεί να ανιχνευτεί • Μονόδρομη συνάρτηση • Δεδομένου του αθροίσματος ελέγχου πρέπει να είναι αδύνατο να υπολογίσουμε το μήνυμα που το δημιούργησε. • Δύο διαφορετικά μηνύματα δεν πρέπει να έχουν το ίδιο άθροισμα ελέγχου • Συσχετισμός • Δεδομένου του αθροίσματος ελέγχου για κάποιο μήνυμα, εάν μπορούμε να υπολογίσουμε ακριβώς το ίδιο άθροισμα ελέγχου, τότε πιθανότητα το συγκεκριμένο άθροισμα ελέγχου έχει παραχθεί από το δεδομένο μήνυμα

  23. Secure Hash Algorithm (SHA-1) • Οι 16 λέξεις (words) αρχικοποιούν τις λέξεις Wo…W15 • Οι υπόλοιπες 16 έως79, υπολογίζονται σαν συναρτήσεις των προηγούμενων • 5 προσωρινές μεταβλητές παίρνουν τιμές οι οποίες είναι συναρτήσεις των δεδομένων • Το τελικό του αποτέλεσμα προστίθεται στα Η0…Η4 • Το τελικό αποτέλεσμα Η0…Η4 για το Μiείναι το αρχικό του Μi+1

  24. Πρωτόκολλα Πιστοποίηση Αυθεντικότητας • Μπορεί ο Bob να εμπιστευτεί ότι όντως μιλά με την Alice;

  25. Πρωτόκολλα Πιστοποίηση Αυθεντικότητας • Μπορεί ο Bob να εμπιστευτεί ότι όντως μιλά με την Alice;

  26. Πρωτόκολλα Πιστοποίηση Αυθεντικότητας • Μπορεί ο Bob να εμπιστευτεί ότι όντως μιλά με την Alice; I am Alice encrypt(password)

  27. Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί • R είναι ένας τυχαίος αριθμός ο οποίος θα χρησιμοποιηθεί μόνο μια φορά.

  28. Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί Hi, I am Alice RB KAB(RB), RA RA Hi, I am Alice, RA RB KAB(RA), KAB(RB)

  29. Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί Hi, I am Alice, RB Hi, I am Alice, RT RB,KAB(RT), KAB(RB) RB2, KAB(RB), Second Session Ο Bob νομίζει ότι μιλά με την Alice

  30. Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί RA KAB(RA2) Hi, I am Alice RA KAB(RA) RA2 KAB(RA2) Hi I am Bob KAB(RA) RA2 Second Session HAlice νομίζει ότι μιλά με τoν Bob

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

  32. Πρωτόκολλο Ανταλλαγής Κοινού Κλειδιού Πως ο Bob και η Alice μπορούν να συμφωνήσουν σε ένα κοινό κλειδί; Μπορούν να συναντηθούν και αφού επιβεβαιώσουν τις ταυτότητες τους να συμφωνήσουν σε ένα κοινό κλειδί. The Diffie-Hellman Key Exchange n, g, gx mod n gy mod n Επιλέγουν 2 μεγάλους αριθμούς g καιn όπου n είναι πρώτος ως επίσης και ο (n-1)/2. Οι αριθμοί αυτοί είναι φανεροί Η Alice επιλέγει ένα μεγάλο (512-bit)αριθμό x O Bob επιλέγει ένα μεγάλο (512-bit)αριθμό y • H Trudy μπορεί να δει τους n, g, gx mod n, gy mod n, αλλά δεν μπορεί να υπολογίσει το gxy mod n.

  33. Αδυναμία Πρωτοκόλλου Ανταλλαγής Κοινού Κλειδιού Πως μπορεί η Trudy να σπάσει το πρωτόκολλο; n, g, gx mod n gz mod n n, g, gz mod n gy mod n Η Trudy επιλέγει z Η Alice επιλέγει x O Bob επιλέγει y

  34. Κέντρα Διανομής Κλειδιών (Key Distribution Center KDC) • Η διαχείριση πολλών κλειδιών είναι δύσκολή για πολυσύχναστες υπηρεσίες Session Key • Η Alice και ο Bob στη συνέχεια χρησιμοποιούν το session key KS • Πως η Trudy μπορεί να εκμεταλλευθεί το πρωτόκολλο; • Η Trudy μπορεί να αποθηκεύσει το κρυπτογραφημένο μήνυμα (KS(.))και μετά να το στέλνει συνέχεια (Replay Attack)

  35. Κέντρα Διανομής Κλειδιών (Key Distribution Center KDC) • Η διαχείριση πολλών κλειδιών είναι δύσκολή για πολυσύχναστες υπηρεσίες Session Key • Η Alice και ο Bob στη συνέχεια χρησιμοποιούν το session key KS • Πως η Trudy μπορεί να εκμεταλλευθεί το πρωτόκολλο; • Η Trudy μπορεί να αποθηκεύσει το κρυπτογραφημένο μήνυμα (KS(.))και μετά να το στέλνει συνέχεια (Replay Attack) • Κακή Λύση: Χρήση χρονομέτρων και τυχαίων αριθμών…

  36. Needham-Schroeder Authentication

  37. Otway-Rees Authentication

  38. Kerberos Authentication

  39. Πιστοποίηση Ταυτότητας με Φανερό Κλειδί

  40. Πιστοποιητικά Ταυτότητας (Authenticity Certificates) Hi, I am Alice, send me EB Trudy Alice Bob Here is the key ET ET( Message ) EB( Message ) • Πρόβλημα: Πως ξέρει η Alice ότι πήρε το σωστό κλειδίκαι όντως επικοινωνεί με τον Bob;

  41. Πιστοποιητικά Ταυτότητας (Αυθεντικότητας) (Authenticity Certificates) • Εάν ο Bob θέλει να είναι σίγουρος ότι όσοι θέλουν να επικοινωνήσουν μαζί του, θα επικοινωνούν μόνο μαζί του, πάει σε μια Πιστοποιούσα Αρχή (Certification Authority) η οποία αφού εξακριβώσει την ταυτότητα του Bob εκδίδει το πιο κάτω πιστοποιητικό. Η Πιστοποιούσα Αρχή (Certification Authority CA)χρησιμοποιεί το μυστικό της κλειδί για να δημιουργήσει το SHA-1

  42. Πιστοποιητικά Αυθεντικότητας (Authenticity Certificates) Hi, I am Alice, send me your certificate with EB Trudy Alice Bob Here is the key ET ET( Message ) EB( Message ) • Εάν η Trudy δοκιμάσει να αντικαταστήσει το κλειδί του Bob στο πιστοποιητικό, τότε η Alice μπορεί εύκολα να το ανιχνεύσει! • Παίρνοντας το φανερό κλειδί της πιστοποιούσας αρχής, ελέγχει το SHA-1, το οποίο δεν θα ταιριάζει με αυτό που θα άρμοζε στο δεδομένο πιστοποιητικό. • Η Trudy δεν έχει το μυστικό κλειδί της πιστοποιούσας αρχής έτσι δεν μπορεί να αλλάξει το SHA-1 να αντικατοπτρίζει το πιστοποιητικό του Bob με το δικό της κλειδί

  43. Πιστοποιητικά Αυθεντικότητας (Authenticity Certificates) Here is my certificate User A WWW EA(Random Number R) R=DA(EA(R )) • Εάν κάποιος θέλει να πιστοποιήσει ότι έχει κάποια ιδιότητα (π.χ., είναι μεγαλύτερος από 18 ετών). • Πάει σε μια αρχή η οποία του εκδίδει ένα πιστοποιητικό το οποίο λέει πως το φανερό αυτό κλειδί ανήκει σε κάποιον ο οποίος είναι πέραν των 18 ετών. Με αυτό τον τρόπο ο εξυπηρετητής ξέρει πως ο Α είναι κάτοχος του πιστοποιητικού

  44. Υποδομή Πιστοποίησης Φανερών Κλειδιών • Ιεραρχική Υποδομή • Κάθε πιστοποιούσα αρχή έχει πιστοποιητικό από την αμέσως προηγούμενη αρχή. • Ποιον εμπιστεύεστε για το Root;

  45. Ψηφιακές Υπογραφές με Κοινό Κλειδί Big Brother • Σε κάθε περίπτωση ο Bob αποθηκεύει το μήνυμα P καθώς και το κρυπτογράφημα KBB(A, t, P). • Ένα υπάρξει αμφισβήτηση ότι όντως το μήνυμα στάλθηκε από την Alice, τότε ο Bob • Παρουσιάζει το κρυπτογραφημένο μήνυμα ΚBB(A, t, P) • Καλεί τον BB (τον οποίο όλοι εμπιστεύονται) για να αποκρυπτογραφήσει το μήνυμα • Πως αποδεικνύεται πως το μήνυμα στάλθηκε από την Alice;

  46. Ψηφιακές Υπογραφές με Φανερό Κλειδί • Σε κάθε περίπτωση ο Bob αποθηκεύει το μήνυμα P καθώς και το κρυπτογράφημα DΑ(P). • Ένα υπάρξει αμφισβήτηση ότι όντως το μήνυμα στάλθηκε από την Alice, τότε ο Bob • Παρουσιάζει το κρυπτογραφημένο μήνυμα DA(P) • Χρησιμοποιεί το φανερό κλειδί της Alice για να αποκρυπτογραφήσει το μήνυμα και να δείξει ότι όντως το μήνυμα στάλθηκε από την Alice. • Πως αποδεικνύεται πως το μήνυμα στάλθηκε από την Alice;

  47. Firewalls • Τι συμβαίνει στην περίπτωση ασύρματων δικτύων;

More Related