Αναχαιτίστε τους εισβολείς Νέες προκλήσεις στην Κρυπτογραφία και την Ασφάλεια Καθ. Παύλος Σπυράκης (google search: Paul Spirakis) Ερευνητικό Ακαδημαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών Τομέας Ασφάλειας Υπολογιστικών Συστημάτων & Δικτύων
2 Ασφάλεια (Security) Ευρύτερη περιοχή από την Κρυπτογραφία Ευρύτερη περιοχή από την Κρυπτογραφία Ισχυρή εξάρτηση από την τεχνολογία και το κάθε υλοποιημένο σύστημα Ισχυρή εξάρτηση από την τεχνολογία και το κάθε υλοποιημένο σύστημα Γενικότερο κοινωνικό και διεπιστημονικό ζήτημα Γενικότερο κοινωνικό και διεπιστημονικό ζήτημα
3 Σήμερα Υψηλή πολυπλοκότητα των σύγχρονων υπολογιστικών συστημάτων και δικτύων Υψηλή πολυπλοκότητα των σύγχρονων υπολογιστικών συστημάτων και δικτύων Ανεπάρκεια των παραδοσιακών μέτρων ασφάλειας Ανεπάρκεια των παραδοσιακών μέτρων ασφάλειας Έλλειψη εξειδικευμένων μηχανικών ασφαλείας Έλλειψη εξειδικευμένων μηχανικών ασφαλείας
4 Ελάχιστες απαιτήσεις Συνεχής και αδιάλειπτη παροχή υπηρεσιών Συνεχής και αδιάλειπτη παροχή υπηρεσιών –Προσπέλαση (Access) Ασφάλεια επικοινωνιών/συναλλαγών Ασφάλεια επικοινωνιών/συναλλαγών –Πιστοποίηση (Authentication) Πιστοποίηση (Authentication)Πιστοποίηση (Authentication) –Εξουσιοδότηση (Authorization) Εξουσιοδότηση (Authorization)Εξουσιοδότηση (Authorization) Ακεραιότητα πληροφορίας Ακεραιότητα πληροφορίας –Εμπιστευτικότητα (Confidentiality) Εμπιστευτικότητα (Confidentiality)Εμπιστευτικότητα (Confidentiality) –Ακεραιότητα (Integrity) Ακεραιότητα (Integrity)Ακεραιότητα (Integrity)
5 Απειλές και Επιθέσεις Συνήθως η πηγή τους είναι ευφυής (intelligence) Συνήθως η πηγή τους είναι ευφυής (intelligence) Η έννοια του «αντιπάλου» και των στόχων του (adversary) Η έννοια του «αντιπάλου» και των στόχων του (adversary) Η έννοια της καλής (αποδεκτής) συμπεριφοράς υποσυστημάτων και δράσεων (δικαιώματα και προνόμια) Η έννοια της καλής (αποδεκτής) συμπεριφοράς υποσυστημάτων και δράσεων (δικαιώματα και προνόμια) Τεχνολογικές ad hoc «άμυνες» βάσει εμπειρίας Τεχνολογικές ad hoc «άμυνες» βάσει εμπειρίας
6 Απειλές Denial of Service (DoS attacks) Denial of Service (DoS attacks) Παρακολούθηση δεδομένων (Sniffing) Παρακολούθηση δεδομένων (Sniffing) Χρήση «ψεύτικης ταυτότητας» (Spoofing) Χρήση «ψεύτικης ταυτότητας» (Spoofing) Επιθέσεις με σκοπό την αλλοίωση δεδομένων Επιθέσεις με σκοπό την αλλοίωση δεδομένων Συνδυασμός επιθέσεων (ιοί, worms, back-doors, …) Συνδυασμός επιθέσεων (ιοί, worms, back-doors, …)
7 Spam mail Ανεπιθύμητη αλληλογραφία Ανεπιθύμητη αλληλογραφία Κατάχρηση δικτυακών πόρων, υπολογιστικής ισχύος και χρόνου του παραλήπτη Κατάχρηση δικτυακών πόρων, υπολογιστικής ισχύος και χρόνου του παραλήπτη Κατακόρυφη και συνεχής αύξηση του αριθμού τέτοιων μηνυμάτων Κατακόρυφη και συνεχής αύξηση του αριθμού τέτοιων μηνυμάτων Αντιμετώπιση: antispam filters, έλεγχος του αποστολέα, black lists, Sender Policy Framework Αντιμετώπιση: antispam filters, έλεγχος του αποστολέα, black lists, Sender Policy Framework
8 Viruses, Worms, Trojans Κομμάτια κώδικα που τρέχουν στον υπολογιστή εν αγνοία του χρήστη Κομμάτια κώδικα που τρέχουν στον υπολογιστή εν αγνοία του χρήστη Διαδίδονται: vulnerabilities, , downloads Διαδίδονται: vulnerabilities, , downloads Χρησιμοποιούν κακόβουλα το μολυσμένο σύστημα Χρησιμοποιούν κακόβουλα το μολυσμένο σύστημα Αντιμετώπιση: antivirus, scanners, firewall, updating Αντιμετώπιση: antivirus, scanners, firewall, updating
9 Spyware Διαρροή προσωπικών δεδομένων Διαρροή προσωπικών δεδομένων Εγκαθίστανται μαζί με άλλα προγράμματα Εγκαθίστανται μαζί με άλλα προγράμματα Πιθανά Trojan Horses Πιθανά Trojan Horses Αντιμετώπιση: ενημέρωση του χρήστη, scanners, user level firewall Αντιμετώπιση: ενημέρωση του χρήστη, scanners, user level firewall
10 Αναχαίτιση και Άμυνα Έλλειψη επαρκούς θεμελίωσης Έλλειψη επαρκούς θεμελίωσης Σημαντική επί μέρους πρόοδος (συνήθως τεχνολογική) Σημαντική επί μέρους πρόοδος (συνήθως τεχνολογική) Εκπαίδευση, ενημέρωση, η «αίσθηση του κινδύνου» Εκπαίδευση, ενημέρωση, η «αίσθηση του κινδύνου»
11 Η θεωρία της «περιμέτρου» Περιγραφή των οντοτήτων σε ένα σύστημα Περιγραφή των οντοτήτων σε ένα σύστημα Περιγραφή των ορίων Ασφαλείας (Security Boundary) Περιγραφή των ορίων Ασφαλείας (Security Boundary) Περιγραφή ποιες οντότητες είναι «εντός» και ποιες «εκτός» Περιγραφή ποιες οντότητες είναι «εντός» και ποιες «εκτός» Περιγραφή του τι διαπερνά τα όρια του συστήματος Περιγραφή του τι διαπερνά τα όρια του συστήματος Περιγραφή των καταστάσεων και δυνατών μεταβάσεων Περιγραφή των καταστάσεων και δυνατών μεταβάσεων Περιγραφή των υποθέσεων για δυνητικές εισόδους- εξόδους των καταστάσεων Περιγραφή των υποθέσεων για δυνητικές εισόδους- εξόδους των καταστάσεων
12 Η συνολική αντιμετώπιση Αποτίμηση κινδύνων Αποτίμηση κινδύνων –Προσδιορισμός των πόρων –Προσδιορισμός των απειλών Πολιτική Ασφάλειας Πολιτική Ασφάλειας –Τι είναι πολιτική ασφάλειας και γιατί πρέπει να έχω –Προσδιορισμός του επιπέδου της πολιτικής ασφάλειας –Ποιοι θα εμπλακούν στον προσδιορισμό της πολιτικής Περιγραφή των Κανόνων Ασφάλειας Περιγραφή των Κανόνων Ασφάλειας – – – – Υλοποίηση σχήματος ασφάλειας Υλοποίηση σχήματος ασφάλειας Περισσότερα στο βιβλίο
13 Αντιμετώπιση των προκλήσεων Υποστήριξη των δομών ασφαλείας Υποστήριξη των δομών ασφαλείας Δημιουργία και τήρηση πολιτικών ασφαλείας Δημιουργία και τήρηση πολιτικών ασφαλείας Διαδικασίες αντιμετώπισης συμβάντων Διαδικασίες αντιμετώπισης συμβάντων Ανάπτυξη πρωτοποριακών προσαρμόσιμων εργαλείων Ανάπτυξη πρωτοποριακών προσαρμόσιμων εργαλείων Συνδυασμός υπαρχόντων εργαλείων με σκοπό τη βελτιστοποίηση της αντιμετώπισης (honey pots, φθηνά IDS’s, κλπ) Συνδυασμός υπαρχόντων εργαλείων με σκοπό τη βελτιστοποίηση της αντιμετώπισης (honey pots, φθηνά IDS’s, κλπ)
14 Τυπικές (Formal) Μέθοδοι Περιγραφή της πολιτικής Ασφαλείας σε φυσική γλώσσα Περιγραφή της πολιτικής Ασφαλείας σε φυσική γλώσσα Ορισμός τυπικών (formal) προδιαγραφών του συστήματος Ορισμός τυπικών (formal) προδιαγραφών του συστήματος Μετάβαση από τις προδιαγραφές σε ένα μαθηματικό μοντέλο Μετάβαση από τις προδιαγραφές σε ένα μαθηματικό μοντέλο Υλοποίηση των προδιαγραφών σε υλικό ή λογισμικό Υλοποίηση των προδιαγραφών σε υλικό ή λογισμικό Έλεγχος ορθής λειτουργίας Έλεγχος ορθής λειτουργίας Semantics, Formal correctness Semantics, Formal correctness –Ως τώρα, ανεπαρκής
15 Ερευνητικά Μέτωπα Ανίχνευση επιθέσεων με βάση την «συμπεριφορά» (θυμίζει ΑΙ – δεν έδωσε λύσεις) Ανίχνευση επιθέσεων με βάση την «συμπεριφορά» (θυμίζει ΑΙ – δεν έδωσε λύσεις) Έννοιες Κατανεμημένων Συστημάτων (π.χ. Atomicity, trusted sets, quorums, Byzantine behavior, …) Ίσως η πιο στερεή βάση κάποιας θεωρίας (ACM PODC) Έννοιες Κατανεμημένων Συστημάτων (π.χ. Atomicity, trusted sets, quorums, Byzantine behavior, …) Ίσως η πιο στερεή βάση κάποιας θεωρίας (ACM PODC) Το Internet, ο Ιστός και μοντέλα διάδοσης ιών (πιθανότητες, έννοιες από Φυσική, σωματιδιακή αλληλεπίδραση) Το Internet, ο Ιστός και μοντέλα διάδοσης ιών (πιθανότητες, έννοιες από Φυσική, σωματιδιακή αλληλεπίδραση)
16 Η συνεισφορά της Θεωρίας Παιγνίων Οι αντίπαλοι είναι παίκτες με κάποιες στρατηγικές και δικά τους payoffs Οι αντίπαλοι είναι παίκτες με κάποιες στρατηγικές και δικά τους payoffs Η έννοια της εξελικτικής σταθερότητας (evolutionary stability) Incumbent strategy x Enemy strategy y Η x είναι «εξελικτικά σταθερά» αν u(x, εy+(1-ε)x)>u(y, εy+(1-ε)x) για κάθε y≠x και για κάθε ε u(y, εy+(1-ε)x) για κάθε y≠x και για κάθε ε<ε 0
17 Κρυπτογραφία (και Κρυπτολογία) Μερικά θεμελιώδη σύγχρονα ζητήματα
18 Ρίζες στην Αρχαιότητα Ρίζες στην Αρχαιότητα Μαθηματικά, Πιθανοθεωρία Μαθηματικά, Πιθανοθεωρία Η σύγχρονη Κρυπτογραφία είναι «εφαρμοσμένη» Πολυπλοκότητα Η σύγχρονη Κρυπτογραφία είναι «εφαρμοσμένη» Πολυπλοκότητα Η Χώρα μας υστερεί σημαντικά εδώ (γιατί;) σε αντίθεση με την συγγενή περιοχή Αλγορίθμων και Πολυπλοκότητας Η Χώρα μας υστερεί σημαντικά εδώ (γιατί;) σε αντίθεση με την συγγενή περιοχή Αλγορίθμων και Πολυπλοκότητας
19 «Η e τροποποιεί το μήνυμα ώστε να είναι ακατανόητο από όλους εκτός από τον επιδιωκόμενο παραλήπτη» (Aenias Tacitus, 360π.Χ.) «Η e τροποποιεί το μήνυμα ώστε να είναι ακατανόητο από όλους εκτός από τον επιδιωκόμενο παραλήπτη» (Aenias Tacitus, 360π.Χ.) d( ) : συνάρτηση αποκρυπτογράφησης (decryption) Μ = μήνυμα (μυστικό) Μ = μήνυμα (μυστικό) e(M) : cipher, encryption Συνάρτηση Κρυπτογράφησης e(M) : cipher, encryption Συνάρτηση Κρυπτογράφησης Για κάθε Μ, d(e(M))=M H d( ) δεν είναι γνωστή στον «εχθρό»
20 Πρακτικά, η συνάρτηση κρυπτογράφη- σης e( ) είναι συνάρτηση του Μ και κάποιας παραμέτρου Κ (το κλειδί) e = e(M, K) Πρακτικά, η συνάρτηση κρυπτογράφη- σης e( ) είναι συνάρτηση του Μ και κάποιας παραμέτρου Κ (το κλειδί) e = e(M, K) Πρέπει να υποθέσουμε ότι η «μέθοδος» e ( ) είναι γνωστή σε όλους, για να είναι ελέγξιμη Πρέπει να υποθέσουμε ότι η «μέθοδος» e ( ) είναι γνωστή σε όλους, για να είναι ελέγξιμη Το κλειδί είναι γνωστό στον αποστολέα και στον παραλήπτη μόνο Το κλειδί είναι γνωστό στον αποστολέα και στον παραλήπτη μόνο
21 Μονόδρομες Συναρτήσεις (one way functions) Να είναι υπολογιστικά εύκολο, δοθέντος x, να βρούμε το e(x). Να είναι υπολογιστικά εύκολο, δοθέντος x, να βρούμε το e(x). Να είναι υπολογιστικά δύσκολο, δοθέντος y και της e( ) να βρούμε κάποιο x= e -1 (y) Να είναι υπολογιστικά δύσκολο, δοθέντος y και της e( ) να βρούμε κάποιο x= e -1 (y)Υπάρχουν;
22 Η κερκόπορτα γνωρίζουμε όμως το Κ τότε να είναι εύκολο να αντιστρέψουμε την e( ). (trapdoor functions) Η κερκόπορτα Α ν γνωρίζουμε όμως το Κ τότε να είναι εύκολο να αντιστρέψουμε την e( ). (trapdoor functions) Η Κρυπτογραφία Δημοσίου Κλειδιού Ζεύγος κλειδιών (Δ, Κ) Δ = φανερό, Κ = κρυφό Ζεύγος κλειδιών (Δ, Κ) Δ = φανερό, Κ = κρυφό Όλοι μπορούν να κρυπτογραφήσουν γνωρίζοντας την e( ) και το Δ Όλοι μπορούν να κρυπτογραφήσουν γνωρίζοντας την e( ) και το Δ Όποιος γνωρίζει το Κ μπορεί να αποκρυπτογραφήσει (!) Όποιος γνωρίζει το Κ μπορεί να αποκρυπτογραφήσει (!)
23 Προφανώς τα Δ, Κ «συνδέονται» Προφανώς τα Δ, Κ «συνδέονται» Αλλά γνωρίζοντας το Δ πρέπει να είναι δύσκολο να βρούμε το Κ. (πάλι η έννοια του one-way) Αλλά γνωρίζοντας το Δ πρέπει να είναι δύσκολο να βρούμε το Κ. (πάλι η έννοια του one-way) Βασική Απαίτηση: Να μπορούμε να «κατασκευάζουμε» ζεύγη (Κ, Δ) στα γρήγορα (π.χ. Με τυχαίο τρόπο!) Βασική Απαίτηση: Να μπορούμε να «κατασκευάζουμε» ζεύγη (Κ, Δ) στα γρήγορα (π.χ. Με τυχαίο τρόπο!)
24 Δύσκολα Στιγμιότυπα 1. Να μην «σπάνε» (εγγυημένα) 2. Να τα κατασκευάζουμε εύκολα και γρήγορα (άρα τα πιο πολλά στιγμιότυπα να «μην σπάνε») Υπάρχουν; Ποια είναι; Hard on the average (!) Η έννοια του υπολογιστικά δύσκολου (π.χ. NP- hard) δεν βοηθά, προσκρούει στο (2)
25 Η σύγχρονη Κρυπτογραφία βασίζεται σε αναπόδεικτους ισχυρισμούς! Υποψίες για “hard on the average” 1. Αν ο φυσικός αριθμός n είναι γινόμενο δύο πρώτων p, q, τότε δοθέντος του n είναι (;) δύσκολο να βρούμε τα p, q (το πρόβλημα της παραγοντοποίησης) 2. Αν y=α x (modulo N), τότε δοθέντων φυσικών α, y, N βρες το x (φυσικός) (διακριτός λογάριθμος) (το α πρέπει να είναι «πρωτογενής ρίζα» του Ν)
26 Κβαντικοί Υπολογιστές (μία φρούδα(;) «ελπίδα»... [Peter Shor, 1994]: μας έδωσε έναν γρήγορο αλγόριθμο που λύνει τα δύο «δύσκολα» προβλήματα! Ο αλγόριθμος όμως «τρέχει» σε κβαντικό υπολογιστή Ο αλγόριθμος όμως «τρέχει» σε κβαντικό υπολογιστή Μπορούν να κατασκευαστούν τέτοιοι υπολογιστές; Ίσως όχι (Aaronson, 2001) “non implementable quantum states” Μπορούν να κατασκευαστούν τέτοιοι υπολογιστές; Ίσως όχι (Aaronson, 2001) “non implementable quantum states”
27 Πλέγματα (lattices) Ένα πλέγμα L είναι το σύνολο των ακεραίων γραμμικών συνδυασμών ενός συνόλου κάποιων γραμμικώς ανεξάρτητων ανυσμάτων (βάση). Κάθε πλέγμα έχει ένα «βραχύτερο» μη μηδενικό διάνυσμα (shortest vector) Κάθε πλέγμα έχει ένα «βραχύτερο» μη μηδενικό διάνυσμα (shortest vector) SVP: Δοθέντος του L (δηλαδή μιας βάσης του) βρες το shortest vector SVP: Δοθέντος του L (δηλαδή μιας βάσης του) βρες το shortest vector
28 Το SVP είναι NP-hard (Χρησιμοποιώντας όμως, πιθανοτικές αναγωγές) [Ajtai] Το SVP είναι NP-hard (Χρησιμοποιώντας όμως, πιθανοτικές αναγωγές) [Ajtai] Το SVP είναι δύσκολα προσεγγίσιμο (οι γνωστές προσεγγίσεις έχουν σχεδόν «εκθετικό» λάθος) Το SVP είναι δύσκολα προσεγγίσιμο (οι γνωστές προσεγγίσεις έχουν σχεδόν «εκθετικό» λάθος) Το SVP έχει μεγάλη ιστορία και δόξα (πολλά ανοικτά μέτωπα) Το SVP έχει μεγάλη ιστορία και δόξα (πολλά ανοικτά μέτωπα)
29 Ένδειξη για hardness on average Ένα θαύμα [Ajtai, 1996] One way function βασισμένη σε πλέγματα! Θεώρημα (Ajtai): Αν δεν υπάρχει αλγόριθμος που να προσεγγίζει το SVP για κάθε πλέγμα με πολυωνυμικό λόγο προσέγγισης τότε το SVP είναι δύσκολο να λυθεί ακόμα και για πλέγματα που επιλέγονται με τυχαίο τρόπο από κάποια συγκεκριμένη (και εύκολα δειγματοληπτούμενη) κατανομή.
30 Πιθανοκρατική Κρυπτογραφία Encryption του κάθε bit ξεχωριστά Encryption του κάθε bit ξεχωριστά Σχεδόν ποτέ δεν είναι ίδιες δύο κωδικοποιήσεις του “0” (ή του “1”) στο μήνυμα! Σχεδόν ποτέ δεν είναι ίδιες δύο κωδικοποιήσεις του “0” (ή του “1”) στο μήνυμα! Π.χ. [Ajtai, Dwork] Κρυπτοσύστημα Η ασφάλειά του ισοδύναμη με την «λύση» του SVP (δηλαδή την προσέγγιση του SVP σε πολυωνυμικό χρόνο με πολυωνυμικό λόγο προσέγγισης) Π.χ. [Ajtai, Dwork] Κρυπτοσύστημα Η ασφάλειά του ισοδύναμη με την «λύση» του SVP (δηλαδή την προσέγγιση του SVP σε πολυωνυμικό χρόνο με πολυωνυμικό λόγο προσέγγισης)
31 Άλλα νέα θέματα Πρωτόκολλα «μηδενικής γνώσης» Πρωτόκολλα «μηδενικής γνώσης» Διαμοίραση «μυστικού» σε μεγάλο πλήθος ανεξάρτητων οντοτήτων Διαμοίραση «μυστικού» σε μεγάλο πλήθος ανεξάρτητων οντοτήτων Κρυπτογραφικώς «ασφαλείς» γεννήτριες ψευδοτυχαίων αριθμών Κρυπτογραφικώς «ασφαλείς» γεννήτριες ψευδοτυχαίων αριθμών «Εξωτικά» θέματα (άγνωστης αξίας) Κβαντική Κρυπτογραφία, χρήση DNA για αποκρυπτογράφηση, κλπ «Εξωτικά» θέματα (άγνωστης αξίας) Κβαντική Κρυπτογραφία, χρήση DNA για αποκρυπτογράφηση, κλπ
32 Η ασφάλεια στο ΕΑΙΤΥ Τομέας Ασφάλειας Υπολογιστικών & Δικτυακών Συστημάτων Ε. Βαλεοντής (μεταπτ) Χ. Γιαννακόπουλος (μεταπτ) Θ. Κομνηνός (Msc) Γ. Σταματίου (επίκ. καθ.) Χ. Τσακνάκης (Phd) Έρευνα Σε Κρυπτογραφία και Ασφάλεια Best poster presentation award PODC-2004 “ Best poster presentation award PODC-2004 “ A Software Tool for Distributed Intrusion Detection in Computer Networks” Έκδοση βιβλίων «Σύγχρονη Κρυπτογραφία» Νάστου, Σπυράκης, Σταματίου, Ελληνικά Γράμματα, 2003 «Ασφάλεια Δικτύων & Υπολογιστικών Συστημάτων:Αναχαιτίστε τους εισβολείς» Κομνηνός, Σπυράκης, Ελληνικά Γράμματα, 2002 ICALP 05 Track C “Security”