Aσφάλεια ∆ικτύων info@webart-studios.gr +(30)6981756361 +(30)2112217386 Εθνικής Αντιστάσεως 94 , Περιστέρι , 12135 www.webart-studios.gr
Σηµείωση Το ΕΑΠ είναι υπεύθυνο για την επιµέλεια έκδοσης και την ανάπτυξη των κειµένων σύµφωνα µε τη Μεθοδολογία της εξ Αποστάσεως Εκπαίδευσης. Για την επιστηµονική αρτιότητα και πληρότητα των συγγραµµάτων την αποκλειστική ευθύνη φέρουν οι συγγραφείς, κριτικοί αναγνώστες και ακαδηµαϊκοί υπεύθυνοι που ανέλαβαν το έργο αυτό.
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών
ΠΛHPOΦOPIKH Θεµατική Ενότητα
ΠPOΣTAΣIA KAI AΣΦAΛEIA ΣYΣTHMATΩN YΠOΛOΓIΣTΩN Τόµος B'
Aσφάλεια ∆ικτύων ΣΩΚΡΑΤΗΣ KΑΤΣΙΚΑΣ Kαθηγητής Tµήµατος Mηχανικών Πληροφοριακών και Eπικοινωνιακών Συστηµάτων Πανεπιστηµίου Aιγαίου
ΠATPA 2001
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών ΠΛHPOΦOPIKH Θεµατική Ενότητα
ΠPOΣTAΣIA KAI AΣΦAΛEIA ΣYΣTHMATΩN YΠOΛOΓIΣTΩN Τόµος B' Aσφάλεια ∆ικτύων Συγγραφή ΣΩKPATHΣ KATΣIKAΣ Kαθηγητής Tµήµατος Mηχανικών Πληροφοριακών και Eπικοινωνιακών Συστηµάτων Πανεπιστηµίου Aιγαίου Ακαδηµαϊκός Υπεύθυνος για την επιστηµονική επιµέλεια του τόµου ΠAYΛOΣ ΣΠYPAKHΣ Καθηγητής Tµήµατος Mηχανικών H/Y & Πληροφορικής Πανεπιστηµίου Πατρών Επιµέλεια στη µέθοδο της εκπαίδευσης από απόσταση AXIΛΛEAΣ KAMEAΣ Γλωσσική Επιµέλεια IΩANNHΣ ΓAΛANOΠOYΛOΣ Τεχνική Επιµέλεια EΣΠI EK∆OTIKH EΠE Καλλιτεχνική Επιµέλεια, Σελιδοποίηση TYPORAMA Συντονισµός ανάπτυξης εκπαιδευτικού υλικού και γενική επιµέλεια των εκδόσεων ΟΜΑ∆Α ΕΚΤΕΛΕΣΗΣ ΕΡΓΟΥ ΕΑΠ / 1997–2001 ISBN: 960–538–227–X Kωδικός Έκδοσης: ΠΛH 35/2 Copyright 2001 για την Ελλάδα και όλο τον κόσµο ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Οδός Παπαφλέσσα & Υψηλάντη, 26222 Πάτρα – Τηλ: (0610) 314094, 314206 Φαξ: (0610) 317244 Σύµφωνα µε το Ν. 2121/1993, απαγορεύεται η συνολική ή αποσπασµατική αναδηµοσίευση του βιβλίου αυτού ή η αναπαραγωγή του µε οποιοδήποτε µέσο χωρίς την άδεια του εκδότη.
¶ÂÚȯfiÌÂÓ· Πρόλογος
.............................................................................................................................................................................
11
K∂º∞§∞π√ 1
∏ ·Ó¿ÁÎË ÚÔÛÙ·Û›·˜ ÙˆÓ ‰ÈÎÙ‡ˆÓ
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις .................................................................................................................................... 15 1.1
Η σηµασία των δικτύων
.........................................................................................................................
17
1.1.1 H κοινωνία της πληροφορίας ............................................................................................... 17 1.1.2 Tο ηλεκτρονικό εµπόριο 1.2
..........................................................................................................
19
Eπιθέσεις που έµειναν στην ιστορία ............................................................................................ 23
Eισαγωγικές παρατηρήσεις .................................................................................................................................... 23 1.2.1 O έλικας του διαδικτύου
..........................................................................................................
24
1.2.2 Tο αυγό του κούκου ..................................................................................................................... 25 1.2.3 Ένα απόγευµα µε τον Berferd
.............................................................................................
1.2.4 To A & M University του Texas
.......................................................................................
27
1.2.5 H περίπτωση του Kevin Mitnick
......................................................................................
27
1.2.6 Koινά χαρακτηριστικά των επιθέσεων 1.3
25
........................................................................
29
Tι σηµαίνει «Aσφάλεια δικτύων» .................................................................................................. 31
Σύνοψη
...................................................................................................................................................................................
32
Bιβλιογραφία ..................................................................................................................................................................... 32 K∂º∞§∞π√ 2
AÚ¯ÈÙÂÎÙÔÓÈ΋ AÛÊ¿ÏÂÈ·˜ ¢ÈÎÙ‡ˆÓ OSI
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις .................................................................................................................................... 35 2.1
Bασικές αρχές δικτύων
...........................................................................................................................
37
Eισαγωγικές παρατηρήσεις .................................................................................................................................... 37 2.1.1 Στοιχεία δικτύων ............................................................................................................................. 38
A™º∞§∂π∞ ¢π∫∆Àø¡
6
2.1.2 Eπικοινωνίες
.......................................................................................................................................
38
2.1.3 Πρωτόκολλα
.......................................................................................................................................
40
2.1.4 Tο µοντέλο αναφοράς OSI
....................................................................................................
41
..................................................................................................................................................................
49
2.2
Aπειλές
2.3
Yπηρεσίες ασφάλειας στο µοντέλο OSI
..................................................................................
2.3.1 Yπηρεσίες εξασφάλισης συνεχούς λειτουργίας 2.3.2 Yπηρεσίες προστασίας ακεραιότητας
51
...................................................
52
..........................................................................
52
2.3.3 Yπηρεσίες αυθεντικοποίησης .............................................................................................. 53 2.3.4 Yπηρεσίες ελέγχου πρόσβασης
.........................................................................................
2.3.5 Yπηρεσίες προστασίας εµπιστευτικότητας
.............................................................
53
2.3.6 Yπηρεσίες υποστήριξης µη αµφισβήτησης
.............................................................
54
.....................................................................
54
..............................................................................
58
2.3.7 Yπηρεσίες ασφάλειας στα επίπεδα OSI 2.4
53
Mηχανισµοί ασφάλειας στο µοντέλο OSI
Eισαγωγικές παρατηρήσεις .................................................................................................................................... 58 2.4.1 Kρυπτογράφηση .............................................................................................................................. 59 2.4.2 Ψηφιακές υπογραφές 2.4.3 Έλεγχος πρόσβασης
..................................................................................................................
59
.....................................................................................................................
59
2.4.4 Aκεραιότητα δεδοµένων .......................................................................................................... 60 2.4.5 Aνταλλαγή πληροφοριών αυθεντικοποίησης 2.4.6 Συµπλήρωση κίνησης
........................................................
60
.................................................................................................................
61
2.4.7 Έλεγχος δροµολόγησης .............................................................................................................. 61 2.4.8 Συµβολαιογράφος............................................................................................................................ 61 2.4.9 Σχέση µεταξύ υπηρεσιών και µηχανισµών Σύνοψη
..............................................................
61
...................................................................................................................................................................................
62
Bιβλιογραφία ..................................................................................................................................................................... 63
¶EPIEXOMENA
7
∂º∞§∞π√ 3
AÚ¯ÈÙÂÎÙÔÓÈ΋ AÛÊ¿ÏÂÈ·˜ Internet
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις .................................................................................................................................... 65 3.1
To µοντέλο του Internet
..........................................................................................................................
67
3.1.1 To επίπεδο προσπέλασης δικτύου .................................................................................... 67 3.1.2 Tο επίπεδο Internet
3.2
.......................................................................................................................
68
3.1.3 To επίπεδο µεταφοράς
...............................................................................................................
73
3.1.4 To επίπεδο εφαρµογής
...............................................................................................................
76
Πρωτόκολλα ασφάλειας επιπέδου Internet ............................................................................ 79 3.2.1 Tα πρώτα πρωτόκολλα
..............................................................................................................
79
3.2.2 H οµάδα εργασίας IPSEC της Internet Engineering Task Force ........... 80 3.2.3 Eπισκόπηση της αρχιτεκτονικής 3.3
.......................................................................................
81
Πρωτόκολλα ασφάλειας επιπέδου µεταφοράς .................................................................... 88 3.3.1 Tα πρώτα πρωτόκολλα
..............................................................................................................
3.3.2 Το πρωτόκολλο Secure Shell
...............................................................................................
88
.......................................................................................................
90
...................................................................................................................................................................................
94
3.3.3 Το πρωτόκολλο SSL/TLS Σύνοψη
88
Bιβλιογραφία ..................................................................................................................................................................... 95 K∂º∞§∞π√ 4
AÛÊ¿ÏÂÈ· ÛÙÔ E›Â‰Ô EÊ·ÚÌÔÁ‹˜
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις .................................................................................................................................... 98 4.1
Telnet
...................................................................................................................................................................
4.1.1 Secure RPC Authentication
...............................................................................................
100 100
4.1.2 Secure Telnet ................................................................................................................................... 101 4.2
Hλεκτρονικό ταχυδροµείο
.................................................................................................................
102
4.2.1 Privacy enhanced mail ............................................................................................................ 104
A™º∞§∂π∞ ¢π∫∆Àø¡
8
4.2.2 Pretty good privacy
...................................................................................................................
107
4.2.3 S/MIME ............................................................................................................................................... 108 4.3
Συναλλαγές WWW .................................................................................................................................. 113 4.3.1 To πρωτόκολλο S–HTTP ...................................................................................................... 113 4.3.2 Aρχιτεκτονική επέκτασης ασφάλειας ........................................................................ 115 4.3.3 Aσφάλεια κινητού κώδικα 4.3.4 Aσφάλεια Java
..................................................................................................
115
...............................................................................................................................
116
4.3.5 Aνωνυµία και ιδιωτική ζωή ................................................................................................ 117 4.3.6 Προστασία πνευµατικής ιδιοκτησίας ......................................................................... 119 4.4
Συστήµατα ηλεκτρονικών πληρωµών
.....................................................................................
126
4.4.1 Hλεκτρονικό χρήµα ................................................................................................................... 128 4.4.2 Hλεκτρονικές επιταγές
...........................................................................................................
4.4.3 Πληρωµές µε πιστωτικές κάρτες 4.4.4 Mικροπληρωµές
131
...................................................................................
133
...........................................................................................................................
138
4.5
Aσφάλεια EDI .............................................................................................................................................. 142
4.6
∆ιαχείριση δικτύων
.................................................................................................................................
146
4.6.1 Πρότυπα διαχείρισης OSI .................................................................................................... 146 4.6.2 Πρότυπα διαχείρισης Internet
..........................................................................................
147
Σύνοψη ................................................................................................................................................................................ 154 Bιβλιογραφία .................................................................................................................................................................. 155 K∂º∞§∞π√ 5
°ÂÓÈÎÂ˘Ì¤Ó· ™˘ÛÙ‹Ì·Ù· AÛÊ¿ÏÂÈ·˜ EÊ·ÚÌÔÁÒÓ
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά, Eισαγωγικές παρατηρήσεις ................................................................................................................................ 157 5.1
Συστήµατα αυθεντικοποίησης σε κατανεµηµένα υπολογιστικά περιβάλλοντα ................................................................................................................................................ 159 5.1.1 Kerberos 5.1.2 NetSP
..............................................................................................................................................
160
.....................................................................................................................................................
162
¶EPIEXOMENA
9
5.1.3 SPX ........................................................................................................................................................... 165 5.1.4 TESS
......................................................................................................................................................
5.1.5 SESAME 5.2
............................................................................................................................................
∆ικτυακά αναχώµατα
............................................................................................................................
5.2.1 Xαρακτηριστικά αναχωµάτων 5.2.2 Tύποι αναχωµάτων
168 171
.........................................................................................
172
....................................................................................................................
175
5.2.3 ∆ιαµορφώσεις αναχωµάτων 5.3
167
..............................................................................................
Συστήµατα αναγνώρισης εισβολών
..........................................................................................
5.3.1 Mοντέλα ανίχνευσης εισβολών
......................................................................................
5.3.2 Tεχνολογίες συστηµάτων ανίχνευσης εισβολών
.............................................
180 185 186 189
5.3.3 Tα χαρακτηριστικά ενός καλού συστήµατος ανίχνευσης εισβολών ............................................................................................................... 196 Σύνοψη ................................................................................................................................................................................ 199 Bιβλιογραφία .................................................................................................................................................................. 200 Eπίλογος
............................................................................................................................................................................
201
Απαντήσεις ασκήσεων αυτοαξιολόγησης ............................................................................................ 203 Aπαντήσεις δραστηριοτήτων
..........................................................................................................................
211
Bιβλιογραφικές προτάσεις ................................................................................................................................. 239 Γλωσσάριο
......................................................................................................................................................................
243
¶ÚfiÏÔÁÔ˜ Άρχισα να ασχολούµαι ερευνητικά µε το αντικείµενο της ασφάλειας δικτύων γύρω στο 1995, εξετάζοντας θέµατα κυρίως σχετικά µε ταυτοποίηση και αυθεντικοποίηση σε κατανεµηµένα περιβάλλοντα και σχετικά µε τις υποδοµές δηµόσιου κλειδιού. Το καλοκαίρι του 1996 ανέλαβα καθήκοντα Προέδρου της Οµάδας Εργασίας για την Ασφάλεια ∆ικτύων (Working Group 11.4 on Network Security) της Τεχνικής Επιτροπής 11 για την Ασφάλεια Πληροφοριακών και Επικοινωνιακών Συστηµάτων (Technical Committee 11, Information and Communication Systems Security) της ∆ιεθνούς Οµοσπονδίας Επεξεργασίας Πληροφοριών (International Federation for Information Processing). Στην οµάδα εργασίας συµµετείχαν όλα τα σήµερα γνωστά ονόµατα στο χώρο ασφάλειας δικτύων, όπως ο Gene Spafford (προηγούµενος Πρόεδρος), o Rolf Oppliger, o Gene Schultz κ.ά. Έκπληξη, λοιπόν, µεγάλη µού προξένησε το γεγονός ότι ένα από τα πρώτα ζητήµατα που τέθηκαν προς συζήτηση στην οµάδα εργασίας ήταν το «τι ακριβώς είναι και τι δεν είναι η ασφάλεια δικτύων». Σήµερα, παρ’ όλες τις ραγδαίες εξελίξεις στον τοµέα, φοβάµαι ότι το ερώτηµα εκείνο παραµένει –µερικώς τουλάχιστον– αναπάντητο. Το βιβλίο που κρατάτε αντικατοπτρίζει τη δική µου άποψη (και άλλων φυσικά) για το τι είναι και πώς πρέπει να παρουσιάζεται στους φοιτητές η ασφάλεια δικτύων. Η δοµή αυτή της ύλης και ο τρόπος παρουσίασής της µε βάση τα επίπεδα του µοντέλου αναφοράς OSI έχει δοκιµαστεί διδακτικά από µένα µόνο σε εντατικά µαθήµατα µεταπτυχιακού επιπέδου, µε πολύ καλά αποτελέσµατα. Ελπίζω η επιλογή αυτή να δικαιωθεί και από τη χρήση της στο βιβλίο αυτό του ΕΑΠ. Το βιβλίο είναι δοµηµένο σε πέντε κεφάλαια. Στο πρώτο, εισαγωγικό, κεφάλαιο θεµελιώνεται η ανάγκη για προστασία των πληροφοριών που διακινούνται µέσω δικτύων, καθώς και των ίδιων των δικτύων. Η προσέγγιση είναι διπλή: Από τη µια, παρουσιάζεται η έκταση και η σηµασία της ύπαρξης δικτύων στη σηµερινή κοινωνία και, από την άλλη, γνωστά παραδείγµατα επιθέσεων κατά πληροφοριακών συστηµάτων που εκδηλώθηκαν µέσω δικτύων. Ως εισαγωγικό κεφάλαιο θεωρείται µικρής δυσκολίας. Το πρώτο µέρος του δεύτερου κεφαλαίου έχει σκοπό να θυµίσει µάλλον, παρά να διδάξει, στον αναγνώστη µερικές βασικές αρχές δικτύων, ώστε να γίνει πιο εύκολη η παρακολούθηση του υπόλοιπου βιβλίου. Το δεύτερο µέρος του κεφαλαίου εισάγει τον αναγνώστη στην ασφάλεια δικτύων σύµφωνα µε το µοντέλο αναφοράς OSI. Θα χαρακτήριζα και το κεφάλαιο αυτό ως µικρής ή το πολύ µέτριας δυσκολίας. Ωστόσο, προσοχή πρέπει να δοθεί στο να κάνει κτήµα του ο αναγνώστης τις νέες έννοιες που παρουσιάζονται στο κεφάλαιο αυτό.
12
A™º∞§∂π∞ ¢π∫∆Àø¡
Μετά τη συζήτηση του µοντέλου OSI ακολουθεί, στο τρίτο κεφάλαιο, η γνωριµία µας µε τα πρωτόκολλα ασφάλειας των επιπέδων Internet και µεταφοράς του µοντέλου Internet. Η ύλη του κεφαλαίου είναι τεχνική, αλλά όχι ιδιαίτερα δύσκολη. Στο τέταρτο κεφάλαιο αναφερόµαστε σε πρωτόκολλα και συστήµατα ασφάλειας στο επίπεδο εφαρµογής. Το κεφάλαιο περιγράφει πρωτόκολλα ασφαλούς προσπέλασης τερµατικού από απόσταση, πρωτόκολλα ασφαλούς ηλεκτρονικού ταχυδροµείου, πρωτόκολλα ασφαλών συναλλαγών WWW και συναφή θέµατα, συστήµατα ηλεκτρονικών πληρωµών, ασφαλείς συναλλαγές EDI και, τέλος, συστήµατα ασφαλούς διαχείρισης δικτύων. Η έκταση του κεφαλαίου αυτού είναι ασυνήθιστα µεγάλη. Επειδή όµως τα θέµατα που προσεγγίζουµε είναι πολύ διαφορετικά µεταξύ τους, δεν είναι καθόλου απαραίτητο να µελετήσετε όλο το κεφάλαιο µε µιας. Αντίθετα, θα συνιστούσα η µελέτη σας να γίνει ανά ενότητα. Στο πέµπτο και τελευταίο κεφάλαιο ασχολούµαστε µε τη δεύτερη επιλογή παροχής υπηρεσιών ασφάλειας στο επίπεδο εφαρµογής, δηλαδή µε τη χρήση γενικευµένων συστηµάτων ασφάλειας. Γνωρίζουµε τρεις κατηγορίες τέτοιων γενικευµένων συστηµάτων: τα συστήµατα αυθεντικοποίησης σε κατανεµηµένα υπολογιστικά περιβάλλοντα, τα δικτυακά ηλεκτρονικά αναχώµατα και τα συστήµατα ανίχνευσης εισβολών. Τα θέµατα αυτά είναι από τα πιο δηµοφιλή στο χώρο της ασφάλειας δικτύων και αποτελούν αντικείµενα έντονης ερευνητικής δραστηριότητας. Έτσι, ο βαθµός δυσκολίας τους είναι κάπως αυξηµένος. Πάντα µού ήταν δύσκολο να γράψω το κοµµάτι εκείνο του προλόγου στο οποίο οι συγγραφείς συνηθίζεται να ευχαριστούν αυτούς που τους βοήθησαν στο συγγραφικό τους έργο. Η δυσκολία µου πηγάζει από το ότι µου είναι σχεδόν αδύνατον να τους εντοπίσω όλους, αφού το βιβλίο που κρατάτε στα χέρια σας είναι µεν το αποτέλεσµα της δικής µου συγγραφικής δουλειάς, αλλά αυτή είναι, µε τη σειρά της, το αποτέλεσµα µιας µακρόχρονης διαδικασίας καθορισµού και σχηµατισµού της γνώσης µου, της σκέψης µου αλλά και της γενικότερης προσωπικότητάς µου, διαδικασία στην οποία έχουν συντελέσει –άλλος πολύ άλλος λιγότερο– πάρα πολλοί άνθρωποι. Αφού όµως δεν είναι δυνατόν να τους ευχαριστήσω όλους αυτούς, θα περιοριστώ να ευχαριστήσω την Οµάδα Εκτέλεσης Έργου του ΕΑΠ για τη µεθοδική τους δουλειά και τις εύστοχες παρατηρήσεις και υποδείξεις τους κατά τη συγγραφή του βιβλίου αυτού. Επίσης, ευχαριστώ όλους τους φοιτητές της σειράς των θερινών σχολείων Intensive Programme on Information and Communication Systems Security (Βιέννη 1998, Χίος 1999, Στοκχόλµη 2000) για την αποφασιστική τους συµβολή στη διαµόρφωση του τρόπου παρουσίασης του υλικού του βιβλίου. Το συνεργάτη µου, υποψήφιο διδάκτορα του Τµήµατος Πληροφορικής του Οικονοµικού Πανεπιστηµίου Αθηνών και
¶PO§O°O™
13
ελεγκτή της Ανεξάρτητης Αρχής Προστασίας Προσωπικών ∆εδοµένων, Κώστα Μουλίνο, που ανέλαβε να βρει ενδεικτικές απαντήσεις στις δραστηριότητες του βιβλίου –και µάλιστα σε πολύ περιορισµένο χρόνο– ευχαριστώ ιδιαίτερα. Τέλος, και ίσως πιο πολύ απ’ όλους, ευχαριστώ τη γυναίκα µου Άννα και τα παιδιά µου, Κωνσταντίνο και Ελισάβετ–Μαρία, που δε διαµαρτυρήθηκαν όσο θα έπρεπε –και όσο θα ήθελαν– όταν έγραφα το βιβλίο αυτό αντί ν’ ασχολούµαι µαζί τους. Σας παραδίνω το βιβλίο µε την παράκληση να το κρίνετε όσο αυστηρά νοµίζετε, αλλά πάντα επιστηµονικά και αντικειµενικά. Θα είναι χαρά µου να γίνω κοινωνός της όποιας κριτικής σας – θετικής ή αρνητικής. Καλή µελέτη! Σωκράτης Κ. Κάτσικας Oκτώβριος 2000
∫
∂
H AÓ¿ÁÎË ¶ÚÔÛÙ·Û›·˜ ÙˆÓ ¢ÈÎÙ‡ˆÓ ™ÎÔfi˜
1 º
Το εισαγωγικό αυτό κεφάλαιο έχει σκοπό να θεµελιώσει την ανάγκη για προστασία των πληροφοριών που διακινούνται µέσω δικτύων, καθώς και των ίδιων των δικτύων.
¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù· Όταν θα έχετε τελειώσει τη µελέτη του κεφαλαίου αυτού, θα µπορείτε να: • αναφέρετε έξι τουλάχιστον λόγους για τους οποίους η ύπαρξη δικτύων είναι σηµαντική για τη σύγχρονη κοινωνία • αναφέρετε δύο λόγους για τους οποίους η προστασία των πληροφοριών που διατρέχουν τα δίκτυα, όπως και η προστασία των ίδιων των δικτύων είναι απολύτως απαραίτητη • περιγράψετε πέντε γνωστές επιθέσεις που εκδηλώθηκαν µέσω δικτύων εναντίον πληροφοριακών συστηµάτων • εξηγήσετε τι πραγµατεύεται η επιστηµονική περιοχή της ασφάλειας δικτύων
ŒÓÓÔȘ ÎÏÂȉȿ • δίκτυα, • ασφάλεια, • προστασία, • επιθέσεις
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Προβλήµατα και προτάσεις για λύσεις σε σχέση µε την ασφάλεια πληροφοριών και την προστασία της ιδιωτικής ζωής εµφανίζονται όλο και συχνότερα και απασχολούν κυβερνήσεις, επιχειρήσεις, ερευνητές, και γενικότερα το κοινό. Μέχρι πρόσφατα, ζητήµατα όπως µέτρα κατά των παρεισφρήσεων σε δίκτυα υπολογιστών ή τα συγκριτικά πλεονεκτήµατα και µειονεκτήµατα συγκεκριµένων τεχνικών κρυπτογράφησης προ-
∞
§
∞
π
√
16
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
σέλκυαν το ενδιαφέρον µόνο των ειδικών. Ωστόσο, η κατάσταση έχει αλλάξει άρδην τα τελευταία χρόνια, αφού σχόλια για αντιφατικά πρότυπα κρυπτογράφησης, φαινόµενα υποκλοπής συνθηµατικών και παρεισφρήσεων στο διαδίκτυο και ρεπορτάζ για την καταδίωξη και σύλληψη διάσηµων «κακοποιών του κυβερνοχώρου» βρίσκουν το δρόµο τους στις πρώτες σελίδες των εφηµερίδων. Η αυξηµένη σηµασία και προσοχή που δίνεται στην ασφάλεια πληροφοριών και την προστασία της ιδιωτικής ζωής αντικατοπτρίζουν το πλήθος των θεσµικών, κοινωνικών και τεχνολογικών αλλαγών, που έκαναν τις τεχνολογίες πληροφοριών και επικοινωνιών κρίσιµες για την καθηµερινή µας ζωή. Βρισκόµαστε στη φάση της µετάπτωσης σε µια κοινωνία που γίνεται σιγά σιγά εξαρτηµένη από την πληροφορία και τη δικτύωση. Στο κεφάλαιο αυτό ακολουθούµε µια διπλή προσέγγιση: Από τη µια, παρουσιάζεται η έκταση και η σηµασία της ύπαρξης δικτύων στη σηµερινή κοινωνία και, από την άλλη, εκθέτονται γνωστά παραδείγµατα επιθέσεων κατά πληροφοριακών συστηµάτων που εκδηλώθηκαν µέσω δικτύων. Οι δύο ενότητες του κεφαλαίου αντιστοιχούν στις δύο κατευθύνσεις της προσέγγισης αυτής. Η τρίτη, και τελευταία, ενότητα του κεφαλαίου προσδιορίζει το αντικείµενο που θα µας απασχολήσει στο βιβλίο αυτό.
1.1 H ™∏ª∞™π∞ ∆ø¡ ¢π∫∆Àø¡
1.1 H ™ËÌ·Û›· ÙˆÓ ‰ÈÎÙ‡ˆÓ
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Η χρήση των δικτύων από επιχειρήσεις συνεχίζει να αυξάνεται και επενδύσεις σε τεχνολογίες ηλεκτρονικού εµπορίου και ηλεκτρονικού χρήµατος υλοποιούνται καθηµερινά και µε ταχύτατα αυξανόµενους ρυθµούς. Η δηµόσια διοίκηση συνεχίζει να επεκτείνει τόσο το πεδίο εφαρµογής όσο και το µέγεθος των δικτυακών της συνδέσεων. Επιπλέον, οι τεχνολογίες πληροφοριών και επικοινωνιών εµφανίζονται απαρέγκλιτα σε οποιοδήποτε σχέδιο βελτίωσης της αποτελεσµατικότητας της λειτουργίας της δηµόσιας διοίκησης. 1.1.1 ∏ ∫ÔÈÓˆÓ›· Ù˘ ÏËÚÔÊÔÚ›·˜
Το Συµβούλιο της Ευρώπης, στη συνεδρίασή του το ∆εκέµβριο του 1993 στις Βρυξέλλες, αποφάσισε να αναθέσει σε µια επιτροπή υψηλού επιπέδου, µε πρόεδρο τον Martin Bangemann, επίτροπο της Ευρωπαϊκής Επιτροπής, το έργο της σύνταξης µιας έκθεσης µε θέµα «Ευρώπη και η Παγκόσµια Κοινωνία της Πληροφορίας. Συστάσεις προς το Συµβούλιο της Ευρώπης». Η έκθεση χρησιµοποιήθηκε ως βάση της συζήτησης στη Σύνοδο της Κέρκυρας (24–25 Ιουνίου 1994). Στην έκθεση, γνωστή πια ως «Έκθεση Bangemann», αναφέρονται τα εξής: «Σ’ ολόκληρο τον κόσµο, οι τεχνολογίες πληροφοριών και επικοινωνιών προκαλούν µια νέα βιοµηχανική επανάσταση, ήδη εξίσου σηµαντική και εκτεταµένη όσο –τουλάχιστον– και οι προηγούµενες. Είναι µια επανάσταση βασισµένη στην πληροφορία, που αντιπροσωπεύει αυτή καθαυτή την ανθρώπινη γνώση. Η τεχνολογική πρόοδος µας επιτρέπει τώρα να επεξεργαζόµαστε, να αποθηκεύουµε, να ανακτούµε και να µεταδίδουµε πληροφορία σε οποιαδήποτε µορφή θέλουµε: προφορική, γραπτή ή οπτική, χωρίς περιορισµούς απόστασης, χρόνου και όγκου. Η επανάσταση αυτή προσθέτει τεράστιες νέες δυνατότητες στην ανθρώπινη νοηµοσύνη και µεταβάλλει τον τρόπο που ζούµε και που εργαζόµαστε». Από τότε, ο όρος «Κοινωνία της Πληροφορίας» µπήκε για τα καλά στο καθηµερινό λεξιλόγιο εκατοµµυρίων Ευρωπαίων. Αλλά τι ακριβώς είναι η Κοινωνία της Πληροφορίας; Στην ουσία αποτελείται από τρία επάλληλα και πολύ στενά συνδεµένα στρώµατα τεχνολογίας: • ένα βασικό δίκτυο επικοινωνιών, • ένα σύνολο υπηρεσιών γενικής φύσης (π.χ. ηλεκτρονικό ταχυδροµείο, αλληλεπιδραστικό video κτλ.) • εφαρµογές, που µπορούν να κυµαίνονται από πραγµατοποίηση τραπεζικών εργασιών από απόσταση (telebanking) µέχρι ιδεατή ιατρική (virtual medicine).
17
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
18
Η εξέλιξη αυτή έχει δυναµικό πολύ µεγαλύτερο απ’ ό,τι µια αποκλειστικά τεχνολογικής φύσης καινοτοµία, όπως, για παράδειγµα, η συσκευή τηλεµοιοτυπίας (fax). Όταν, σύντοµα στο µέλλον, θα δούµε τους οργανισµούς τηλεπικοινωνιών να µεταδίδουν τηλεοπτικά σήµατα και τις εταιρείες καλωδιακής τηλεόρασης να προσφέρουν υπηρεσίες τηλεφωνίας, τα όρια µεταξύ µερικών από τους µεγαλύτερους τοµείς παροχής υπηρεσιών θα αρχίσουν να γίνονται δυσδιάκριτα. Παράλληλα, η Κοινωνία της Πληροφορίας θα βοηθήσει στην άρση της αποµόνωσης στην περιφέρεια, θα διευκολύνει την ένταξη των ατόµων µε ειδικές ανάγκες στο κοινωνικό γίγνεσθαι, θα ενισχύσει την ανάνηψη περιοχών που βρίσκονται σε οικονοµική ύφεση και θα βελτιώσει την αποτελεσµατικότητα των µεταφορών, των υπηρεσιών υγείας, της δηµόσιας διοίκησης, ενώ θα µεταβάλει επαναστατικά τους τρόπους µε τους οποίους οι άνθρωποι επικοινωνούν και εκφράζουν τη δηµιουργικότητα και την πολιτιστική τους ταυτότητα. Η πιο συνηθισµένη και γνωστή έκφραση της Κοινωνίας των Πληροφοριών (ή υπερλεωφόρου πληροφοριών, όπως θέλουν το όρο οι Αµερικανοί, αφαιρώντας ή αγνοώντας την κοινωνική διάσταση του φαινοµένου) είναι το διαδίκτυο (Internet). Το διαδίκτυο γνωρίζει εκρηκτική εξάπλωση και ανάπτυξη τα τελευταία χρόνια. Στο Σχήµα 1.1 µπορείτε να δείτε τα ποσοστά αύξησης των κόµβων που είναι συνδεµένοι στο διαδίκτυο, ανά γεωγραφική περιοχή, µεταξύ των ετών 1995 και 1996. Στο διαδίκτυο είναι τώρα συνδεµένοι υπολογιστές που βρίσκονται σε περισσότερες από 85 χώρες, ενώ εκτιµάται ότι ο αριθµός των ατόµων που συνδέονται σ’ αυτό είναι (Σεπτέµβριος 1997) γύρω στα 89.000.000, από τα οποία τα 54.000.000 στη Βόρεια Αµερική, τα 18.000.000 στην Ευρώπη και τα 14.000.000 στην Ασία. Παράλληλα µε την αριθµητική αύξηση των ανθρώπων που συµµετέχουν σ’ αυτή την έκφραση της Κοινωνίας της Πληροφορίας, ταχύτατα αυξανόµενη είναι και η διαθέσιµη ποικιλία πηγών πληροφορίας και υπηρεσιών.
Aµερική
181
HΠA
93
Eυρώπη
90
Bρετανία
99
Γερµανία ™¯‹Ì· 1.1
Ποσοστά αύξησης κόµβων συνδεµένων στο διαδίκτυο.
56
Aσία-Eιρηνικός Ωκεανός
321
Iαπωνία
211 0
100
200
300
400
1.1 H ™∏ª∞™π∞ ∆ø¡ ¢π∫∆Àø¡
19
Ποιες είναι οι προοπτικές για το ορατό µέλλον; Οι παροχείς υπηρεσιών διαδικτύου πρέπει να είναι σε θέση το 2003 να παρέχουν σύνδεση στο διαδίκτυο σε 200 εκατοµµύρια οικιακούς καταναλωτές, οι οποίοι θα χρειάζονται εύρος ζώνης 8 Mbps για να µπορέσουν να παρακολουθήσουν, µέσω 72 κατοπτρικών εγκαταστάσεων (mirror sites), σε όλη την υδρόγειο, την παγκόσµια πρεµιέρα µιας ταινίας, µε χρέωση, σε 139 χώρες και σε διάστηµα 12 ωρών. Η τεράστια αυτή διασυνδεσιµότητα, σε συνδυασµό µε την αυξανόµενη εξάρτηση τόσο του δηµόσιου όσο και του ιδιωτικού τοµέα από την πληροφορία και τα δίκτυα, οδηγεί σε µνηµειώδεις κινδύνους. Σχεδόν οποιοσδήποτε µπορεί να φτάσει στο δίκτυο, και σχεδόν οποιοσδήποτε µπορεί να παρεισφρήσει σ’ αυτό. Έτσι, λοιπόν, γίνεται επιτακτική η ανάγκη για ύπαρξη ισχυρών µέτρων εξασφάλισης της πληροφορίας και προστασίας της ιδιωτικής ζωής. ¢Ú·ÛÙËÚÈfiÙËÙ· 1.1 Μελετήστε την έκθεση της επιτροπής Bangemann. Γράψτε µια έκθεση για τις απαιτήσεις ασφάλειας που προκύπτουν από τα διαλαµβανόµενα σ’ αυτήν.
1.1.2 TÔ HÏÂÎÙÚÔÓÈÎfi ÂÌfiÚÈÔ
Από τη σκοπιά των επιχειρήσεων, το δίκτυο χωρίζεται σε τρεις επιχειρηµατικές περιοχές: το εσωτερικό δίκτυο (intranet), το εξωτερικό δίκτυο (extranet) και το διαδίκτυο (internet). Αυτά διακρίνονται ως εξής: • Στο περιβάλλον του εσωτερικού δικτύου όλοι οι χρήστες βρίσκονται κάτω από τον έλεγχο ενός και µοναδικού οργανισµού. Οι κόµβοι ανήκουν σε υπαλλήλους ή υπεργολάβους, που όλοι τους έχουν ελεγχόµενες συµβατικές σχέσεις µε το τελικό σύστηµα (host). • Στο περιβάλλον του εξωτερικού δικτύου οι χρήστες επεκτείνονται και περιλαµβάνουν τους πελάτες, τους προµηθευτές και τους συνεταίρους, µε τους οποίους ο ιδιοκτήτης του τελικού συστήµατος έχει συµβατική σχέση. • Στο περιβάλλον του διαδικτύου οι χρήστες µπορούν να είναι εκτός του οργανισµού και να περιλαµβάνουν πιθανούς πελάτες, πιθανούς προµηθευτές, πιθανούς συνεταίρους και ανταγωνιστές, µε τους οποίους δεν υφίσταται καµιά συµβατική σχέση. Οι ορισµοί αυτοί δε σχετίζονται µε τη γεωγραφική θέση των χρηστών και τα όρια ανάµεσα στις περιοχές είναι µάλλον ασαφή και ταυτόχρονα πολύπλοκα. Μια πρόσφατη (καλοκαίρι 1998) έρευνα σε 83 µεγάλες (µε ετήσιο τζίρο µεγαλύτε-
20
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
ρο από 1 δις δολάρια) επιχειρήσεις εγκατεστηµένες στην Ευρώπη και στην Αµερική έδειξε ότι στη συντριπτική τους πλειοψηφία (92%) χρησιµοποιούν υπηρεσίες ηλεκτρονικού ταχυδροµείου, ότι σε πολύ µεγάλο ποσοστό (72%) έχουν σελίδα στον παγκόσµιο ιστό και ότι πάνω από τις µισές (58%) διαθέτουν εσωτερικό δίκτυο διασύνδεσης των υπολογιστών τους. Οι περισσότερες από τις εταιρείες αυτές σχεδιάζουν να χρησιµοποιήσουν εξελιγµένες µορφές ηλεκτρονικού εµπορίου µέσα στην επόµενη τριετία, ενώ το 85% θεωρεί ότι τέτοιες πρωτοβουλίες έχουν πρωτεύουσα σηµασία. Οι πιο δηµοφιλείς µελλοντικοί στόχοι είναι να χρησιµοποιήσουν εξωτερικά δίκτυα για να διασυνδεθούν µε τους προµηθευτές τους (προτεραιότητα για το 83% των εταιρειών), να προσελκύσουν πελάτες πιο αποτελεσµατικά µέσω εξελιγµένων συστηµάτων (προτεραιότητα για το 79% των εταιρειών) και να διεκπεραιώνουν συναλλαγές µέσω του διαδικτύου (προτεραιότητα για το 83% των εταιρειών). Μια άλλη πρόσφατη έρευνα µεταξύ των 500 µεγαλύτερων ευρωπαϊκών εταιρειών έδειξε ότι όλες χρησιµοποιούν ηλεκτρονικό ταχυδροµείο, 94% χρησιµοποιεί υπηρεσίες ηλεκτρονικού εµπορίου, 91% συµβουλεύεται τον παγκόσµιο ιστό, 38% χρησιµοποιεί ή παρέχει τηλεφωνικές υπηρεσίες πάνω από το διαδίκτυο και 34% χρησιµοποιεί ή παρέχει εικονοτηλεφωνικές υπηρεσίες πάνω από το διαδίκτυο. Οι προοπτικές για το ορατό µέλλον είναι να αυξηθεί ακόµη περισσότερο η επιχειρηµατική χρήση των δικτύων. Η συνολική αξία των συναλλαγών που θα πραγµατοποιούνται ηλεκτρονικά το έτος 2000 στις ΗΠΑ προβλέπεται να είναι ανάµεσα στα 130.000.000.000 και στα 200.000.000.000 δολάρια, µε µέση ετήσια αξία ανά πελάτη 600–800 δολάρια, µέση αξία ανά συναλλαγή 25–35 δολάρια, ενώ προβλέπεται ότι το 60%–70% των συνολικά προσφερόµενων αγαθών θα είναι διαθέσιµα προς πώληση στο δίκτυο. Όσα όµως επιχειρηµατικά οφέλη φαίνεται να παρέχει η χρήση των δικτύων αναιρούνται, αν η χρήση αυτή δεν είναι ασφαλής. Είναι φανερό ότι ένας πωλητής που ταξιδεύει θα πρέπει να µπορεί να στείλει ένα µήνυµα ηλεκτρονικού ταχυδροµείου στη βάση του χωρίς να παραβιαστεί η εµπιστευτικότητα του µηνύµατος. Πώς µπορεί να ξέρει ο χρήστης που συνδέεται µε τη σελίδα µιας επιχείρησης στον παγκόσµιο ιστό ότι πράγµατι η σελίδα ανήκει στην εταιρεία; Αν κάποια σελίδα είναι σφραγισµένη, πώς µπορεί να ξέρει ο χρήστης ότι η σφραγίδα είναι αυθεντική και όχι αντίγραφο σφραγίδας από άλλη σελίδα; Με άλλα λόγια, η διαφύλαξη της ακεραιότητας της πληροφορίας είναι επίσης σηµαντική. Για να γίνει αντιληπτή η οικονοµική σηµασία της διατήρησης της διαθεσιµότητας της πληροφορίας, αρκεί να αναφέρουµε ότι ένα τρις δολάρια διακινούνται µέσω τραπεζών ηλεκτρονικά κάθε χρόνο. Αυτό σηµαίνει ότι για κάθε µέρα που το δίκτυο δεν είναι διαθέσιµο η απώλεια σε
1.1 H ™∏ª∞™π∞ ∆ø¡ ¢π∫∆Àø¡
21
τόκους υπολογίζεται σε 30 εκατοµµύρια δολάρια. Η θέση αυτή επιβεβαιώνεται και από τα αποτελέσµατα µιας έρευνας που έγινε στις ΗΠΑ σχετικά µε τα προβλήµατα στην ανάπτυξη του διαδικτύου, όπως τα αντιλαµβάνονται οι επιχειρήσεις. Μπορείτε να δείτε τα αποτελέσµατα αυτά στο Σχήµα 1.2, από το οποίο είναι φανερό ότι τα προβλήµατα ασφάλειας αποτελούν, κατά την άποψη των επιχειρήσεων, το σηµαντικότερο εµπόδιο στην ανάπτυξη του διαδικτύου.
16
4 40
18 22
Προβλήµατα ασφάλειας Προβλήµατα ποιότητας ∆υσκολία χρήσης Πρόβληµα δικτύου Άλλα προβλήµατα
™¯‹Ì· 1.2
Eµπόδια στην ανάπτυξη του διαδικτύου.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.1 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή βοηθούν στην άρση της αποµόνωσης.
❏
❏
2. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή διευκολύνουν την ένταξη των ατόµων µε ειδικές ανάγκες στο κοινωνικό γίγνεσθαι.
❏
❏
3. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή κάνουν τα όρια µεταξύ µερικών από τους µεγαλύτερους τοµείς παροχής υπηρεσιών δυσδιάκριτα.
❏
❏
4. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή ενισχύουν την ανάνηψη περιοχών που βρίσκονται σε ύφεση.
❏
❏
5. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή η δηµόσια διοίκηση εξαρτάται όλο και πιο πολύ απ’ αυτά.
❏
❏
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
22
6. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή βελτιώνουν την αποτελεσµατικότητα της δηµόσιας διοίκησης.
❏
❏
7. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή διευκολύνουν την επικοινωνία µεταξύ των ανθρώπων και την έκφραση της δηµιουργικότητας και της πολιτιστικής τους ταυτότητας.
❏
❏
8. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή πάρα πολλοί κόµβοι είναι συνδεδεµένοι σ’ αυτά και πάρα πολλοί χρήστες τα χρησιµοποιούν.
❏
❏
9. Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή η χρήση τους παρέχει οικονοµικά οφέλη.
❏
❏
10.Τα δίκτυα είναι σηµαντικά για τη σύγχρονη κοινωνία, επειδή επιτρέπουν την πώληση αγαθών.
❏
❏
ΣΩΣΤΟ
ΛΑΘΟΣ
1. Οι πληροφορίες που διατρέχουν τα δίκτυα, καθώς και τα ίδια τα δίκτυα, πρέπει να προστατευτούν, επειδή οι επιχειρήσεις πιστεύουν ότι τα προβλήµατα ασφάλειας είναι το σηµαντικότερο εµπόδιο στην ανάπτυξη του διαδικτύου.
❏
❏
2. Οι πληροφορίες που διατρέχουν τα δίκτυα, καθώς και τα ίδια τα δίκτυα, πρέπει να προστατευτούν, επειδή η τεράστια σηµερινή διασυνδεσιµότητα και η αυξανόµενη εξάρτηση από την πληροφορία και τα δίκτυα οδηγεί σε µνηµειώδεις κινδύνους.
❏
❏
3. Οι πληροφορίες που διατρέχουν τα δίκτυα, καθώς και τα ίδια τα δίκτυα, πρέπει να προστατευτούν, επειδή η έλλειψη εξασφάλισης µπορεί να οδηγήσει σε σηµαντικές οικονοµικές απώλειες.
❏
❏
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.2 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος:
1.2 E¶π£∂™∂π™ ¶√À ∂ª∂π¡∞¡ ™∆∏¡ π™∆√ƒπ∞
23
4. Οι πληροφορίες που διατρέχουν τα δίκτυα, καθώς και τα ίδια τα δίκτυα, πρέπει να προστατευτούν, επειδή η πολυπλοκότητά τους είναι µεγάλη.
❏
❏
5. Οι πληροφορίες που διατρέχουν τα δίκτυα, καθώς και τα ίδια τα δίκτυα, πρέπει να προστατευτούν, επειδή η πρόσβαση σ’ αυτά είναι εφικτή για τον καθένα.
❏
❏
¢Ú·ÛÙËÚÈfiÙËÙ· 1.2 Φανταστείτε ότι είστε ο υπεύθυνος πληροφοριακών συστηµάτων µιας επιχείρησης. Ο διευθυντής σας σκέφτεται να εισαγάγει διαδικασίες ηλεκτρονικού εµπορίου στην εταιρεία. Γράψτε µια έκθεση στην οποία θα του επισηµαίνετε τα προβλήµατα ασφάλειας που δηµιουργεί αυτή η απόφαση. Προσέξτε, όµως, ότι δε θα πρέπει να τον αποθαρρύνετε να προχωρήσει. Η σωστή τακτική είναι να προχωρήσει µεν, αλλά έχοντας υπόψη τους κινδύνους και, αν είναι δυνατόν, και τα µέτρα µείωσής τους.
1.2 EÈı¤ÛÂȘ Ô˘ ¤ÌÂÈÓ·Ó ÛÙËÓ ÈÛÙÔÚ›·
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Στην ενότητα αυτή παρουσιάζουµε σύντοµα πέντε πολύ γνωστές και καλά τεκµηριωµένες επιθέσεις που εκδηλώθηκαν εναντίον δικτυωµένων συστηµάτων. Ο λόγος που τις παρουσιάζω δεν είναι, βέβαια, για να ηρωοποιήσω τους πρωταγωνιστές τους. Κάθε άλλο. Θα πρέπει να τονίσω, όσο πιο δυνατά µπορώ, ότι οι παραβιάσεις συστηµάτων δεν είναι ούτε αστείο ούτε επίδειξη ικανοτήτων. Είναι, απλώς, εγκληµατικές πράξεις και πρέπει να τιµωρούνται ανάλογα. Ο λόγος είναι, πιστεύω, ότι είναι χρήσιµη, πέρα από τη θεωρητική ανάπτυξη της αναγκαιότητας της προστασίας των δικτύων, η υποστήριξη της αναγκαιότητας αυτής και µέσα από την παρουσίαση πραγµατικών περιστατικών, µε συγκεκριµένο και απτό αποτέλεσµα. Πέρα απ’ αυτόν το λόγο, νοµίζω ότι η αναγνώριση των κοινών χαρακτηριστικών των επιθέσεων αυτών είναι χρήσιµη στη σχεδίαση αποτελεσµατικών µεθόδων και µέτρων προστασίας. Αν ενδιαφέρεστε για περισσότερες πληροφορίες γύρω απ’ αυτό το θέµα, ανατρέξτε στη βιβλιογραφία που δίνεται στο τέλος του κεφαλαίου. Μην παρασυρθείτε όµως σε αναζήτηση «ιστοριών τρόµου»!
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
24
1.2.1 O ¤ÏÈη˜ ÙÔ˘ ‰È·‰ÈÎÙ‡Ô˘
Ο έλικας του διαδικτύου (Internet worm) παρουσιάστηκε το Νοέµβριο του 1988. Ένας φοιτητής πληροφορικής στο Πανεπιστήµιο Cornell των ΗΠΑ, ο Robert Morris, δηµιούργησε τον κακεντρεχή αυτόν έλικα και τον απελευθέρωσε στο διαδίκτυο. Ο έλικας πρωτοεµφανίστηκε στις 5:00 το απόγευµα της Τετάρτης 2 Νοεµβρίου 1988 στο Πανεπιστήµιο Cornell. Έτρεχε σε συστήµατα που χρησιµοποιούσαν λειτουργικό σύστηµα BSD Unix και αξιοποιούσε αδυναµίες κάποιων βοηθητικών προγραµµάτων. Οι αδυναµίες αυτές επέτρεπαν στον έλικα να παρεισφρέει στις µηχανές και να αναπαράγεται, µολύνοντάς τες µε το αντίγραφό του. Κάθε σύστηµα περιέχει έναν πίνακα µε ονόµατα και διευθύνσεις άλλων συστηµάτων µε τα οποία υπάρχει σχέση εµπιστοσύνης. Από τη στιγµή που ο έλικας βρισκόταν σε ένα σύστηµα, µεταδιδόταν και εξαπλωνόταν ψάχνοντας τον πίνακα αυτό ή ψάχνοντας αρχεία προώθησης ταχυδροµείου (αρχεία .forward) ή ψάχνοντας αρχεία µε τα οποία οι ίδιοι οι χρήστες έδιναν εξουσιοδότηση πρόσβασης σε αποµακρυσµένα συστήµατα στον εαυτό τους ή τρέχοντας ένα πρόγραµµα που έβρισκε την κατάσταση των δικτυακών συνδέσεων του συστήµατος. Σε κάθε τελικό σύστηµα που έβρισκε, ο έλικας προσπαθούσε να συνδεθεί ως νόµιµος χρήστης, αφού πρώτα παραβίαζε το αρχείο συνθηµατικών µε ένα κατάλληλο αλλά απλό πρόγραµµα. Εναλλακτικά, ο έλικας αξιοποιούσε µια γνωστή αδυναµία του πρωτοκόλλου finger και µια κερκόπορτα (trapdoor) στην επιλογή debug του προγράµµατος sendmail. Αν πετύχαινε µια οποιαδήποτε απ’ αυτές τις επιθέσεις, ο έλικας εγκαθιστούσε επικοινωνία µε το διερµηνευτή εντολών του λειτουργικού συστήµατος, του έστελνε ένα µικρό πρόγραµµα εκκίνησης, την εντολή να το εκτελέσει και, στη συνέχεια, αποσυνδεόταν από το σύστηµα. Το πρόγραµµα εκκίνησης καλούσε το γονικό πρόγραµµα, αντέγραφε τον υπόλοιπο κώδικα του έλικα (σε κρυπτογραφηµένη µορφή), αποκρυπτογραφούσε τον έλικα και ζητούσε την εκτέλεσή του. Ο έλικας εξαπλώθηκε στο διαδίκτυο πολύ γρήγορα. Ο κώδικάς του δεν περιείχε λογικές ή χρονικές βόµβες που καταστρέφουν αρχεία. Αντίθετα, η ζηµιά που προκάλεσε ο έλικας σχετίζεται µε τον όγκο επεξεργασίας που προκλήθηκε από την ολοκληρωτική και επιθετική του εξάπλωση, όγκος που τελικά ξεπερνούσε τη συνολική ικανότητα επεξεργασίας του συστήµατος στο οποίο κατάφερνε να συνδεθεί ο έλικας. Ο έλικας µόλυνε δύο χιλιάδες υπολογιστικά συστήµατα και επηρέασε την κανονική διασυνδεσιµότητα του διαδικτύου, όπως και την απόδοσή του και τις σχετικές δραστηριότητες, για κάµποσες µέρες. Καµιά κατηγορία δεν απαγγέλθηκε εναντίον του Robert Morris, ο οποίος ωστόσο παραδέχτηκε ότι έγραψε τον έλικα και τον απελευθέρωσε, αλλά όχι για να προξενήσει ζηµιά.
1.2 E¶π£∂™∂π™ ¶√À ∂ª∂π¡∞¡ ™∆∏¡ π™∆√ƒπ∞
1.2.2 TÔ ·˘Áfi ÙÔ˘ ÎÔ‡ÎÔ˘
Πρόκειται για την πιο γνωστή, ίσως, επίθεση εναντίον υπολογιστικού συστήµατος, και ίσως την καλύτερα τεκµηριωµένη. Η επίθεση ή µάλλον οι επιθέσεις έγιναν σε διάστηµα δέκα περίπου µηνών, αρχίζοντας τον Αύγουστο του 1986 και τελειώνοντας τον Ιούνιο του 1987 µε τη σύλληψη των δραστών. Ο αστρονόµος Clifford Stoll είχε µόλις αρχίσει δουλειά ως διαχειριστής ενός µεγάλου υπολογιστικού συστήµατος στα Lawrence Berkeley Labs, όταν του ζητήθηκε να διερευνήσει το γιατί ένας λογαριασµός χρήστη εµφάνιζε µια λογιστική διαφορά 75 cents. Στην πορεία της διερεύνησης αυτής, ο Stoll κατάλαβε ότι είχε να αντιµετωπίσει µια περίπτωση επίθεσης. Η επίθεση δεν εκδηλώθηκε τόσο εναντίον των συστηµάτων του ίδιου του Lawrence Berkeley Labs, όπου δεν εκτελούνταν πολλά απόρρητα στρατιωτικά ερευνητικά προγράµµατα, όσο εναντίον συστηµάτων άλλων οργανισµών, χρησιµοποιώντας ως απλό εφαλτήριο το Lawrence Berkeley Labs. Το Σχήµα 1.3 δείχνει τα συστήµατα που παραβιάστηκαν από τους εισβολείς αυτούς και τις µεταξύ τους δικτυακές συνδέσεις. Η µέθοδος παραβίασης των συστηµάτων ήταν πάντα η ίδια: σύνδεση µέσω λογαριασµού νόµιµου χρήστη µε παραβιασµένο συνθηµατικό και, στη συνέχεια, απόκτηση δικαιωµάτων υπερχρήστη µε τοποθέτηση ενός ∆ούρειου Ίππου. Μέσα στους επόµενους δέκα µήνες, ο Stoll και οι συνεργάτες του παρακολούθησαν τους επιτιθέµενους, τους παρουσίασαν δολώµατα και, τελικά, τους παγίδεψαν. Η παγίδα οδήγησε στη σύλληψη, στην απαγγελία κατηγορίας για κατασκοπεία εναντίον πέντε ατόµων από τη ∆υτική (τότε) Γερµανία (Markus Hess, Hans Huebner, Karl Koch, Dirk Bresinsky, Peter Carl) και την καταδίκη τριών (Markus Hess, Dirk Bresinsky, Peter Carl) σε ποινές φυλάκισης 14–24 µηνών και πρόστιµα. 1.2.3 ŒÓ· ·fiÁÂ˘Ì· Ì ÙÔÓ Berferd
Η ιστορία αυτή ξεκίνησε στις 7 Ιανουαρίου του 1991, όταν ένας εισβολέας, πιστεύοντας ότι είχε ανακαλύψει την (πολύ γνωστή και δηµοφιλή) αδυναµία ασφάλειας του προγράµµατος sendmail (την ίδια που χρησιµοποιούσε και ο έλικας του διαδικτύου) στη µηχανή που αποτελούσε την πύλη εξόδου προς το διαδίκτυο για την ΑΤ&Τ, προσπάθησε να αποκτήσει αντίγραφο του αρχείου των συνθηµατικών. Ο διαχειριστής του συστήµατος Bill Cheswick, αν και κατάλαβε ότι πρόκειται για επίθεση, του έστειλε ένα τέτοιο αντίγραφο, προκειµένου να παρακολουθήσει και να µελετήσει τη συµπεριφορά του. Για αρκετούς µήνες, ο Cheswick µαζί µε τους συνεργάτες του παρακολουθούσαν εξονυχιστικά τις συνόδους του εισβολέα, προκειµένου να µπορέσουν να εντοπίσουν το ορµητήριό του και να µάθουν τις τεχνικές που χρησιµοποιούσε.
25
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
26
Πανεπιστήµιο Karlsruhe (Γερµανία)
Eισβολέας
Tηλεφωνικό κέντρο πόλης Aννόβερο (Γερµανία)
Ψηφιακό δίκτυο Datex-P
∆ιεθνής πύλη Datex-P Πανεπιστήµιο Bremen (Γερµανία) Mitre Corp. Maclean, VA (HΠA)
Eρευνητικό εργαστήριο Pasadena, CA (HΠA)
Kέντρο δεδοµένων ΠN,VA (HΠA)
Eταιρεία άµυνας (HΠA)
Πανεπιστήµιο Boston (HΠA)
Eταιρεία άµυνας (HΠA)
Aεροπορική βάση (HΠA)
∆ίκτυο X.25 Tymnet
Yπεραστικό επιλεγόµενο τηλεφωνικό δίκτυο
Nαυπηγείο ΠN,VA (HΠA)
Πανεπιστήµιο Pittsburgh (HΠA)
∆ιεθνής µεταφορέας
National Laboratory Livermore (HΠA)
Στρατιωτική βάση (HΠA)
Στρατιωτική βάση (Γερµανία) Bάση ΠN (HΠA)
Στρατιωτική βάση δεδοµένων (HΠA)
Eταιρεία H/Y (HΠA)
Lawrence Berkeley Laboratory (HΠA)
Στρατιωτική βάση (Iαπωνία) Eταιρεία δικτύων (HΠA) Πανεπιστήµιο Atlanta (HΠA)
Eταιρεία άµυνας (HΠA) Aεροπορική βάση (Γερµανία)
Eταιρεία δικτύων (HΠA)
Πανεπιστήµιο Rochester (HΠA)
™¯‹Ì· 1.3
Συστήµατα που παραβιάστηκαν κατά την επίθεση του «Aυγού του Kούκου»
Πανεπιστήµιο Ontario (Kαναδάς)
Πανεπιστήµιο Pasadena (Kαναδάς)
National Computing Center
1.2 E¶π£∂™∂π™ ¶√À ∂ª∂π¡∞¡ ™∆∏¡ π™∆√ƒπ∞
Το συµπέρασµα που τελικά προέκυψε ήταν ότι ο εισβολέας αυτός είχε στη διάθεσή του πολύ χρόνο, ήταν επίµονος και επίσης είχε στη διάθεσή του έναν καλό κατάλογο µε αδυναµίες ασφάλειας, τις οποίες µπορούσε να χρησιµοποιήσει προκειµένου να συνδεθεί µε µια µηχανή. Αξιοποιώντας τις αδυναµίες αυτές, µπορούσε συχνά να παραβιάσει τους λογαριασµούς uucp ή bin ενός συστήµατος και, στη συνέχεια, να αποκτήσει δικαιώµατα υπερχρήστη. Επίσης, όπως διαπιστώθηκε από τις κινήσεις του, έδειχνε ιδιαίτερο ενδιαφέρον για στρατιωτικούς στόχους και για νέες µηχανές, που θα του επέτρεπαν να επεκτείνει το πεδίο δραστηριοτήτων του. Παρ’ όλο που αποδείξεις δεν υπάρχουν, πιστεύεται γενικά ότι υπεύθυνοι για τις επιθέσεις αυτές ήταν µια οµάδα νεαρών εισβολέων από την Ολλανδία. 1.2.4 To A & M University ÙÔ˘ Texas
Το Πανεπιστήµιο του Texas A&M διαθέτει ένα δίκτυο υπολογιστών στο οποίο βρίσκονται συνδεµένες περίπου 12.000 µηχανές. Από τους υπολογιστές αυτούς, όσοι έτρεχαν το λειτουργικό σύστηµα Unix αποτέλεσαν αντικείµενο συντονισµένης επίθεσης από εισβολείς τον Αύγουστο του 1992. Η επίθεση έγινε αντιληπτή µετά από αναφορά του Ohio Supercomputer Center ότι ένας υπολογιστής του Πανεπιστηµίου A&M του Texas χρησιµοποιήθηκε ως ορµητήριο για την εκδήλωση επίθεσης εναντίον ενός υπολογιστή του Ohio Supercomputer Center. Αποφασίστηκε η παρακολούθηση της εξέλιξης της επίθεσης παρά η παρεµπόδισή της, η οποία παρακολούθηση αποκάλυψε ότι είχαν παραβιαστεί αρκετές µηχανές του δικτύου του Πανεπιστηµίου A&M του Texas και ότι οι εισβολείς ήταν πολλοί, είχαν αναρτήσει πίνακα ανακοινώσεων (!) σε µια από τις παραβιασµένες µηχανές, µέσω του οποίου επικοινωνούσαν και είχαν καθιερώσει και ιεραρχία ανάµεσά τους, ανάλογα µε τις γνώσεις και την εµπειρία του καθένα. Η µέθοδος επίθεσης ήταν (και πάλι) η υποκλοπή συνθηµατικών. Ως αντίµετρο στην επίθεση αποφασίστηκε η κατασκευή ενός φίλτρου ελέγχου της εισερχόµενης στο δίκτυο κίνησης. Μετά τη δεύτερη εγκατάσταση του φίλτρου αυτού, δεν παρατηρήθηκε πια επιτυχηµένη επίθεση εναντίον των µηχανών του δικτύου. Ωστόσο, η πρώτη επίθεση είχε ως αποτέλεσµα την καταστροφή αρκετών αρχείων χρηστών και την αποκάλυψη άλλων. 1.2.5 H ÂÚ›ÙˆÛË ÙÔ˘ Kevin Mitnick
Ο Kevin Mitnick γεννήθηκε το 1964, στο San Fernando valley, προάστιο του Los Angeles. Ξεκίνησε την καριέρα του στο έγκληµα στις αρχές του 1980, παραβιάζοντας τους κωδικούς πρόσβασης στα συστήµατα της τηλεφωνικής εταιρείας και χρησιµο-
27
28
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
ποιώντας έτσι δωρεάν τηλεφωνικές υπηρεσίες. Συνέχισε τις δραστηριότητές του παραβιάζοντας ένα υπολογιστικό σύστηµα στο Γυµνάσιο Monroe και εισβάλλοντας, από εκεί, στο κεντρικό υπολογιστικό σύστηµα της σχολικής περιφέρειας του Los Angeles. Στα µέσα του 1981, µαζί µε φίλους του, κατορθώνει να κλέψει τους καταλόγους συνθηµατικών χιλιάδων υπολογιστών, τα ηλεκτρονικά κλειδιά (δέκα τον αριθµό) της εισόδου των κεντρικών γραφείων της τηλεφωνικής εταιρείας Pacific Bell και τα εγχειρίδια χρήσης του συστήµατος COSMOS (COmputer System for Mainframe OperationS), δηλαδή µιας τεράστιας βάσης δεδοµένων, που χρησιµοποιούσαν πολλές τηλεφωνικές εταιρείες. Φυσικά, συνελήφθησαν σύντοµα, δικάστηκαν και καταδικάστηκαν. Ο Mitnick, ως ανήλικος, τη γλίτωσε φτηνά, αφού καταδικάστηκε µόνο σε φυλάκιση 3 µηνών και επιτήρηση ενός ακόµη έτους. Η επόµενη φορά που συνελήφθη ο Mitnick ήταν το 1983, όταν προσπάθησε να συνδεθεί, µέσω του ARPANet, από έναν υπολογιστή του Πανεπιστηµίου της Νότιας Καλιφόρνιας στο υπολογιστικό σύστηµα North America Air Defense Command Computer του Αµερικανικού Πενταγώνου. Το αποτέλεσµα ήταν έξι µήνες φυλακή. Μετά την έκτιση της ποινής του και µέχρι το 1987 ο Mitnick ζει µε ασυνήθιστη γι’ αυτόν ηρεµία. ∆υστυχώς, η περίοδος αυτή δεν κράτησε πολύ. Το ∆εκέµβριο 1987 καταδικάζεται σε επιτήρηση 36 µηνών, µετά από κατηγορία ότι έκλεψε πολύτιµο λογισµικό, αξίας πολλών χιλιάδων δολαρίων από την εταιρεία Microport Systems Santa Cruz Operation. Μέσα στο 1988 και για αρκετούς µήνες, ο Mitnick διάβαζε κρυφά τα µηνύµατα ηλεκτρονικού ταχυδροµείου που αντάλλασσαν οι υπεύθυνοι ασφάλειας υπολογιστικών συστηµάτων στις εταιρείες MCI Communications και Digital Equipment Corporation (DEC). Έτσι, έµαθε πώς προστατευόταν ο αντίστοιχος τηλεφωνικός και υπολογιστικός εξοπλισµός. Στις 15 ∆εκεµβρίου 1988 ο Mitnick συνελήφθη για ηλεκτρονικές επιδροµές εναντίον συστηµάτων της DEC. Αξιοσηµείωτο είναι το γεγονός ότι τον κατέδωσε στο FBI ο φίλος και συνεργάτης του Lenny DiCicco, που τον χαρακτήρισε ως «τροµοκράτη των υπολογιστών» και «λαίλαπα για την κοινωνία». Κατηγορήθηκε για οικονοµική ζηµιά ύψους 4.000.000 δολαρίων στην DEC, για κλοπή λογισµικού αξίας 1.000.000 δολαρίων και για έξοδα 200.000 δολαρίων. Κατηγορήθηκε επίσης για παραβίαση των υπολογιστικών συστηµάτων της MCI και για κλοπή κωδικών υπεραστικών κλήσεων. Για όλα αυτά καταδικάστηκε σε ένα χρόνο κάθειρξη και στην παρακολούθηση ενός ειδικού προγράµµατος «αποτοξίνωσης», διάρκειας 6 µηνών. Κατά τη διάρκεια του προγράµµατος αυτού τού απαγορεύτηκε η οποιαδήποτε χρήση υπολογιστή στο µέλλον.
1.2 E¶π£∂™∂π™ ¶√À ∂ª∂π¡∞¡ ™∆∏¡ π™∆√ƒπ∞
Αφέθηκε ελεύθερος στα µέσα του 1990, παραβίασε την απαγόρευση χρήσης υπολογιστή και εξαφανίστηκε το Νοέµβριο του 1992, περνώντας πια ολοκληρωτικά στην παρανοµία. Η τελευταία επίθεση του Mitnick εκδηλώθηκε τα Χριστούγεννα του 1994 εναντίον του San Diego Supercomputer Center. Η επίθεση αυτή άρχισε παραβιάζοντας τον υπολογιστή του Tsitomu Shimomura, ειδικού ασφάλειας, ο οποίος έµελλε να είναι και ο άνθρωπος που οδήγησε τον Mitnick ενώπιον της δικαιοσύνης. Η τελευταία σύλληψη του Mitnick έγινε στις 14 Φεβρουαρίου 1995. 1.2.6 KÔÈÓ¿ ¯·Ú·ÎÙËÚÈÛÙÈο ÙˆÓ ÂÈı¤ÛˆÓ
Σε όλες τις επιθέσεις που –πολύ σύντοµα είναι αλήθεια– περιγράψαµε υπάρχουν κάποια κοινά χαρακτηριστικά. Στην πραγµατικότητα τα χαρακτηριστικά αυτά είναι κοινά και σε όλες τις γνωστές επιθέσεις εναντίον δικτυωµένων συστηµάτων. Η παρατήρηση αυτή µάς οδηγεί σε ένα µοντέλο επιθέσεων, το οποίο θα συζητήσουµε αµέσως τώρα. Το µοντέλο αυτό είναι επιχειρησιακό, σε αντίθεση µε άλλα, µαθηµατικά µοντέλα επιθέσεων, που εµφανίστηκαν κατά καιρούς στη βιβλιογραφία. Κάθε επίθεση εκτελείται από έναν επιτιθέµενο. Οι επιτιθέµενοι κατηγοριοποιούνται, ανάλογα µε τις προθέσεις τους, σε hackers, κατασκόπους, τροµοκράτες, επιδροµείς εταιρειών, επαγγελµατίες κακοποιούς ή βάνδαλους. Οι επιτιθέµενοι πάντα έχουν κάποιο σκοπό. Ο σκοπός αυτός µπορεί να είναι απλώς η ικανοποίηση του εγωισµού τους, πολιτικό όφελος, οικονοµικό όφελος ή η «χαρά» της καταστροφής. Οι επιτιθέµενοι, για να εκτελέσουν την επίθεση, χρησιµοποιούν κάποια εργαλεία. Τα εργαλεία αυτά κατηγοριοποιούνται, ανάλογα µε τη φύση τους, σε εντολές χρήστη, προγράµµατα ή scripts λειτουργικού συστήµατος, αυτόνοµους πράκτορες (agents), εργαλειοθήκες (toolkits), κατανεµηµένα εργαλεία ή παρακολουθητές δεδοµένων (data taps). Χρησιµοποιώντας κάποιο ή κάποια εργαλεία, ο επιτιθέµενος επιτυγχάνει πρόσβαση σε κάποια µηχανή. Για να το καταφέρει αυτό, πρέπει να υπάρχει στη µηχανή κάποια αδυναµία, που µπορεί να οφείλεται είτε στην υλοποίηση είτε στη σχεδίαση είτε στη σύνθεση (configuration) της µηχανής. Η µη εξουσιοδοτηµένη αυτή πρόσβαση οδηγεί σε µη εξουσιοδοτηµένη χρήση διεργασιών, αρχείων και δεδοµένων που υπάρχουν στη µηχανή. Το αποτέλεσµα της µη εξουσιοδοτηµένης αυτής χρήσης µπορεί να είναι η διάβρωση πληροφορίας, η αποκάλυψη πληροφορίας, η κλοπή υπηρεσιών ή η άρνηση παροχής υπηρεσίας ή συνδυασµός όλων αυτών.
29
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
30
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.3 Αντιστοιχίστε καθεµιά από τις επιθέσεις, που συζητήσαµε στις Ενότητες 1.2.1 –1.2.5, που φαίνονται στην αριστερή στήλη, µε τον τύπο επιτιθέµενου, που φαίνεται στη δεξιά στήλη. Προσέξτε: Η αντιστοίχιση δεν είναι απαραίτητα ένα προς ένα. 1. Έλικας του διαδικτύου
1. Hacker
2. Wily Hacker
2. Κατάσκοποι
3. Berferd
3. Τροµοκράτες
4. Texas A&M University
4. Επιδροµείς εταιρειών
5. Kevin Mitnick
5. Επαγγελµατίες κακοποιοί 6. Βάνδαλοι
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.4 Αντιστοιχίστε καθεµιά από τις επιθέσεις, που συζητήσαµε στις Ενότητες 1.2.1 –1.2.5, που φαίνονται στην αριστερή στήλη, µε το σκοπό του επιτιθέµενου, που φαίνεται στη δεξιά στήλη. Προσέξτε: Η αντιστοίχιση δεν είναι απαραίτητα ένα προς ένα. 1. Έλικας του διαδικτύου
1. Ικανοποίηση εγωισµού
2. Wily Hacker
2. Πολιτικό όφελος
3. Berferd
3. Οικονοµικό όφελος
4. Texas A&M University
4. «Χαρά» της καταστροφής
5. Kevin Mitnick
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.5 Αντιστοιχίστε καθεµιά από τις επιθέσεις, που συζητήσαµε στις Ενότητες 1.2.1 –1.2.5, που φαίνονται στην αριστερή στήλη, µε το αποτέλεσµα της επίθεσης, που φαίνεται στη δεξιά στήλη. Προσέξτε: Η αντιστοίχιση δεν είναι απαραίτητα ένα προς ένα. 1. Έλικας του διαδικτύου
1. ∆ιάβρωση πληροφορίας
2. Wily Hacker
2. Αποκάλυψη πληροφορίας
3. Berferd
3. Κλοπή υπηρεσίας
4. Texas A&M University
4. Άρνηση παροχής υπηρεσίας
5. Kevin Mitnick
1.3 Tπ ™∏ª∞π¡∂π «A™º∞§∂π∞ ¢π∫∆Àø¡»
31
¢Ú·ÛÙËÚÈfiÙËÙ· 1.3 Εφαρµόστε το επιχειρησιακό µοντέλο επίθεσης, που περιγράψαµε στην Παράγραφο 1.2.6, στις επιθέσεις, που επίσης περιγράψαµε, για να αναγνωρίσετε το είδος του επιτιθέµενου, το σκοπό, τα εργαλεία, το είδος της πρόσβασης που πέτυχε και τα αποτελέσµατα της κάθε επίθεσης. Προσπαθείστε να βρείτε στο διαδίκτυο θέσεις που περιγράφουν επιθέσεις εναντίον υπολογιστικών συστηµάτων µέσω δικτύων και εφαρµόστε το ίδιο µοντέλο σε όσες επιθέσεις µπορέσετε να εντοπίσετε. Μια καλή θέση εκκίνησης είναι η ftp://info.cert.org.
1.3 TÈ ÛËÌ·›ÓÂÈ «AÛÊ¿ÏÂÈ· ¢ÈÎÙ‡ˆÓ»
Σπάνια εµφανίζεται επιστηµονικό πεδίο για το οποίο να υπάρχει σχετικά εκτενής συναίνεση στον ορισµό του αντικειµένου. Ευτυχείς δε πρέπει να αισθάνονται οι επιστήµονες που υπηρετούν τα πεδία αυτά. ∆υστυχώς, το πεδίο της ασφάλειας δεν είναι ακόµη ανάµεσά τους. Αυτό ίσως να εξηγείται και από το γεγονός ότι το πεδίο, ως επιστηµονικό πεδίο, και όχι ως αντικείµενο επαγγελµατικής δραστηριότητας, είναι πολύ νέο. Ωστόσο, αν και ευρεία συναίνεση δεν έχει επιτευχθεί, ορισµένα πράγµατα µπορούν να θεωρηθούν σχετικά σταθεροποιηµένα. Ένα απ’ αυτά είναι ο ορισµός της ίδιας της ασφάλειας πληροφοριών. Ασφάλεια, λοιπόν, είναι η διατήρηση της εµπιστευτικότητας, της ακεραιότητας και της διαθεσιµότητας των πληροφοριών, όπως και της διαθεσιµότητας του συστήµατος που χειρίζεται τις πληροφορίες. Για να συµπληρώσουµε τον ορισµό, πρέπει να πούµε ότι εµπιστευτικότητα είναι η ιδιότητα της πληροφορίας να προσπελάζεται από εξουσιοδοτηµένες προς τούτο οντότητες, ότι ακεραιότητα είναι η ιδιότητα της πληροφορίας να τροποποιείται µόνο από εξουσιοδοτηµένες προς τούτο οντότητες και ότι διαθεσιµότητα είναι η ιδιότητα της πληροφορίας να καθίσταται διαθέσιµη προς χρήση από τις εξουσιοδοτηµένες προς τούτο οντότητες µέσα σε λογικό χρόνο από την υποβολή της σχετικής αίτησης. Τέλος, διαθεσιµότητα συστήµατος είναι η ιδιότητα του συστήµατος να µπορεί να διαθέτει τους πόρους του στις οντότητες εκείνες που είναι προς τούτο εξουσιοδοτηµένες. Χρησιµοποιώντας τον παραπάνω, γενικά αποδεκτό, ορισµό και αντικαθιστώντας τον όρο «σύστηµα» µε τον όρο «δίκτυο», οδηγούµαστε σε ένα, πιστεύω, αρκετά σύντοµο και περιεκτικό ορισµό του αντικειµένου «ασφάλεια δικτύων».
K E º A § A I O 1 : H A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¢ π ∫ ∆ À ø ¡
32
™‡ÓÔ„Ë Στο κεφάλαιο αυτό είδαµε την ανάγκη για προστασία των πληροφοριών που διατρέχουν τα σηµερινά δίκτυα, όπως και των ίδιων των δικτύων, µέσα από µια συζήτηση της σηµασίας που αυτά έχουν στη σηµερινή κοινωνία και παγκόσµια οικονοµία. Συνεχίσαµε περιγράφοντας πολύ σύντοµα πέντε γνωστές επιθέσεις εναντίον δικτυωµένων συστηµάτων και ένα επιχειρησιακό µοντέλο επιθέσεων. Κλείσαµε το κεφάλαιο δίνοντας έναν ορισµό της «ασφάλειας δικτύων». BÈ‚ÏÈÔÁÚ·Ê›·
1. «Αύξηση του ηλεκτρονικού εµπορίου στην ΕΕ», ΤΟ ΒΗΜΑ, 18 Οκτωβρίου 1998. 2. Bangemann Committee, «Europe and the Global Information Society. Recommendations to the European Council», CORDIS focus, Supplement 2, 15 July 1994. 3. Birch D., «Smart Solutions for Net Security», Telecommunications, April 1998, pp. 53–63. 4. Cheswick W. & Bellovin S., Firewalls and Internet Security: Repelling the Wily Hacker, Addison–Wesley, 1994. 5. Dowd P. & McHenry J. T., «Network Security: It’s time to take it seriously», IEEE Computer, Vol. 31, no. 9, September 1998, pp. 24–29. 6. Higgins R. & Woods R., «The business of the Internet», Telecommunications, April 1998, pp. 39–47. 7. Howard J. D., An analysis of security incidents on the Internet 1989–1995, ∆ιδακτορική ∆ιατριβή, Carnegie Mellon University, Pittsburgh, 1997. 8. http://www.takedown.com/bio 9. Katsikas S. K., Gritzalis D. and Spirakis P., «Attack modelling in open network environments», in G. Pernul and P. Horster (Eds.) Communications and Multimedia Security II, Chapman & Hall, 1996. 10.Meinel C. P., «How Hackers Break In … and How They Are Caught», Scientific American, October 1998, pp. 70–77. 11.National Information Infrastructure, Washington DC, Οκτώβριος 1997. 12.Office of Tehnology Assessment, Congress of the United States, Issue Update on Information Security and Privacy in Network Environments, US Government
B I B § I O ° PA º I A
Printing Office, Washington DC, 1995. 13.Safford D., Schales D. L. & Hess D. K., «The TAMU security package: an ongoing response to Internet intruders in an academic environment», in Proceedings, 4th USENIX Unix Security Symposium, Santa Clara, CA, pp. 91–118. 14.Spafford E. H., «The Internet Worm: Crisis and Aftermath», Communications of the ACM, Vol. 32, no. 6, 1989, pp. 678–687. 15.Stallings W., Network and Internetwork Security: Principles and Practice, Englewood Cliffs, NJ, Prentice–Hall, 1995. 16.Sterling B., The Hacker Crackdown: law and disorder on the electronic frontier, Penguin Books, 1992. 17.Stoll C., The Cuckoo’s Egg, Pan Books, London, 1991. 18.Χτούρη Σ., Μεταβιοµηχανική κοινωνία και η κοινωνία της πληροφορίας, Αθήνα, Ελληνικά Γράµµατα, 1997.
33
∫
AÚ¯ÈÙÂÎÙÔÓÈ΋ AÛÊ¿ÏÂÈ·˜ ¢ÈÎÙ‡ˆÓ OSI ™ÎÔfi˜
∂
2 º
∆εν είναι δυνατόν να µάθει κανείς ασφάλεια δικτύων, αν δε γνωρίζει ήδη µερικά, τουλάχιστον, πράγµατα για δίκτυα. Το πρώτο µέρος του κεφαλαίου αυτού έχει ως σκοπό το να θυµίσει µάλλον, παρά να διδάξει, στον αναγνώστη µερικές βασικές αρχές δικτύων, ώστε να γίνει πιο εύκολη η παρακολούθηση του υπόλοιπου βιβλίου. Το δεύτερο µέρος εισάγει τον αναγνώστη στην ασφάλεια δικτύων σύµφωνα µε το µοντέλο αναφοράς OSI.
¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù· Όταν θα έχετε τελειώσει τη µελέτη του κεφαλαίου αυτού, θα µπορείτε να: • ∆ιακρίνετε έξι βασικά στοιχεία ενός δικτύου • Περιγράψετε το µοντέλο αναφοράς OSI • Αναφέρετε τουλάχιστον έξι βασικές απειλές κατά δικτύων • Περιγράψετε τις δεκατέσσερις υπηρεσίες ασφάλειας στο µοντέλο OSI • Περιγράψετε τους οκτώ µηχανισµούς υλοποίησης των υπηρεσιών ασφάλειας στο µοντέλο OSI
ŒÓÓÔȘ ÎÏÂȉȿ • δίκτυα,
• υπηρεσίες,
• µοντέλο αναφοράς OSI,
• απειλές,
• επίπεδα,
• µηχανισµοί
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Ξεκινάµε τη συζήτηση στο κεφάλαιο αυτό µε µερικές βασικές αρχές δικτύων, για να ορίσουµε το πεδίο ενδιαφέροντός µας και να εισαγάγουµε την απαραίτητη ορολογία. Στη συνέχεια θα συζητήσουµε ένα γενικό στρωµατοποιηµένο µοντέλο αρχιτεκτονικής για ανοικτά κατανεµηµένα συστήµατα, γνωστό ως «µοντέλο αναφοράς OSI». Θα
∞
§
∞
π
√
36
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
συνεχίσουµε αναφέροντας σύντοµα τα είδη των απειλών που αντιµετωπίζει ένα δίκτυο και πώς αυτές µπορούν να αντιµετωπιστούν µε τις υπηρεσίες ασφάλειας που ορίζονται στο µοντέλο αναφοράς OSI. Για κάποιο περίεργο όσο και άγνωστο λόγο, αποτελεί κοινή πεποίθηση ότι ένα βιβλίο σχετικό µε δίκτυα που δεν περιέχει τουλάχιστον µια ενότητα που να πραγµατεύεται το µοντέλο αναφοράς OSI δεν είναι πλήρες. Για να αποφύγω λοιπόν αυτή τουλάχιστον την κριτική, συµπληρώνω το κεφάλαιο µε την παρουσίαση του µοντέλου αυτού και τη συζήτηση των προδιαγραφών ασφάλειάς του. Πέρα από την αποφυγή της κριτικής, η δεύτερη αυτή ενότητα είναι χρήσιµη γιατί µας παρέχει ένα πλαίσιο στο οποίο θα εντάξουµε τα υπόλοιπα θέµατα που θα µας απασχολήσουν σε επόµενα κεφάλαια.
2.1 B∞™π∫∂™ ∞ƒÃ∂™ ¢π∫∆Àø¡
37
2.1 B·ÛÈΤ˜ ·Ú¯¤˜ ‰ÈÎÙ‡ˆÓ
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Στην πιο απλή του µορφή, ένα δίκτυο αποτελείται από δύο συσκευές, που συνδέονται µε κάποιο µέσο, και από υλικό και λογισµικό, που ολοκληρώνει την επικοινωνία. Σε µερικές περιπτώσεις η µία συσκευή είναι υπολογιστής (που µπορεί να ονοµάζεται και εξυπηρετητής) και η άλλη είναι µια απλή συσκευή Εισόδου/Εξόδου (που µπορεί να ονοµάζεται και πελάτης). Επιπλέον, απαιτείται ακόµη, συνήθως, ένα πληκτρολόγιο για είσοδο και ένας εκτυπωτής για έξοδο. Αν και το µοντέλο αυτό ικανοποιεί τον ορισµό ενός δικτύου, η πραγµατικότητα είναι (δυστυχώς) συνήθως πολύ πιο πολύπλοκη. Πράγµατι, η απλή συσκευή Εισόδου/Εξόδου (για τη επικοινωνία χρήστη – µηχανής) είναι συνήθως ένας προσωπικός υπολογιστής ή σταθµός εργασίας. Έτσι, ο πελάτης έχει σηµαντικές ικανότητες επεξεργασίας και αποθήκευσης. Επιπλέον, είναι πολύ σπάνιο το δίκτυο να αποτελείται απλώς από ένα µοναδικό πελάτη συνδεµένο µε ένα µοναδικό εξυπηρετητή. Αντίθετα, η συνηθισµένη κατάσταση είναι πολλοί πελάτες να αλληλεπιδρούν µε πολλούς εξυπηρετητές. Οι υπηρεσίες του δικτύου παρέχονται συνήθως από πολλές µηχανές. Τα µηνύµατα κάθε χρήστη απλώς περνούν από κάποιες απ’ αυτές και σταµατούν για αλληλεπίδραση µόνο σε κάποιες άλλες. Τέλος, ο τελικός χρήστης συνήθως δε γνωρίζει πολλά από τα µηνύµατα και τους υπολογισµούς που στέλνονται ή εκτελούνται για λογαριασµό του. Έτσι, ενώ ένα βασικό δίκτυο µοιάζει µ’ αυτό του Σχήµατος 2.1, ένα πραγµατικό δίκτυο µάλλον µοιάζει περισσότερο µ’ αυτό του Σχήµατος 2.2.
Yλικό και Λογισµικό Eπικοινωνιών
™¯‹Ì· 2.1
Ένα βασικό δίκτυο
Mέσο επικοινωνίας Xρήστης (Πελάτης)
Eξυπηρετητής
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
38
Σύστηµα A Σύστηµα B
Σύστηµα Γ Xρήστης (Πελάτης) Σύστηµα ∆ ™¯‹Ì· 2.2
Ένα πραγµατικό δίκτυο
2.1.1 ™ÙÔȯ›· ‰ÈÎÙ‡ˆÓ
Κάθε υπολογιστικό σύστηµα σε ένα δίκτυο συνήθως καλείται κόµβος, ενώ ο υπολογιστής του καλείται τελικό σύστηµα (host). Συνδέσεις ανάµεσα σε τελικά συστήµατα καλούνται ζεύξεις. Οι χρήστες επικοινωνούν µε δικτυωµένα συστήµατα µέσω τερµατικών, σταθµών εργασίας και υπολογιστών. Τερµατικό είναι µια απλή συσκευή, ικανή να µεταδίδει και να λαµβάνει σειρές χαρακτήρων. Αν και ένα τερµατικό µπορεί να κάνει µικρές εργασίες, όπως εµφάνιση δεδοµένων σε συγκεκριµένες θέσεις πάνω στην οθόνη, δεν µπορεί να επιτελέσει πιο πολύπλοκη επεξεργασία δεδοµένων. Ο σταθµός εργασίας έχει περισσότερη υπολογιστική ισχύ, και ως εκ τούτου είναι ικανός να εκτελέσει πολύπλοκη επεξεργασία δεδοµένων, όπως, για παράδειγµα, µετατροπή κωδικοποιηµένων δεδοµένων σε γραφική µορφή και εµφάνιση στην οθόνη της εικόνας που προκύπτει. Οι σταθµοί εργασίας συνήθως έχουν και τη δυνατότητα αποθήκευσης δεδοµένων. Υπολογιστικό σύστηµα είναι µια συλλογή από υπολογιστές, που πιθανόν περιλαµβάνει τόσο σταθµούς εργασίας όσο και ανεξάρτητους (δηλαδή µη συνδεµένους σε δίκτυο) υπολογιστές, µε συνολικά µεγαλύτερη υπολογιστική ισχύ και αποθηκευτική ικανότητα από ένα µεµονωµένο σταθµό εργασίας. 2.1.2 EÈÎÔÈӈӛ˜
Όλες οι επικοινωνίες δεδοµένων γίνονται είτε σε ψηφιακή µορφή (στην οποία τα δεδοµένα εκφράζονται ως διακριτές ψηφιακές τιµές) είτε σε αναλογική µορφή (στην οποία τα δεδοµένα εκφράζονται ως σηµεία σε µια συνεχή περιοχή τιµών, όπως, π.χ.,
2.1 B∞™π∫∂™ ∞ƒÃ∂™ ¢π∫∆Àø¡
ένας ήχος ή η τάση του ηλεκτρικού ρεύµατος). Οι υπολογιστές συνήθως αποθηκεύουν και επεξεργάζονται ψηφιακά δεδοµένα, αλλά πολλά τηλεφωνικά και άλλα οµοειδή ενσύρµατα συστήµατα επικοινωνίας είναι αναλογικά. Εποµένως, ο ποµπός πρέπει να µετατρέψει τα ψηφιακά σήµατα σε αναλογικά για να µπορέσει να τα µεταδώσει. Αντίστροφα, ο δέκτης πρέπει να τα ξαναµετατρέψει στη αρχική τους ψηφιακή µορφή προκειµένου να µπορέσει να τα επεξεργαστεί. Αυτές οι µετατροπές γίνονται από τους ∆ιαµορφωτές – Αποδιαµορφωτές, τα γνωστά Modems, που µετατρέπουν τα ψηφιακά δεδοµένα σε αναλογικά σήµατα, και αντίστροφα. Τα συστήµατα επικοινωνίας χρησιµοποιούν διάφορα είδη φυσικών µέσων για τη µετάδοση των µηνυµάτων που διαχειρίζονται. Παραδείγµατα (τα πιο συνηθισµένα) τέτοιων φυσικών µέσων είναι τα σύρµατα και ο αέρας. Ένα σύστηµα που χρησιµοποιεί σύρµατα στις ζεύξεις του λέµε ότι είναι σύστηµα ενσύρµατης επικοινωνίας. Αντίστοιχα, ένα σύστηµα που χρησιµοποιεί άλλο φυσικό µέσο λέµε ότι είναι σύστηµα ασύρµατης επικοινωνίας. Το πιο συνηθισµένο φυσικό µέσο ενσύρµατης επικοινωνίας είναι το απλό καλώδιο. Το µέσο που χρησιµοποιείται πιο συχνά µέσα σε σπίτια και γραφεία είναι ένα ζευγάρι µονωµένων χάλκινων καλωδίων (twisted pair). Ως υλικό, ο χαλκός παρουσιάζει πολύ καλές ιδιότητες αγωγιµότητας, ενώ έχει σχετικά µικρό κόστος. ∆υστυχώς, το εύρος ζώνης ενός τέτοιου συστήµατος επικοινωνίας είναι µάλλον περιορισµένο, µε συνέπεια να µην είναι δυνατή η µετάδοση πολλών µηνυµάτων ταυτόχρονα µέσω µιας και µοναδικής γραµµής. Για το λόγο αυτό, η χρήση του χαλκού περιορίζεται συνήθως σε τοπικό επίπεδο, δηλαδή µέσα σε ένα σπίτι ή γραφείο και µέχρι τον τοπικό κατανεµητή. Το οµοαξονικό καλώδιο, επίσης συνηθισµένο φυσικό µέσο ενσύρµατης επικοινωνίας, έχει µεγαλύτερο εύρος ζώνης από το χαλκό. Η ποιότητα του σήµατος που περνάει µέσα από χάλκινο ή οµοαξονικό καλώδιο µειώνεται µε την απόσταση. Για το λόγο αυτό, ανά τακτά διαστήµατα, κατά µήκος µιας καλωδιακής σύνδεσης τοποθετούνται επαναλήπτες, οι οποίοι λαµβάνουν το σήµα, το ενισχύουν και το αναµεταδίδουν. Μια νεότερη µορφή καλωδίου είναι η οπτική ίνα, που είναι κατασκευασµένη από πολύ λεπτές ίνες γυαλιού. Αντί να µεταφέρουν ηλεκτρική ενέργεια, οι ίνες αυτές µεταφέρουν φως. Το εύρος ζώνης της οπτικής ίνας είναι µεγαλύτερο από αυτό του χάλκινου καλωδίου, ενώ είναι λιγότερο ευαίσθητη σε παρεµβολές, παρουσιάζει λιγότερο έντονα φαινόµενα υπερπήδησης µε γειτονικά µέσα µετάδοσης, έχει µικρότερο κόστος και µικρότερο βάρος για το ίδιο µήκος. Είναι, συνεπώς, πολύ καλύτερο µέσο µετάδοσης από το χαλκό, τον οποίο και τείνει να αντικαταστήσει στα σύγχρονα επικοινωνιακά συστήµατα.
39
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
40
Περνώντας στη συζήτηση των ασύρµατων συστηµάτων, σηµειώνουµε ότι ασύρµατη επικοινωνία µπορεί να επιτευχθεί µε πολλές µεθόδους. Ωστόσο, θα περιοριστούµε εδώ στο να αναφερθούµε σύντοµα µόνο σε δύο απ’ αυτές: µικροκυµατικές ζεύξεις και δορυφορικές ζεύξεις. Οι µικροκυµατικές ζεύξεις είναι ιδιαίτερα κατάλληλες για επικοινωνίες σε ανοικτούς χώρους και έχουν εύρος ζώνης συγκρίσιµο µε εκείνο του οµοαξονικού καλωδίου. Το βασικό πλεονέκτηµα µιας τέτοιας ζεύξης είναι ότι η ισχύς του σήµατος είναι καλή σε όλη τη διαδροµή, από το σηµείο εκποµπής µέχρι το σηµείο λήψης, αίροντας έτσι την ανάγκη για τοποθέτηση επαναληπτών. Ωστόσο, ένα µικροκυµατικό σήµα ταξιδεύει ευθύγραµµα. Εποµένως, ο ποµπός και ο δέκτης πρέπει να βρίσκονται σε οπτική επαφή. Λόγω της καµπυλότητας της Γης, δεν είναι δυνατόν να τοποθετήσουµε ποµπό και δέκτη σε απόσταση µεγαλύτερη από περίπου 60 χιλιόµετρα, αν θέλουµε να κρατήσουµε το ύψος των πυλώνων που τους συγκρατούν σε λογικά επίπεδα. Έτσι, η ανάγκη για επαναλήπτες επανεµφανίζεται. Οι εταιρείες επικοινωνιών χρησιµοποιούν δορυφόρους σε γεωσύγχρονες τροχιές, δηλαδή σε τροχιές συγχρονισµένες µε την τροχιά της Γης. Οι δορυφόροι αυτοί, αφού περιστρέφονται µε την ίδια ταχύτητα περιστροφής που περιστρέφεται και η Γη, βρίσκονται µονίµως «αγκυροβοληµένοι» πάνω από το ίδιο σηµείο της γήινης επιφάνειας. Αν και το κόστος κατασκευής και εκτόξευσής τους είναι µεγάλο, το κόστος συντήρησής τους είναι πρακτικά µηδενικό. Επιπλέον, η ποιότητα µιας δορυφορικής ζεύξης είναι συνήθως πολύ ανώτερη από την ποιότητα µιας οποιασδήποτε επίγειας ζεύξης. Οι δορυφόροι λειτουργούν ως αφελείς αναµεταδότες: αναµεταδίδουν ό,τι λαµβάνουν. 2.1.3 ¶ÚˆÙfiÎÔÏÏ·
Οι περισσότεροι από µας, όταν χρησιµοποιούµε ένα επικοινωνιακό σύστηµα, δεν έχουµε ιδέα αν το µήνυµά µας µεταφέρεται µέσω χάλκινου καλωδίου, οπτικής ίνας, δορυφόρου, µικροκυµατικής ζεύξης ή µέσω κάποιου συνδυασµού αυτών των φυσικών µέσων. Σε πολλές περιπτώσεις µάλιστα, το σηµερινό µήνυµά µας µεταφέρεται µε διαφορετικό µέσο απ’ αυτό που θα µεταφέρει το αυριανό µας. ∆ηµιουργεί άραγε κάποιο πρόβληµα η άγνοια αυτή; Ασφαλώς όχι. Φανταστείτε τη δυσκολία που θα εµφάνιζε για τους χρήστες του ένα τηλεφωνικό σύστηµα που θα απαιτούσε απ’ αυτούς να καθορίσουν το φυσικό µέσο της ζεύξης που θέλουν να χρησιµοποιήσουν και, βέβαια, να διαµορφώσουν τα µηνύµατά τους αντίστοιχα µε την επιλογή τους αυτή. Είναι φανερό ότι κανείς δε θα ήθελε να χρησιµοποιήσει ποτέ ένα τέτοιο σύστηµα. Αντίθετα, η (σκόπιµη και επιθυµητή) άγνοια του χρήστη σε οτιδήποτε σχετικό µε το φυσικό µέσο επικοινωνίας αποτελεί απόδειξη της ανεξαρτησίας που υπάρχει (και που θέλουµε να υπάρχει) µεταξύ του µηνύµατος και του φυσικού µέσου µεταφοράς του. Η ανεξαρτησία
2.1 B∞™π∫∂™ ∞ƒÃ∂™ ¢π∫∆Àø¡
41
αυτή καθίσταται δυνατή χάρη σε πρωτόκολλα, που επιτρέπουν στο χρήστη ενός επικοινωνιακού συστήµατος να σκέφτεται και να λειτουργεί αφαιρετικά στα υψηλά επίπεδα της επικοινωνίας, αφήνοντας τις λεπτοµέρειες της αποστολής του µηνύµατός του σε υλικό και λογισµικό που είναι εγκατεστηµένο στα δύο άκρα της ζεύξης. Το υλικό και το λογισµικό αυτό σχηµατίζουν µια οικογένεια πρωτοκόλλων, που οδηγεί σε µια αρχιτεκτονική επικοινωνιών δοµηµένη σε επάλληλα διακριτά στρώµατα. ∆ύο δηµοφιλείς οικογένειες πρωτοκόλλων είναι η οικογένεια Open Systems Interconnection (OSI) και η οικογένεια TCP/IP (Transport Control Protocol/Internet Protocol). Θα συζητήσουµε στη συνέχεια την πρώτη οικογένεια, αφήνοντας τη δεύτερη για το επόµενο κεφάλαιο. 2.1.4 TÔ ÌÔÓÙ¤ÏÔ ·Ó·ÊÔÚ¿˜ OSI
Ο ∆ιεθνής Οργανισµός Προτυποποίησης (International Standards Organization – ISO) έχει δηµιουργήσει το µοντέλο αναφοράς OSI, το οποίο ορίζει επίπεδα στην αρχιτεκτονική συστηµάτων µέσω των οποίων πραγµατοποιούνται δικτυακές επικοινωνίες. Το µοντέλο, που ορίζεται στο πρότυπο ISO 7498 και στην οδηγία CCITT X.200, αποτελείται από επτά επίπεδα (ή στρώµατα), που φαίνονται στο Σχήµα 2.3. Επίπεδο
Μονάδα δεδοµένων
7. Επίπεδο εφαρµογής
Μήνυµα
6. Επίπεδο παρουσίασης
Μήνυµα
5. Επίπεδο συνόδου
Μήνυµα
4. Επίπεδο µεταφοράς
Μήνυµα
3. Επίπεδο δικτύου
Πακέτο
2. Επίπεδο ζεύξης δεδοµένων
Πλαίσιο
1. Φυσικό επίπεδο
Bit
Κάθε επίπεδο Ν χρησιµοποιεί τις υπηρεσίες που παρέχονται από το αµέσως κατώτερο επίπεδο Ν–1 και τις ενισχύει, προκειµένου να παραγάγει µια πιο ολοκληρωµένη υπηρεσία στο αµέσως ανώτερο επίπεδο Ν+1. Είναι φανερό ότι, αφού κάθε επίπεδο χρησιµοποιεί άµεσα τις υπηρεσίες τού αµέσως κατωτέρου του, χρησιµοποιεί έµµεσα τις υπηρεσίες και όλων των κατωτέρων του επιπέδων. Το επίπεδο Ν υλοποιείται από δύο (ή και περισσότερες) επικοινωνούσες οντότητες επιπέδου Ν (Oντότητες N), οι οποίες ανταλλάσσουν εντολές και δεδοµένα µέσω ενός πρωτοκόλλου επιπέδου Ν (Πρωτοκόλλου N). Οι οντότητες αυτές ενεργοποιούν τις υπηρεσίες του επιπέδου Ν–1, όπως αυτές παρέχονται σε τοπικές εσωτερικές διεπαφές, για
™¯‹Ì· 2.3
Τα επίπεδα του µοντέλου αναφοράς OSI
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
42
να µεταφέρουν η µία στην άλλη τις µονάδες δεδοµένων πρωτοκόλλου (Protocol Data Units – PDUs) επιπέδου Ν. Οι Oντότητες N στη συνέχεια προσφέρουν την ολοκληρωµένη υπηρεσία στο επίπεδο Ν+1 µέσω εσωτερικών διεπαφών. Η διαδικασία αυτή φαίνεται στο Σχήµα 2.4. Yπηρεσία προς επίπεδο N+1
™¯‹Ì· 2.4
επίπεδο N
Oντότητα N
Επικοινωνία οντοτήτων στο µοντέλο OSI
Yπηρεσία προς επίπεδο N+1
Πρωτόκολλο N
Oντότητα N
Yπηρεσίες επιπέδου N+1
Οι υπηρεσίες που προσφέρει κάθε επίπεδο κατατάσσονται σε δύο κατηγορίες: • σε υπηρεσίες προσανατολισµένες σε σύνδεση, η παροχή των οποίων προαπαιτεί την εγκατάσταση µιας σταθερής σύνδεσης µεταξύ των δύο οντοτήτων που επικοινωνούν, τη διατήρησή της για όσο χρονικό διάστηµα διαρκεί η επικοινωνία και τον τερµατισµό της µόλις η επικοινωνία ολοκληρωθεί, και • σε υπηρεσίες χωρίς σύνδεση, η παροχή των οποίων δεν απαιτεί την εγκατάσταση σύνδεσης. Στην περίπτωση αυτή κάθε µήνυµα µεταξύ των οντοτήτων που εµπλέκονται στην επικοινωνία µεταδίδεται αυτόνοµα και ανεξάρτητα από κάθε άλλο, ενώ δεν τηρείται απαραίτητα η σειρά διαδοχής των µηνυµάτων κατά τη µετάδοση. Ο σκοπός µας εδώ δεν είναι, βέβαια, να δώσουµε µια αναλυτική περιγραφή του µοντέλου αυτού, κάτι που δίνεται πάντα σε µαθήµατα σχετικά µε δίκτυα Η/Υ. Θα περιγράψουµε, λοιπόν, πολύ περιληπτικά τα επίπεδα που ορίζονται στο µοντέλο. ∆√ ºÀ™π∫√ ∂¶π¶∂¢√
Το επίπεδο αυτό ασχολείται µε τη µετάδοση bits µέσω επικοινωνιακών διαύλων. Ένα ζήτηµα που µας απασχολεί στο επίπεδο αυτό είναι η εξασφάλιση ότι, όταν ο ποµπός στέλνει ένα «1», ο δέκτης λαµβάνει κι αυτός ένα «1» και όχι ένα «0». Επιλογές που πρέπει να γίνουν στο επίπεδο αυτό αφορούν το πόσα volt θα αντιπροσωπεύουν το ψηφιακό «1» και πόσα το ψηφιακό «0», πόσα µικροδευτερόλεπτα διαρκεί ο παλµός που αντιπροσωπεύει ένα bit, αν η µετάδοση µπορεί να γίνεται ταυτόχρονα και προς τις δύο κατευθύνσεις, πώς οι δύο πλευρές αρχίζουν και πώς σταµατούν τη µεταξύ τους επικοινωνία, πόσες ακίδες θα έχει ο κάθε συνδετήρας δικτύου (network connector) και τι αντιπροσωπεύει κάθε ακίδα κτλ.
2.1 B∞™π∫∂™ ∞ƒÃ∂™ ¢π∫∆Àø¡
∆√ ∂¶π¶∂¢√ ∑∂À•∏™ ¢∂¢√ª∂¡ø¡
Το επίπεδο αυτό ασχολείται µε το να «µετατρέπει» έναν επικοινωνιακό δίαυλο σε µια ζεύξη που, φαινοµενικά για το ανώτερο επίπεδο, δεν εισάγει σφάλµατα µετάδοσης. Για να το καταφέρει αυτό, τεµαχίζει τα δεδοµένα εισόδου σε πλαίσια δεδοµένων, µεταδίδει ακολουθιακά τα πλαίσια αυτά και επεξεργάζεται τα πλαίσια της απόκρισης που ο δέκτης στέλνει στον ποµπό. Επειδή το επίπεδο 1 απλώς αποδέχεται και µεταδίδει µια σειρά από bits χωρίς να εξετάζει ούτε τη σηµασία ούτε τη δοµή τους, η δηµιουργία και αναγνώριση των ορίων των πλαισίων αποτελεί λειτουργία που πρέπει να εκτελεστεί από το επίπεδο 2. Ένας τρόπος υλοποίησης αυτής της λειτουργίας είναι, για παράδειγµα, µε την πρόσθεση ειδικών ακολουθιών από bits στην αρχή και στο τέλος κάθε πλαισίου. Βέβαια, πρέπει να υπάρχει και πρόνοια για την (καθόλου απίθανη) περίπτωση που οι ακολουθίες αυτές εµφανιστούν µέσα στα ίδια τα δεδοµένα. Θόρυβος που εµφανίστηκε στη γραµµή µπορεί να καταστρέψει εντελώς ένα πλαίσιο. Τότε, το λογισµικό του επιπέδου 2 του ποµπού πρέπει να αναµεταδώσει το κατεστραµµένο πλαίσιο. Όµως, η επανάληψη αυτή στη µετάδοση πλαισίων µπορεί να οδηγήσει στη λήψη του ίδιου πλαισίου δύο (ή περισσότερες) φορές, αν, για παράδειγµα, χαθεί το πλαίσιο της απόκρισης, µε το οποίο ο δέκτης επιβεβαιώνει τη λήψη ενός πλαισίου. Η επίλυση των προβληµάτων αυτών αποτελεί λειτουργία που πρέπει να εκτελεστεί από το επίπεδο 2, έτσι ώστε το επόµενο επίπεδο 3 να µπορεί να λειτουργήσει µε την υπόθεση ότι υπάρχει στη διάθεσή του ένας δίαυλος επικοινωνίας ελεύθερος σφαλµάτων. Ένα άλλο ζήτηµα το οποίο πρέπει να επιλυθεί στο επίπεδο 2 είναι η εξασφάλιση ότι γρήγοροι ποµποί δε θα κατακλύζουν µε δεδοµένα αργούς δέκτες, προκαλώντας τους συµφόρηση. ∆√ ∂¶π¶∂¢√ ¢π∫∆À√À
Το επίπεδο αυτό ελέγχει τη λειτουργία του δικτύου. Η βασική λειτουργία του επιπέδου είναι να παραλαµβάνει πηγαία µηνύµατα, να τα µετατρέπει σε πακέτα (µονάδα µέτρησης της πληροφορίας στο επίπεδο 3) και να κατευθύνει τα πακέτα αυτά προς τον προορισµό τους. Ένα σηµαντικό ζήτηµα εδώ είναι ο καθορισµός της διαδροµής που θα πρέπει να ακολουθήσει ένα πακέτο προς τον παραλήπτη του. Αυτός ο καθορισµός µπορεί είτε να γίνει βάσει στατικών πινάκων που δεν αλλάζουν συχνά είτε να γίνεται στην αρχή κάθε συνόδου είτε να γίνεται δυναµικά, παίρνοντας υπόψη, για παράδειγµα, την πραγµατική κίνηση στο δίκτυο τη στιγµή της αποστολής κάθε πακέτου.
43
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
44
Το επίπεδο 3 είναι, επίσης, υπεύθυνο για τη διατήρηση της οµαλής κυκλοφορίας των πακέτων στο δίκτυο και την αντιµετώπιση των συµφορήσεων που πολλές φορές παρουσιάζονται σ’ αυτό, όπως και για την τήρηση λογιστικών στοιχείων κίνησης. ∆√ ∂¶π¶∂¢√ ª∂∆∞º√ƒ∞™
Η βασική λειτουργία του επιπέδου αυτού είναι να παραλαµβάνει δεδοµένα από το επίπεδο συνόδου, να τα τεµαχίζει, αν χρειάζεται, σε µικρότερα κοµµάτια, να τα προωθεί στο επίπεδο δικτύου και να εξασφαλίζει ότι τα κοµµάτια θα φτάσουν στην άλλη άκρη της ζεύξης σωστά. Σε κανονικές συνθήκες, το επίπεδο µεταφοράς δηµιουργεί µια ξεχωριστή σύνδεση επιπέδου 3 για καθεµία σύνδεση επιπέδου 4 που θα απαιτήσει το επίπεδο συνόδου. Ωστόσο, αν το απαιτούµενο από τη σύνδεση επιπέδου 4 εύρος ζώνης είναι πολύ µεγάλο ή, αντίθετα, ασύµφορα µικρό, είναι δυνατή η χρήση είτε περισσότερων από µια συνδέσεων επιπέδου 3 για µια σύνδεση επιπέδου 4 είτε η χρήση µιας σύνδεσης επιπέδου 3 για περισσότερες από µια συνδέσεις επιπέδου 4. Σε κάθε περίπτωση, οι επιλογές αυτές δεν πρέπει να απασχολούν ή να αφορούν το επίπεδο συνόδου. ∆√ ∂¶π¶∂¢√ ™À¡√¢√À
Αν αγνοήσουµε για λίγο το επίπεδο παρουσίασης, που απλώς µετασχηµατίζει τα δεδοµένα, το επίπεδο συνόδου αποτελεί τη διεπαφή του χρήστη µε το δίκτυο. Μ’ αυτό το επίπεδο πρέπει να διαπραγµατευτεί ο χρήστης την πραγµατοποίηση µιας σύνδεσης µε µια διεργασία ή µε µια άλλη µηχανή. Το να εγκατασταθεί µια τέτοια σύνδεση είναι αρκετά πολύπλοκη δουλειά. Πρώτα πρώτα, είναι πιθανό να χρειάζεται κατάλληλη αυθεντικοποίηση των δύο µερών, έτσι ώστε να διαπιστωθεί αν και τα δύο µέρη έχουν δικαίωµα να πραγµατοποιήσουν τη σύνοδο και για να αναγνωριστεί το µέρος που θα πληρώσει και το λογαριασµό στο τέλος. Μετά, τα δύο µέρη πρέπει να συµφωνήσουν πάνω σε µια σειρά επιλογών, όπως, για παράδειγµα, αν θα χρησιµοποιήσουν αµφίδροµη (full–duplex ) ή µονόδροµη (half–duplex) επικοινωνία. Από τη στιγµή που η σύνδεση θα εγκατασταθεί, το επίπεδο συνόδου µπορεί να διαχειριστεί οργανωµένα το διάλογο, αν ο χρήστης έχει ζητήσει κάτι τέτοιο. Ένα παράδειγµα τέτοιας διαχείρισης είναι η οµαδοποίηση µηνυµάτων και η παράδοση αυτών µόνο όταν φτάσουν στον παραλήπτη όλα τα µηνύµατα της οµάδας. Η υπηρεσία αυτή είναι ιδιαίτερα χρήσιµη σε ορισµένα συστήµατα διαχείρισης βάσεων δεδοµένων, που απαιτούν ότι πολύπλοκες συναλλαγές µε τη βάση δεν πρέπει να εγκαταλείπονται ανολοκλήρωτες, γιατί αυτό οδηγεί σε απώλεια της εσωτερικής συνέπειας της βάσης.
2.1 B∞™π∫∂™ ∞ƒÃ∂™ ¢π∫∆Àø¡
∆√ ∂¶π¶∂¢√ ¶∞ƒ√À™π∞™∏™
Το επίπεδο αυτό επιτελεί λειτουργίες που χρειάζονται αρκετά συχνά και, κατά συνέπεια, δικαιολογούν την εξεύρεση µιας γενικής λύσης για όλους τους χρήστες. Οι λειτουργίες αυτές συνήθως είναι δυνατόν να εκτελεστούν από ρουτίνες βιβλιοθήκης που καλεί ο χρήστης, αλλά µπορούν, φυσικά, και να ενσωµατωθούν στο λειτουργικό σύστηµα. Ένα κλασικό παράδειγµα τέτοιας λειτουργίας είναι η συµπίεση κειµένου ή µηνύµατος. Ένα άλλο παράδειγµα είναι η κρυπτογράφηση κειµένου ή µηνύµατος ή η µετατροπή από έναν κώδικα σε άλλο (π.χ. από ASCII σε EBCDIC). ∆√ ∂¶π¶∂¢√ ∂º∞ƒª√°∏™
Τα περιεχόµενα του επιπέδου αυτού εξαρτώνται από το συγκεκριµένο χρήστη. Όταν επικοινωνούν δύο προγράµµατα που βρίσκονται σε διαφορετικές µηχανές, µόνα τους καθορίζουν το σύνολο των επιτρεπόµενων µεταξύ τους µηνυµάτων και τις ενέργειες που πρέπει να γίνουν, όταν ληφθεί καθένα απ’ αυτά. Ωστόσο, υπάρχουν αρκετά ζητήµατα εδώ που είναι αρκούντως γενικά ώστε να δικαιολογούν την αναζήτηση γενικής λύσης. Για παράδειγµα, το ζήτηµα της διαφάνειας του δικτύου, δηλαδή της απόκρυψης της θέσης των φυσικών πόρων του από τους χρήστες του, εµφανίζεται σε πολλές εφαρµογές. Ένα άλλο παράδειγµα είναι το ζήτηµα του (κατά προτίµηση) αυτοµατοποιηµένου διαµερισµού ενός προβλήµατος µεταξύ διαφορετικών µηχανών του δικτύου µε τρόπο τέτοιο ώστε να υπάρχει µέγιστη αξιοποίηση του δικτύου. ∂¶π∫√π¡ø¡π∞ ª∂∆∞•À ∂¶π¶∂¢ø¡
Ο τρόπος επικοινωνίας µεταξύ των διαφορετικών επιπέδων του προτύπου φαίνεται στο Σχήµα 2.5. Τα επίπεδα αντιπροσωπεύουν διαφορετικές δραστηριότητες που εκτελούνται κατά τη µετάδοση ενός µηνύµατος και κάθε επίπεδο εξυπηρετεί µια διαφορετική λειτουργία. Ισότιµα επίπεδα εκτελούν όµοιες λειτουργίες τόσο στον ποµπό όσο και στο δέκτη. Για παράδειγµα, το επίπεδο 4 του ποµπού προσθέτει µια επικεφαλίδα στο µήνυµα, που περιέχει τον αποστολέα και τον παραλήπτη του µηνύµατος, καθώς και πληροφορίες σχετικές µε τη θέση του µηνύµατος µέσα σε µια ακολουθία µηνυµάτων. Στην πλευρά του δέκτη, το επίπεδο 4 επιβεβαιώνει ότι ο παραλήπτης είναι ο σωστός και κατόπιν αποµακρύνει την επικεφαλίδα. Κάθε επίπεδο µεταδίδει δεδοµένα προς τρεις κατευθύνσεις: προς τα πάνω, µε επίπεδο που επικοινωνεί σε µεγαλύτερο βαθµό αφαίρεσης, παράλληλα (ή απέναντι) προς το ίδιο επίπεδο άλλου τελικού συστήµατος ή προς τα κάτω, µε επίπεδο που επικοινωνεί σε µικρότερο βαθµό αφαίρεσης. Οι επικοινωνίες προς τα πάνω και προς τα κάτω είναι πραγµατικές, ενώ οι παράλληλες είναι ιδεατές.
45
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
46
Ποµπός Eπίπεδο 7: Eφαρµογής Eπίπεδο 6: Παρουσίασης Eπίπεδο 5: Συνόδου
∆έκτης Πρωτόκολλο εφαρµογής
Πρωτόκολλο παρουσίασης
Πρόγραµµα εφαρµογής Προγράµµατα συστήµατος
Πρωτόκολλο συνόδου Λειτουργικά συστήµατα
Eπίπεδο 4: Mεταφοράς
Πρωτόκολλο µεταφοράς
Eπίπεδο 3: ∆ικτύου
Πρωτόκολλο δικτύου
Eπίπεδο 2: Zεύξης ∆εδοµένων
Πρωτόκολλο ζεύξης δεδοµένων
Eπίπεδο1: Φυσικό
Φυσική σύνδεση
Yλικό
™¯‹Ì· 2.5
Επικοινωνία µεταξύ επιπέδων στο µοντέλο OSI
Κάθε επίπεδο αναµορφώνει τα µηνύµατά του και ανταλλάσσει πληροφορίες µε το ισότιµό του επίπεδο. Το Σχήµα 2.6 δείχνει ένα τυπικό µήνυµα που έχει υποστεί επεξεργασία από όλα τα επίπεδα πριν να µεταδοθεί. Το επίπεδο 6 (παρουσίασης) διαιρεί το αρχικό µήνυµα σε τµήµατα (blocks). Το επίπεδο 5 (συνόδου) προσθέτει µια επικεφαλίδα που περιέχει πληροφορίες για τον αποστολέα, τον παραλήπτη και τη σειρά διαδοχής του µηνύµατος µέσα στην ακολουθία µηνυµάτων. Το επίπεδο 4 (µεταφοράς) προσθέτει πληροφορίες για τη λογική σύνδεση µεταξύ αποστολέα και παραλήπτη. Το επίπεδο 3 (δικτύου) προσθέτει πληροφορίες δροµολόγησης. Επίσης, διαιρεί το µήνυµα σε πακέτα. Το επίπεδο 2 (ζεύξης δεδοµένων) προσθέτει επικεφαλίδα και ουρά στο µήνυµα, για να εξασφαλίσει τη διατήρηση της σωστής σειράς διαδοχής των τµηµάτων του µηνύµατος και για να ανιχνεύσει και να διορθώσει σφάλµατα που πιθανόν θα συµβούν κατά τη µετάδοση. Τα bits του µηνύµατος και οι πληροφορίες ελέγχου µεταδίδονται στο φυσικό µέσο από το επίπεδο 1 (φυσικό µέσο). Όλες οι προσθήκες που έκανε κάθε επίπεδο του ποµπού στο αρχικό µήνυµα ελέγχονται και αφαιρούνται από το αντίστοιχο ισότιµο επίπεδο στο δέκτη.
B N
Eπίπεδο 2: Zεύξης ∆εδοµένων
M1
S
M2
B N
-M1
T
M2
Φυσικό µέσο:bits
S -M1 E
N
S
Eπικεφαλίδα συνόδου Eπικεφαλίδα µεταφοράς Eπικεφαλίδα δικτύου Eπικεφαλίδα ζεύξης δεδοµένων Oυρά ζεύξης δεδοµένων
T
S -M1
M1
M
Προετοιµασία ενός µηνύµατος για µετάδοση
™¯‹Ì· 2.6
S: T: N: B: E:
Eπίπεδο1: Φυσικό
N
Eπίπεδο 3: ∆ικτύου T
T
Eπίπεδο 4: Mεταφοράς S
S
M1
Eπίπεδο 5: Συνόδου
Eπίπεδο 6: Παρουσίασης
Eπίπεδο 7: Eφαρµογής
-M1
N
M2
T
E
S -M1
B N
N
T
S -M2 E
-M2
B N
-M2
E
Ψηφιακά δεδοµένα
Πλαίσιο
Πακέτο
Mήνυµα
Mήνυµα
Tµήµατα
∆εδοµένα
2.1 B∞™π∫∂™ ∞ƒÃ∂™ ¢π∫∆Àø¡ 47
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
48
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 2.1 Αντιστοιχίστε τις λειτουργίες της αριστερής στήλης µε τα επίπεδα OSI της δεξιάς. Προσέξτε! Η αντιστοίχιση δε θα είναι απαραίτητα ένα προς ένα. 1. Έναρξη σύνδεσης µεταξύ δύο σηµείων
1. Φυσικό επίπεδο
2. Ανίχνευση και διόρθωση σφαλµάτων µετάδοσης
2. Επίπεδο ζεύξης δεδοµένων
3. ∆ιακοπή σύνδεσης µεταξύ δύο σηµείων
3. Επίπεδο δικτύου
4. ∆ιαίρεση µηνύµατος σε πλαίσια
4. Επίπεδο µεταφοράς
5. Μετατροπή µηνύµατος σε πακέτο
5. Επίπεδο συνόδου
6. ∆ροµολόγηση πακέτων
6. Επίπεδο παρουσίασης
7. Μετάδοση ψηφιακής συµβολοσειράς
7. Επίπεδο εφαρµογής
8. Εγκατάσταση συνόδου 9. Οµαδοποίηση και οµαδική παράδοση µηνυµάτων 10. Συµπίεση δεδοµένων 11. Κρυπτογράφηση δεδοµένων 12. Παροχή διαφανούς δικτύου 13. ∆ιαίρεση προβλήµατος για εκτέλεση σε κατανεµηµένο περιβάλλον
¢Ú·ÛÙËÚÈfiÙËÙ· 2.1 Ένα στέλεχος µιας εταιρείας θέλει να στείλει ένα µήνυµα σε ένα οµόλογό του µιας άλλης εταιρείας. Καλεί, λοιπόν, τη γραµµατέα του και της υπαγορεύει το µήνυµα. Η γραµµατέας γράφει το µήνυµα στον επεξεργαστή κειµένου, το αποθηκεύει στο δίσκο, το τυπώνει σε επιστολόχαρτο της εταιρείας και το στέλνει µε fax στον προορισµό του. Η αντίστοιχη γραµµατέας της άλλης εταιρείας λαµβάνει το fax, το αντιγράφει, το αρχειοθετεί και δίνει το πρωτότυπο στον προϊστάµενό της, που είναι και ο τελικός παραλήπτης. Είναι το σύστηµα αυτό επικοινωνίας συµβατό µε το µοντέλο OSI; Αν ναι, αναγνωρίστε τα διάφορα επίπεδά του και τα σχετικά πρωτόκολλα.
2.2 A¶∂π§∂™
49
¢Ú·ÛÙËÚÈfiÙËÙ· 2.2 Στο Σχήµα 2.6 φαίνεται η προετοιµασία ενός µηνύµατος για µετάδοση. Στο σύστηµα του σχήµατος, το επίπεδο 3 διαιρεί το µήνυµα που έρχεται από το επίπεδο 4 σε πακέτα. Ξανασχεδιάστε το Σχήµα 2.6 υποθέτοντας ότι η διαίρεση του µηνύµατος σε πακέτα γίνεται στο επίπεδο 4. 2.2 AÂÈϤ˜
Σ’ ένα οποιοδήποτε δίκτυο έχουµε τοπικούς κόµβους, συνδεµένους µέσω τοπικών ζεύξεων προς κάποιο τοπικό δίκτυο, το οποίο επίσης κάνει τοπική αποθήκευση δεδοµένων, έχει δε τοπικές διεργασίες και τοπικές συσκευές. Το τοπικό δίκτυο είναι επίσης συνδεµένο µε µια πύλη (network gateway), η οποία επιτρέπει την πρόσβαση, µέσω δικτυακών ζεύξεων, προς πόρους ελέγχου του δικτύου, δροµολογητές δικτύου και άλλους πόρους δικτύου (π.χ. βάσεις δεδοµένων). Ένα καλό παράδειγµα χρήσης του δικτύου φαίνεται στο Σχήµα 2.7, όπου ο Αλέκος, που εργάζεται στο σταθµό εργασίας Α, θέλει να επικοινωνήσει µε το Βασίλη, που εργάζεται στο σταθµό εργασίας Β. Θέλει, επίσης, να χρησιµοποιήσει πόρους του τοπικού δικτύου στο οποίο βρίσκεται ο Βασίλης ή να χρησιµοποιήσει πόρους του τοπικού δικτύου Γ, που είναι συνδεµένο σε κάποια άλλη θέση του δικτύου. ™¯‹Ì· 2.7 Ένα παράδειγµα χρήσης δικτύου gateway Yποδίκτυα A
WAN
routers K
Γ
B
50
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
Όλες αυτές οι λειτουργικές ανάγκες είναι τυπικές για χρήστες δικτύων. Αλλά ας προσθέσουµε τώρα και έναν κακεντρεχή εξωτερικό χρήστη, τον Κώστα, που εργάζεται στο σταθµό εργασίας Κ, και ας δούµε τι µπορεί αυτός να προκαλέσει. Ο Κώστας µπορεί να κάνει τα εξής: • Να διαβάσει ή να τροποποιήσει µηνύµατα που ο Αλέκος στέλνει στο Βασίλη. Αυτά είναι εκτεθειµένα στη µηχανή του Αλέκου, σε όλα τα σηµεία του δικτύου και µέσα στη µηχανή του Βασίλη. Εποµένως, επιθέσεις εναντίον της εµπιστευτικότητας αυτών των µηνυµάτων µπορούν να εκδηλωθούν απ’ οπουδήποτε µέσα στο δίκτυο. • Να πλαστογραφήσει µηνύµατα, που θα εµφανίζονται ότι στέλνονται από τον Αλέκο στο Βασίλη. Αυτό είναι ακόµη ευκολότερο από την τροποποίηση µηνύµατος, επειδή ένα πλαστό µήνυµα µπορεί να εισαχθεί οπουδήποτε µέσα στο δίκτυο χωρίς να απαιτείται παρέµβαση στη διαδροµή µετάδοσης κάποιου αυθεντικού µηνύµατος. Σηµειώστε ότι, επειδή ο Αλέκος δε µεταδίδει τα µηνύµατά του προσωπικά ο ίδιος, αλλά µόνο µέσω του δικτύου, και επειδή ο Βασίλης πιθανόν να µην έχει ποτέ συναντήσει τον Αλέκο, έχει στη διάθεσή του πολύ λίγη πληροφορία για να µπορέσει να διακρίνει αν ένα µήνυµα που υποτίθεται ότι έρχεται από τον Αλέκο είναι αυθεντικό. • Να επαναλάβει ένα µήνυµα που στάλθηκε πραγµατικά από τον Αλέκο στο Βασίλη. Το πόσο κακό µπορεί µια τέτοια ενέργεια να κάνει γίνεται φανερό αν σκεφτούµε ότι το αρχικό (αυθεντικό) µήνυµα του Αλέκου προς το Βασίλη ήταν µια εντολή µεταφοράς δέκα εκατοµµυρίων δραχµών από τον τραπεζικό λογαριασµό του Αλέκου στον τραπεζικό λογαριασµό κάποιου τρίτου (ή –γιατί όχι– του ίδιου του Κώστα). • Να εµποδίσει την επικοινωνία µεταξύ Αλέκου και Βασίλη. Αυτό µπορεί να το πετύχει παρεισφρέοντας στη µηχανή του Βασίλη ή στη µηχανή του Αλέκου ή σε δροµολογητές που βρίσκονται µεταξύ των δύο αυτών ή σε κάποιες ζεύξεις. Μπορεί επίσης να διακόψει τις επικοινωνίες γενικότερα, κατακλύζοντας είτε ολόκληρο το δίκτυο µε µηνύµατα είτε οποιοδήποτε συγκεκριµένο διάδροµο επικοινωνίας µέσα στο δίκτυο. • Να εµποδίσει τη µετάδοση όλων των µηνυµάτων που περνούν από κάποιο συγκεκριµένο σηµείο. Αν το σηµείο αυτό ανήκει σε ζεύξη που είναι η µοναδική ζεύξη εισόδου ή εξόδου προς ή από κάποιον κόµβο, όλη η κίνηση προς ή από τον κόµβο αυτό αποκλείεται. Αν το σηµείο δεν ανήκει σε τέτοια ζεύξη, η κίνηση του δικτύου θα µεταφερθεί σε άλλους κόµβους, πιθανόν προκαλώντας υπερφόρτωσή τους. • Να διαβάσει, να τροποποιήσει ή να καταστρέψει δεδοµένα που είναι αποθηκευ-
2.3 À¶∏ƒ∂™π∂™ ∞™º∞§∂π∞™ ™∆√ ª√¡∆∂§√ OSI
µένα στους σταθµούς εργασίας Γ ή ∆. Για να το κάνει αυτό ο Κώστας, µπορεί να προσποιηθεί ότι είναι ο Αλέκος, ο οποίος έχει άδεια πρόσβασης στα δεδοµένα αυτά. Ο Βασίλης µπορεί να προβληµατιστεί από κάποιο περίεργο µήνυµα που υποτίθεται προέρχεται από τον Αλέκο, αλλά οι µηχανές Γ και ∆ απλώς θα εφαρµόσουν τους κανόνες προσπέλασης που ισχύουν για τον Αλέκο, χωρίς δεύτερη σκέψη. Εναλλακτικά, ο Κώστας µπορεί να παρεισφρήσει στη µηχανή Γ ή στη µηχανή ∆, παρακάµπτοντας τους µηχανισµούς ελέγχου πρόσβασης. Τέλος, ο Κώστας µπορεί να ψάξει το δίκτυο και να βρει µηχανές µε αδύναµους µηχανισµούς ελέγχου πρόσβασης ή µηχανές µε ισχυρούς µεν µηχανισµούς αλλά κακή διαχείριση ή/και εφαρµογή των µηχανισµών. • Τέλος, ο Κώστας µπορεί, πάλι προσποιούµενος ότι είναι ο Αλέκος ή παρεισφρέοντας στην κατάλληλη µηχανή να εκτελέσει ένα πρόγραµµα (ή γενικότερα να χρησιµοποιήσει πόρους) χωρίς εξουσιοδότηση. Συνοψίζοντας τα παραπάνω, µπορούµε να πούµε ότι ένα δίκτυο κινδυνεύει κυρίως από τα εξής: • Παρακολουθήσεις ζεύξεων • Πλαστοπροσωπία • Παραβιάσεις εµπιστευτικότητας µηνυµάτων • Παραβιάσεις ακεραιότητας µηνυµάτων • Hacking • Παραβιάσεις ακεραιότητας κώδικα • Αρνήσεις παροχής υπηρεσίας 2.3 ÀËÚÂۛ˜ ·ÛÊ¿ÏÂÈ·˜ ÛÙÔ ÌÔÓÙ¤ÏÔ OSI
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Θυµηθείτε από τη συζήτησή µας στο προηγούµενο κεφάλαιο ότι ο αντικειµενικός µας σκοπός είναι η προστασία της εµπιστευτικότητας, της ακεραιότητας και της διαθεσιµότητας των πληροφοριών και των συστηµάτων του δικτύου. Το πρότυπο ISO 7498–2 καθορίζει µια σειρά υπηρεσιών που πρέπει να υποστηρίζονται από το δίκτυο προκειµένου να είναι δυνατόν να επιτευχθεί ο σκοπός αυτός. Οι υπηρεσίες αυτές κατηγοριοποιούνται στις εξής: • Υπηρεσίες εξασφάλισης συνεχούς λειτουργίας
51
52
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
• Υπηρεσίες προστασίας ακεραιότητας • Υπηρεσίες αυθεντικοποίησης • Υπηρεσίες ελέγχου πρόσβασης • Υπηρεσίες προστασίας εµπιστευτικότητας • Υπηρεσίες υποστήριξης µη αµφισβήτησης Θα δούµε στη συνέχεια τις κατηγορίες αυτές µε λεπτοµέρεια. 2.3.1 YËÚÂۛ˜ ÂÍ·ÛÊ¿ÏÈÛ˘ Û˘Ó¯ԇ˜ ÏÂÈÙÔ˘ÚÁ›·˜
Ο σκοπός των υπηρεσιών αυτών είναι να εξασφαλίσουν ότι το δίκτυο θα µπορεί να παρέχει συνεχώς τις υπηρεσίες του, στο επίπεδο και µε την ποιότητα που απαιτούνται για να ανταποκριθεί στο σκοπό που εξυπηρετεί. Ο σκοπός των υπηρεσιών αυτών µπορεί περισσότερο να εξειδικευτεί λέγοντας ότι στοχεύουν στην αντιµετώπιση των κινδύνων της κατηγορίας «άρνηση παροχής υπηρεσίας». 2.3.2 YËÚÂۛ˜ ÚÔÛÙ·Û›·˜ ·ÎÂÚ·ÈfiÙËÙ·˜
Ο σκοπός των υπηρεσιών αυτών είναι να προστατεύσουν τα δεδοµένα που διακινούνται στο δίκτυο από µη εξουσιοδοτηµένη τροποποίηση. Οι υπηρεσίες αυτές επικεντρώνονται είτε στην προστασία µιας µονάδας δεδοµένων είτε στην προστασία µιας ακολουθίας δεδοµένων, µιας σύνδεσης ή µιας συνόδου, δηλαδή ενός συνόλου µονάδων δεδοµένων. Το πρότυπο καθορίζει πέντε τέτοιες υπηρεσίες: • Υπηρεσία ακεραιότητας σύνδεσης µε δυνατότητα ανάκαµψης. Η υπηρεσία αυτή εξασφαλίζει την ακεραιότητα των δεδοµένων σε µια σύνδεση επιπέδου Ν (Σύνδεση N) και επιτρέπει την ανάκαµψη, αν αυτή επιχειρηθεί. • Υπηρεσία ακεραιότητας σύνδεσης χωρίς δυνατότητα ανάκαµψης. Η υπηρεσία αυτή επιτρέπει απλώς την ανίχνευση του γεγονότος ότι κάποια δεδοµένα σε µια Σύνδεση N παραποιήθηκαν. • Υπηρεσία ακεραιότητας επιλεγµένου πεδίου εντός σύνδεσης. Η υπηρεσία αυτή εξασφαλίζει την ακεραιότητα ενός επιλεγµένου πεδίου των δεδοµένων σε µια Σύνδεση N. • Υπηρεσία ακεραιότητας εκτός σύνδεσης. Η υπηρεσία αυτή εξασφαλίζει την ακεραιότητα µιας µόνο µονάδας δεδοµένων, εκτός σύνδεσης. • Υπηρεσία ακεραιότητας επιλεγµένου πεδίου εκτός σύνδεσης. Η υπηρεσία αυτή εξασφαλίζει την ακεραιότητα επιλεγµένων πεδίων µιας µόνο µονάδας δεδοµένων, εκτός σύνδεσης.
2.3 À¶∏ƒ∂™π∂™ ∞™º∞§∂π∞™ ™∆√ ª√¡∆∂§√ OSI
2.3.3 YËÚÂۛ˜ ·˘ıÂÓÙÈÎÔÔ›ËÛ˘
Υπάρχουν δύο τύποι υπηρεσιών αυθεντικοποίησης. Οι υπηρεσίες του πρώτου τύπου, που αναφέρονται συνήθως ως υπηρεσίες αυθεντικοποίησης προέλευσης δεδοµένων, έχουν ως σκοπό να επιτρέπουν στους αποστολείς δεδοµένων να επιβεβαιώνουν την ταυτότητά τους. Οι υπηρεσίες αυτού του τύπου παρέχονται συνήθως κατά τη φάση µεταγωγής δεδοµένων. Οι υπηρεσίες του δεύτερου τύπου, που αναφέρονται συνήθως ως υπηρεσίες αυθεντικοποίησης ισότιµης οντότητας, έχουν ως σκοπό να επιτρέπουν σε οντότητες να επαληθεύσουν ότι µια ισότιµη οντότητα που συµµετέχει σε µια σύνδεση είναι αυτή που ισχυρίζεται πως είναι. Οι υπηρεσίες αυτού του τύπου παρέχονται συνήθως κατά τη φάση δηµιουργίας της σύνδεσης, χωρίς να αποκλείεται όµως η χρήση τους και κατά τη φάση µεταγωγής των δεδοµένων. 2.3.4 YËÚÂۛ˜ ÂϤÁ¯Ô˘ ÚfiÛ‚·Û˘
Ο σκοπός των υπηρεσιών αυτών είναι να προστατεύσουν τους πόρους, τα αρχεία, τα δεδοµένα και τις εφαρµογές του δικτύου από µη εξουσιοδοτηµένη προσπέλαση. Πιθανότατα είναι οι υπηρεσίες εκείνες που έρχονται πρώτες στη σκέψη µας, όταν αναφερόµαστε σε ασφάλεια υπολογιστών ή δικτύων. Ο υπηρεσίες αυτές, που σχετίζονται πολύ στενά µε την αναγνώριση χρήστη και την αυθεντικοποίηση, χρησιµοποιούνται σε δικτυακά περιβάλλοντα για να ελέγξουν τη πρόσβαση σε πόρους και υπηρεσίες του δικτύου, σε εφαρµογές και σε δεδοµένα. 2.3.5 YËÚÂۛ˜ ÚÔÛÙ·Û›·˜ ÂÌÈÛÙ¢ÙÈÎfiÙËÙ·˜
Ο σκοπός των υπηρεσιών αυτών είναι να προστατεύσουν τα δεδοµένα που διακινούνται στο δίκτυο από αποκάλυψη σε µη εξουσιοδοτηµένα πρόσωπα, διαδικασίες και οντότητες. Το πρότυπο καθορίζει τέσσερις τέτοιες υπηρεσίες: • Υπηρεσία εµπιστευτικότητας σύνδεσης, η οποία εξασφαλίζει την εµπιστευτικότητα των δεδοµένων σε µια Σύνδεση N. • Υπηρεσία εµπιστευτικότητας εκτός σύνδεσης, η οποία εξασφαλίζει την εµπιστευτικότητα µιας µονάδας δεδοµένων. • Υπηρεσία εµπιστευτικότητας επιλεγµένου πεδίου, η οποία εξασφαλίζει την εµπιστευτικότητα ενός πεδίου µιας µονάδας δεδοµένων που βρίσκεται είτε εντός είτε εκτός Σύνδεσης N. • Υπηρεσία εµπιστευτικότητας κίνησης, η οποία εξασφαλίζει ότι δεν είναι δυνατή η εξαγωγή πληροφορίας από την παρακολούθηση της κίνησης του δικτύου. Πράγµατι, η παρουσία κίνησης, η έλλειψη κίνησης, η συχνότητα κίνησης, η συνέπεια
53
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
54
κίνησης, το επίπεδο κίνησης και η κατεύθυνση της κίνησης µπορούν να χρησιµοποιηθούν για τη συναγωγή πληροφορίας σχετικής µε τις προθέσεις, τη λειτουργία ή τη δραστηριότητα δύο µερών. 2.3.6 YËÚÂۛ˜ ˘ÔÛÙ‹ÚÈ͢ ÌË ·ÌÈÛ‚‹ÙËÛ˘
Ο σκοπός των υπηρεσιών αυτών είναι να εξασφαλίσουν ότι η οντότητα που έστειλε ένα µήνυµα ή έκανε µια πράξη δεν µπορεί να αρνηθεί ότι το έπραξε. Επίσης, σκοπός τους είναι να εξασφαλίσουν ότι η οντότητα που έλαβε ένα µήνυµα δεν µπορεί να αρνηθεί ότι πράγµατι το έλαβε. Το πρότυπο διαχωρίζει δύο µορφές των υπηρεσιών αυτών: • Υπηρεσία µη αµφισβήτησης µε απόδειξη προέλευσης. Η υπηρεσία αυτή αποδεικνύει στον παραλήπτη την προέλευση του µηνύµατος. • Υπηρεσία µη αµφισβήτησης µε απόδειξη παραλαβής. Η υπηρεσία αυτή αποδεικνύει στον αποστολέα την παραλαβή του µηνύµατος. 2.3.7 YËÚÂۛ˜ ·ÛÊ¿ÏÂÈ·˜ ÛÙ· ›‰· OSI
Το πρότυπο ISO 7498.2, καθώς και η σχετική σύσταση X.800 της CCITT, κατανέµουν τις υπηρεσίες ασφάλειας στα επίπεδα OSI όπως φαίνεται στον Πίνακα 2.1. ¶›Ó·Î·˜ 2.1
Kατανοµή υπηρεσιών ασφάλειας στα επίπεδα OSI
Υπηρεσία
1
2
Επίπεδο 3 4 5
6
7
Αυθεντικοποίηση ισότιµης οντότητας
Ν
Ν
Ν
Αυθεντικοποίηση προέλευσης δεδοµένων
Ν
Ν
Ν
Έλεγχος πρόσβασης Εµπιστευτικότητα σύνδεσης
Ν
Εµπιστευτικότητα χωρίς σύνδεση
Ν
Ν
Ν
Ν
Ν
Ν
Ν Ν
Ν
Ν
Ν
Ν Ν
Εµπιστευτικότητα επιλεγµένου πεδίου Εµπιστευτικότητα κίνησης
Ν Ν Ν
Ν
Ακεραιότητα σύνδεσης µε ανάκαµψη Ακεραιότητα σύνδεσης χωρίς ανάκαµψη
Ν
Ν Ν
Ν
Ν
Ν
Ακεραιότητα επιλεγµένου πεδίου σε σύνδεση Ακεραιότητα χωρίς σύνδεση
Ν Ν
Ν
Ν
2.3 À¶∏ƒ∂™π∂™ ∞™º∞§∂π∞™ ™∆√ ª√¡∆∂§√ OSI
55
Ακεραιότητα επιλεγµένου πεδίου χωρίς σύνδεση
Ν
Μη αµφισβήτηση προέλευσης
Ν
Μη αµφισβήτηση παραλαβής
Ν
Στον πίνακα είναι σηµειωµένα µε Ν τα επίπεδα όπου η αντίστοιχη υπηρεσία µπορεί να προσφερθεί. Όλες οι υπηρεσίες µπορούν να προσφερθούν από το επίπεδο 7, αλλά οι υπηρεσίες ακεραιότητας επιλεγµένου πεδίου και µη αµφισβήτησης προσφέρονται µόνο απ’ αυτό το επίπεδο. Οι περισσότερες από τις υπόλοιπες υπηρεσίες µπορούν να προσφερθούν στα επίπεδα 3, 4 ή 7. Στην πράξη, ωστόσο, η κατανοµή αυτή πρέπει να θεωρείται ενδεικτική, για δύο κυρίως λόγους: • Σε µερικές περιπτώσεις η κατανοµή µοιάζει αυθαίρετη: Γιατί το επίπεδο 5 δεν προσφέρει καµιά υπηρεσία ασφάλειας; Γιατί το επίπεδο 6 προσφέρει υπηρεσία εµπιστευτικότητας επιλεγµένου πεδίου αλλά όχι υπηρεσία ακεραιότητας επιλεγµένου πεδίου; • Σε µερικές περιπτώσεις οι ίδιοι οι ορισµοί των υπηρεσιών είναι διφορούµενοι. Για παράδειγµα, η αυθεντικοποίηση προέλευσης δεδοµένων υλοποιείται στο πρωτόκολλο Χ.400 επισυνάπτοντας στα δεδοµένα µια τιµή ελέγχου ακεραιότητας, που εξαρτάται και από ένα κλειδί που κατέχει ο αποστολέας. Αν, λοιπόν, χρησιµοποιηθεί ασύµµετρο κρυπτοσύστηµα, είναι δύσκολο να διακρίνει κανείς την υπηρεσία αυτή από την υπηρεσία ακεραιότητας ή την υπηρεσία µη αµφισβήτησης. Επίσης, αν η υπηρεσία ελέγχου πρόσβασης δεν εµπεριέχει χαρακτηριστικά εξουσιοδότησης ―και στην πράξη συνήθως έτσι είναι― δεν είναι δυνατόν να τη διακρίνουµε από την υπηρεσία αυθεντικοποίησης ισότιµης οντότητας. Θα παρατηρήσατε ότι η κατανοµή του Πίνακα 2.1 επιτρέπει την τοποθέτηση της ίδιας υπηρεσίας σε διαφορετικά επίπεδα του µοντέλου. Ποιοι είναι όµως οι παράγοντες που επηρεάζουν την επιλογή να τοποθετήσουµε µια υπηρεσία ασφάλειας στο ανώτερο ή στο κατώτερο επίπεδο; • Μείξη κίνησης: Λόγω της πολύπλεξης, οι ακολουθίες δεδοµένων στα κατώτερα επίπεδα τείνουν περισσότερο από τα ανώτερα επίπεδα να περιέχουν µονάδες δεδοµένων που προέρχονται από ή κατευθύνονται προς διαφορετικούς χρήστες ή/και εφαρµογές. Η σηµασία αυτού του παράγοντα µεταβάλλεται ανάλογα µε τον τύπο της πολιτικής ασφάλειας. Αν η πολιτική ασφάλειας τείνει να αφήνει τους χρήστες ή τις εφαρµογές να καθορίζουν το βαθµό προστασίας των δεδοµένων τους, η τοποθέτηση των υπηρεσιών ασφάλειας σε ανώτερο επίπεδο είναι προτιµότερη. Αν αυτές τοποθετηθούν σε κατώτερο επίπεδο, ο έλεγχος που διατηρούν οι χρήστες και οι
56
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
εφαρµογές είναι ανεπαρκής, και είναι πιθανή µια αύξηση του κόστους λόγω µη απαιτούµενης υψηλής προστασίας κάποιων δεδοµένων, επειδή έτυχε αυτά να συνευρεθούν στην ίδια ακολουθία µε άλλα δεδοµένα υψηλών απαιτήσεων ασφάλειας. Αν, αντίθετα, η πολιτική ασφάλειας καθορίζει ότι όλη η κίνηση ενός οργανισµού πρέπει να έχει προστασία ίδιου βαθµού, ανεξάρτητα από το χρήστη ή την εφαρµογή, είναι προτιµότερη η τοποθέτηση των υπηρεσιών ασφάλειας σε κατώτερα επίπεδα. • Γνώση δροµολογίου: Τα κατώτερα επίπεδα τείνουν να γνωρίζουν καλύτερα τα χαρακτηριστικά ασφάλειας των διαφόρων δροµολογίων και ζεύξεων. Σε περιβάλλοντα όπου τα χαρακτηριστικά αυτά διαφέρουν σηµαντικά, η τοποθέτηση των υπηρεσιών ασφάλειας σε κατώτερα επίπεδα µπορεί να αποβεί πολύ αποτελεσµατική, αφού µπορούµε έτσι να επιλέξουµε τις κατάλληλες υπηρεσίες ασφάλειας για κάθε υποδίκτυο ή ζεύξη, µηδενίζοντας το κόστος ασφάλειας σε υποδίκτυα ή ζεύξεις όπου δεν υπάρχει ανάγκη προστασίας. • Πλήθος σηµείων προστασίας: Η τοποθέτηση υπηρεσιών ασφάλειας σε ανώτερα επίπεδα (π.χ. επίπεδο εφαρµογών, επίπεδο παρουσίασης, επίπεδο συνόδου) απαιτεί την υλοποίηση µηχανισµών ασφάλειας σε κάθε ευαίσθητη εφαρµογή, σε κάθε τελικό σύστηµα. Η τοποθέτηση υπηρεσιών ασφάλειας σε κατώτερα επίπεδα (π.χ. επίπεδο ζεύξης δεδοµένων, φυσικό επίπεδο) απαιτεί την υλοποίηση µηχανισµών ασφάλειας στα άκρα κάθε δικτυακής ζεύξης. Η τοποθέτηση υπηρεσιών ασφάλειας κοντά στα µεσαία επίπεδα (π.χ. επίπεδο δικτύου, επίπεδο µεταφοράς) οδηγεί σε ανάγκη υλοποίησης µηχανισµών ασφάλειας σε πολύ λιγότερα σηµεία, ελαττώνοντας έτσι σηµαντικά το συνολικό κόστος. • Προστασία επικεφαλίδων πρωτοκόλλων: Υπηρεσίες ασφάλειας τοποθετηµένες σε ανώτερα επίπεδα δεν µπορούν να προστατεύσουν επικεφαλίδες πρωτοκόλλων κατωτέρων επιπέδων, οι οποίες, σε µερικά τουλάχιστον περιβάλλοντα, µπορεί να είναι ευαίσθητες. Έτσι, ο παράγοντας αυτός ευνοεί την τοποθέτηση υπηρεσιών ασφάλειας σε κατώτερα επίπεδα. • Συσχέτιση µε προέλευση ή προορισµό: Μερικές υπηρεσίες ασφάλειας, όπως, για παράδειγµα, η αυθεντικοποίηση προέλευσης και η µη αµφισβήτηση, εξαρτώνται από τη δυνατότητα συσχέτισης δεδοµένων µε την προέλευση ή τον προορισµό τους. Αυτό επιτυγχάνεται αποτελεσµατικότερα σε ανώτερα επίπεδα, ειδικά δε στο επίπεδο εφαρµογών. Ωστόσο, είναι δυνατόν µερικές φορές να επιτευχθεί και σε κατώτερα επίπεδα, αν πληρούνται κάποιες προϋποθέσεις, όπως, για παράδειγµα, η συσχέτιση του αποστολέα ενός µηνύµατος µε ένα συγκεκριµένο τελικό σύστηµα µέσω της χρήσης έµπιστου υλικού ή/και λογισµικού.
2.3 À¶∏ƒ∂™π∂™ ∞™º∞§∂π∞™ ™∆√ ª√¡∆∂§√ OSI
57
Παίρνοντας υπόψη µας όλους αυτούς τους παράγοντες, πρέπει να είναι φανερό το γιατί δεν είναι δυνατόν να υπάρξει µια απλή και µοναδική απάντηση στο ερώτηµα του ποια είναι η καλύτερη αρχιτεκτονική τοποθέτηση των υπηρεσιών ασφάλειας στο µοντέλο OSI. ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 2.2 Αντιστοιχίστε τις υπηρεσίες ασφάλειας της αριστερής στήλης µε τους µη ηλεκτρονικούς µηχανισµούς ασφάλειας της δεξιάς στήλης. Προσέξτε! Η αντιστοίχιση δεν είναι απαραίτητα ένα προς ένα. 1. Αυθεντικοποίηση
1. ∆ελτίο ταυτότητας
2. Προστασία ακεραιότητας
2. Κλειδαριές και κλειδιά
3. Προστασία εµπιστευτικότητας
3. Σφραγισµένο γράµµα
4. Έλεγχος πρόσβασης
4. Μελάνι που δε σβήνει
5. Υποστήριξη µη αµφισβήτησης
5. Υπογραφή βεβαιωµένη για το γνήσιο
6. Εξασφάλιση συνεχούς λειτουργίας
6. Γνώση πατρικού επωνύµου µητέρας 7. Φύλακας 8. Αόρατο µελάνι 9. Ολόγραµµα πάνω σε πιστωτική κάρτα 10. Συστηµένο γράµµα
¢Ú·ÛÙËÚÈfiÙËÙ· 2.3 Υποθέστε ότι υπάρχει ένα σύστηµα αυθεντικοποίησης βασισµένο σε συνθηµατικά σε ένα µικρό δίκτυο, η διαχείριση του οποίου γίνεται αποθηκεύοντας όλα τα συνθηµατικά σε έναν εξυπηρετητή συνθηµατικών. Όταν ένας χρήστης θέλει να αλλάξει το συνθηµατικό του, επικοινωνεί µε τον εξυπηρετητή αυτόν. Όταν ένα τελικό σύστηµα θέλει να αυθεντικοποιήσει ένα χρήστη, ζητάει και λαµβάνει το συνθηµατικό του χρήστη από τον εξυπηρετητή και το συγκρίνει µε αυτό που εισάγει ο χρήστης. Αναγνωρίστε τους βασικούς κινδύνους στους οποίους υπόκειται το σύστηµα αυτό και περιγράψτε πώς οι υπηρεσίες αυθεντικοποίησης, προστασίας εµπιστευτικότητας, προστασίας ακεραιότητας και ελέγχου πρόσβασης µπορούν να χρησιµοποιηθούν για να ελαττώσουν τους κινδύνους αυτούς.
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
58
¢Ú·ÛÙËÚÈfiÙËÙ· 2.4 Μια µεγάλη εταιρεία έχει ένα δίκτυο που συνδέει διάφορες θέσεις. Χρήστες του δικτύου κατά καιρούς µεταδίδουν ευαίσθητες για την εταιρεία πληροφορίες στο δίκτυο. Η εταιρεία θέλει να προστατεύσει τα ευαίσθητα σηµεία του δικτύου από διαρροή ευαίσθητων πληροφοριών προς τρίτους. Για καθένα από τα παρακάτω σενάρια σύνθεσης του δικτύου, ποιο είναι το καταλληλότερο επίπεδο OSI για την τοποθέτηση µιας υπηρεσίας προστασίας εµπιστευτικότητας και γιατί; i. Το δίκτυο αποτελείται από τοπικά δίκτυα, καθένα από τα οποία βρίσκεται µέσα σε εγκαταστάσεις της εταιρείας και τα οποία διασυνδέονται µε ένα δηµόσιο δίκτυο ευρείας ζώνης. ii. Το δίκτυο αποτελείται από τοπικά δίκτυα, καθένα από τα οποία βρίσκεται µέσα σε εγκαταστάσεις της εταιρείας και τα οποία διασυνδέονται µε µικρό αριθµό δεσµευµένων γραµµών που συνδέονται στα τοπικά δίκτυα µέσω πυλών. iii. Το δίκτυο αποτελείται από µια µεγάλη ποικιλία επικοινωνιακών ζεύξεων, µε διάφορους βαθµούς εµπιστοσύνης, ενώ ο τελικός χρήστης δεν έχει τον έλεγχο της ασφάλειας του δροµολογίου που θα χρησιµοποιήσουν τα δεδοµένα του.
2.4 ªË¯·ÓÈÛÌÔ› ·ÛÊ¿ÏÂÈ·˜ ÛÙÔ ÌÔÓÙ¤ÏÔ OSI
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Οι υπηρεσίες ασφάλειας που περιγράψαµε πιο πάνω υλοποιούνται µε ένα σύνολο µηχανισµών ασφάλειας. Οι µηχανισµοί, τους οποίους θα περιγράψουµε µε λεπτοµέρεια αµέσως µετά, είναι οι εξής: • Κρυπτογράφηση • Ψηφιακές υπογραφές • Έλεγχος πρόσβασης • Ακεραιότητα δεδοµένων • Ανταλλαγή πληροφοριών αυθεντικοποίησης • Συµπλήρωση κίνησης • Έλεγχος δροµολόγησης • Συµβολαιογράφος
2.4 ª∏Ã∞¡π™ª√π ∞™º∞§∂π∞™ ™∆√ ª√¡∆∂§√ OSI
2.4.1 KÚ˘ÙÔÁÚ¿ÊËÛË
Ο µηχανισµός της κρυπτογράφησης χρησιµοποιείται για την υλοποίηση της υπηρεσίας εµπιστευτικότητας, είτε πρόκειται για δεδοµένα είτε για πληροφορίες κίνησης. Ο µηχανισµός µπορεί να χρησιµοποιηθεί και από άλλους µηχανισµούς ασφάλειας. Οι αλγόριθµοι κρυπτογράφησης είναι αντιστρέψιµοι ή µη αντιστρέψιµοι. Οι αντιστρέψιµοι αλγόριθµοι διακρίνονται σε συµµετρικούς και ασύµµετρους. Οι συµµετρικοί αλγόριθµοι χρησιµοποιούν ένα µυστικό κλειδί κρυπτογράφησης και η γνώση του κλειδιού αυτού συνεπάγεται και γνώση του –επίσης µυστικού– κλειδιού αποκρυπτογράφησης. Αντίθετα, οι ασύµµετροι αλγόριθµοι κρυπτογράφησης χρησιµοποιούν ένα δηµόσιο κλειδί κρυπτογράφησης, του οποίου η γνώση δε συνεπάγεται τη γνώση του ιδιωτικού κλειδιού αποκρυπτογράφησης. Οι µη αντιστρέψιµοι αλγόριθµοι κρυπτογράφησης είναι δυνατόν να µη χρησιµοποιούν κλειδί. Αν χρησιµοποιείται κλειδί, αυτό µπορεί να είναι δηµόσιο ή ιδιωτικό. 2.4.2 æËÊȷΤ˜ ˘ÔÁڷʤ˜
Ο µηχανισµός αυτός αποδεικνύει σε κάποιον τρίτο ότι ο υπογράφων, και µόνο αυτός, ήταν δυνατόν να παραγάγει την υπογραφή αυτή. Ο µηχανισµός εµπεριέχει δύο διαδικασίες: τη διαδικασία υπογραφής µιας µονάδας δεδοµένων και τη διαδικασία επαλήθευσης της υπογραφής που συνοδεύει µια µονάδα δεδοµένων. Η διαδικασία υπογραφής χρησιµοποιεί το ιδιωτικό κλειδί του υπογράφοντα για να κρυπτογραφήσει ολόκληρη τη µονάδα δεδοµένων ή µια κρυπτογραφική τιµή που παράγεται από τη µονάδα δεδοµένων. Η διαδικασία επαλήθευσης χρησιµοποιεί το δηµόσιο κλειδί του υπογράφοντα για να καθορίσει αν πράγµατι η υπογραφή παράχθηκε από το ιδιωτικό του κλειδί. 2.4.3 ŒÏÂÁ¯Ô˜ ÚfiÛ‚·Û˘
Οι µηχανισµοί ελέγχου πρόσβασης καθορίζουν και επιβάλλουν τα δικαιώµατα πρόσβασης µιας οντότητας, χρησιµοποιώντας την αυθεντικοποιηµένη ταυτότητα της οντότητας, πληροφορίες σχετικές µε την οντότητα ή τις δυνατότητες της οντότητας. Οι απόπειρες προσπέλασης ενός πόρου χωρίς να υπάρχει η ανάλογη εξουσιοδότηση, καθώς και οι απόπειρες προσπέλασης ενός πόρου µε µη εξουσιοδοτηµένο τύπο προσπέλασης, απορρίπτονται και το σχετικό γεγονός µπορεί να καταγραφεί στο ίχνος ελέγχου ασφάλειας. Οι µηχανισµοί αυτοί µπορεί να χρησιµοποιούν βάσεις πληροφοριών ελέγχου πρόσβασης, στις οποίες είναι αποθηκευµένα τα δικαιώµατα πρόσβασης των οντοτήτων, πληροφορίες αυθεντικοποίησης, δυνατότητες, ετικέτες ασφάλειας, χρόνο απόπειρας πρόσβασης, δρόµο απόπειρας πρόσβασης, διάρκεια
59
60
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
πρόσβασης. Μηχανισµοί ελέγχου πρόσβασης µπορεί να απαιτούνται είτε στο αρχικό σηµείο σύνδεσης της οντότητας είτε και σε ενδιάµεσα σηµεία του διαδρόµου επικοινωνίας µε το τελικό σύστηµα, έτσι ώστε να είναι δυνατός ο καθορισµός του δικαιώµατος πρόσβασης στην απαιτούµενη υπηρεσία επικοινωνίας και η παροχή της εξουσιοδότησης για επικοινωνία µε το άλλο µέρος. 2.4.4 AÎÂÚ·ÈfiÙËÙ· ‰Â‰Ô̤ӈÓ
Οι µηχανισµοί αυτοί χρησιµοποιούνται για την εξασφάλιση της ακεραιότητας µιας και µόνο µονάδας (ή ενός πεδίου) δεδοµένων ή µιας ακολουθίας µονάδων (ή πεδίων) δεδοµένων. Υπάρχουν δύο διαδικασίες που καθορίζουν την ακεραιότητα µιας µόνο µονάδας δεδοµένων. Η πρώτη διαδικασία εφαρµόζεται στην πηγή των δεδοµένων και παράγει µια τιµή που την επισυνάπτει στη µονάδα δεδοµένων. Η τιµή αυτή µπορεί να παράγεται από έναν απλό κώδικα ελέγχου δεδοµένων (π.χ. CRC) ή από έναν αλγόριθµο κρυπτογράφησης. Η δεύτερη διαδικασία εφαρµόζεται στο δέκτη των δεδοµένων και δηµιουργεί την αντίστοιχη τιµή χρησιµοποιώντας τη ληφθείσα µονάδα δεδοµένων. Συγκρίνοντας τις δύο τιµές, µπορούµε να αποφασίσουµε αν υπήρξε τροποποίηση των δεδοµένων κατά τη µετάδοση (διαφορετικές τιµές) ή όχι (ίδιες τιµές). Η εξασφάλιση της ακεραιότητας µιας ακολουθίας µονάδων δεδοµένων απαιτεί συµπληρωµατική προστασία. Αν πρόκειται για µετάδοση δεδοµένων µέσω σύνδεσης, είναι δυνατή η χρήση τεχνικών αρίθµησης σειράς, χρονοσφράγισης ή κρυπτογραφικών δεσµών. Αν πρόκειται για µετάδοση δεδοµένων χωρίς σύνδεση, η χρήση χρονοσφράγισης παρέχει περιορισµένη προστασία εναντίον επιθέσεων αναµετάδοσης µεµονωµένων µονάδων δεδοµένων. 2.4.5 AÓÙ·ÏÏ·Á‹ ÏËÚÔÊÔÚÈÒÓ ·˘ıÂÓÙÈÎÔÔ›ËÛ˘
Ο µηχανισµός αυτός παρέχει αυθεντικοποίηση οντοτήτων του δικτύου. Χρησιµοποιεί πληροφορίες αυθεντικοποίησης, κρυπτογραφικές τεχνικές και χαρακτηριστικά ή/και αντικείµενα που έχει στην κατοχή της µια οντότητα. Η υπηρεσία αυθεντικοποίησης ισότιµης οντότητας µπορεί να υλοποιηθεί µε ενσωµάτωση του µηχανισµού ανταλλαγής πληροφοριών αυθεντικοποίησης στο επίπεδο N. Οι κρυπτογραφικές τεχνικές µπορούν να συνδυαστούν µε πρωτόκολλα χειραψίας, έτσι ώστε να εξασφαλιστεί η ύπαρξη επικοινωνίας όταν χρησιµοποιούνται οι τεχνικές αυτές. Ο µηχανισµός ανταλλαγής πληροφοριών αυθεντικοποίησης µπορεί να χρησιµοποιηθεί µαζί µε χρονοσφράγιση και συγχρονισµένα ρολόγια, πρωτόκολλα χειραψίας δύο ή τριών δρόµων και υπηρεσίες µη αµφισβήτησης.
2.4 ª∏Ã∞¡π™ª√π ∞™º∞§∂π∞™ ™∆√ ª√¡∆∂§√ OSI
2.4.6 ™˘ÌÏ‹ÚˆÛË Î›ÓËÛ˘
Ο µηχανισµός αυτός µπορεί να χρησιµοποιηθεί για να παραγάγει διάφορα επίπεδα προστασίας εναντίον επιθέσεων ανάλυσης κίνησης. Ο µηχανισµός γίνεται αποτελεσµατικός µόνο όταν προστατεύεται από υπηρεσία εµπιστευτικότητας. 2.4.7 ŒÏÂÁ¯Ô˜ ‰ÚÔÌÔÏfiÁËÛ˘
Ο µηχανισµός αυτός καλύπτει θέµατα δροµολόγησης δεδοµένων σε δίκτυα. ∆ύο τελικά συστήµατα είναι δυνατόν να επιθυµούν να συνδεθούν µέσω διαφορετικών δροµολογίων, για να εµποδίσουν την εκδήλωση επιθέσεων εναντίον τους. Πολλές φορές είναι, επίσης, επιθυµητή η απαγόρευση διέλευσης δεδοµένων που φέρουν συγκεκριµένες ετικέτες ασφάλειας µέσω συγκεκριµένων υποδικτύων, µεταγωγέων ή ζεύξεων. Τέλος, µερικές φορές είναι επιθυµητή η χρήση προσυµφωνηµένων, φυσικά ασφαλών, δικτύων για µετάδοση πληροφοριών, αντί δυναµικά καθοριζόµενων δροµολογίων. 2.4.8 ™˘Ì‚ÔÏ·ÈÔÁÚ¿ÊÔ˜
Ο µηχανισµός αυτός παρέχει εξασφάλιση ότι τα δεδοµένα που µεταδίδονται µεταξύ δύο ή περισσότερων µερών χαίρουν κάποιων ιδιοτήτων, όπως, για παράδειγµα, ακεραιότητα των ίδιων των δεδοµένων, αυθεντικότητα προέλευσης και προορισµού, ορθότητα χρόνου αποστολής. Η εξασφάλιση αυτή παρέχεται από ένα τρίτο µέρος: το συµβολαιογράφο. Κάθε επικοινωνιακό στιγµιότυπο µπορεί να προστατεύεται χρησιµοποιώντας τους µηχανισµούς των ψηφιακών υπογραφών, της κρυπτογράφησης, της ακεραιότητας, ή οποιουσδήποτε άλλους είναι διαθέσιµοι στο συµβολαιογράφο. 2.4.9 ™¯¤ÛË ÌÂٷ͇ ˘ËÚÂÛÈÒÓ Î·È Ì˯·ÓÈÛÌÒÓ
Η σχέση µεταξύ των υπηρεσιών και των µηχανισµών ασφάλειας µπορεί να φανεί καλύτερα µέσω του Πίνακα 2.2. Στον πίνακα αυτό τα σύµβολα Κ, ΨΥ, ΕΠ, Α∆, ΠΑ, ΠΚ, Ε∆ και Σ αντιπροσωπεύουν τους µηχανισµούς Κρυπτογράφησης, Ψηφιακών Υπογραφών, Ελέγχου Πρόσβασης, Ακεραιότητας ∆εδοµένων, Ανταλλαγής Πληροφοριών Αυθεντικοποίησης, Συµπλήρωσης Κίνησης, Ελέγχου ∆ροµολόγησης και Συµβολαιογράφου, αντίστοιχα. Η ύπαρξη του γράµµατος «Ν» σε µια θέση του πίνακα σηµαίνει ότι ο µηχανισµός της στήλης αυτής θεωρείται κατάλληλος για την υλοποίηση της υπηρεσίας που φαίνεται στην αντίστοιχη γραµµή.
61
KEºA§AIO 2: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ ¢π∫∆Àø¡ OSI//ISO
62
¶›Ó·Î·˜ 2.2
Σχέση υπηρεσιών και µηχανισµών ασφαλείας
Υπηρεσία
Μηχανισµός Κ Ψ E A Π E E Ρ Y Π ∆ A K ∆
Αυθεντικοποίηση ισότιµης οντότητας
Ν
Ν
Αυθεντικοποίηση προέλευσης δεδοµένων
Ν
Ν
Έλεγχος πρόσβασης
Σ Y
Ν
Ν
Εµπιστευτικότητα σύνδεσης
Ν
Ν
Εµπιστευτικότητα χωρίς σύνδεση
Ν
Ν
Εµπιστευτικότητα επιλεγµένου πεδίου
Ν
Εµπιστευτικότητα κίνησης
Ν
Ακεραιότητα σύνδεσης µε ανάκαµψη
Ν
Ν
Ακεραιότητα σύνδεσης χωρίς ανάκαµψη
Ν
Ν
Ακεραιότητα επιλεγµένου πεδίου σε σύνδεση
Ν
Ν
Ακεραιότητα χωρίς σύνδεση
Ν
Ν
Ν
Ακεραιότητα επιλεγµένου πεδίου χωρίς σύνδεση
Ν
Ν
Ν
Μη αµφισβήτηση προέλευσης
Ν
Ν
Ν
Μη αµφισβήτηση παραλαβής
Ν
Ν
Ν
Ν Ν
™‡ÓÔ„Ë Ξεκινήσαµε το κεφάλαιο αυτό θυµίζοντας στον αναγνώστη µερικές βασικές αρχές και στοιχεία δικτύων, καθώς και τα κύρια σηµεία του µοντέλου αναφοράς OSI. Συνεχίσαµε συζητώντας κύριες κατηγορίες απειλών εναντίον δικτύων και αναφέροντας σύντοµα τις µεθόδους µε τις οποίες αυτές οι απειλές µπορούν να υλοποιηθούν. Το µοντέλο OSI, εκτός από τα γνωστά επίπεδα που καθορίζει, προδιαγράφει και υπηρεσίες και µηχανισµούς ασφάλειας. Οι υπηρεσίες αυτές και οι µηχανισµοί, οι σχέσεις µεταξύ τους και η τοποθέτησή τους στα επίπεδα του µοντέλου µάς απασχόλησαν στη συνέχεια του κεφαλαίου.
B I B § I O ° PA º I A
BÈ‚ÏÈÔÁÚ·Ê›· 1. Ford W., Computer Communications Security, Prentice Hall PTR, Englewood Cliffs, 1994. 2. ISO 7498–2, OSI/RM Security Architecture. 3. Kaufman C., Perlman R. & Speciner M., Network Security: Private Communication in a Public World, Prentice Hall, 1995. 4. Kou W., Networking Security and Standards, Kluwer Academic Publishers, 1997. 5. Muftic S., Patel A. & Sanders P., Security Architecture for Open Distributed Systems, John Wiley & Sons, 1994. 6. Muftic S., Security Mechanisms for Computer Networks, Ellis Horwood, 1989. 7. Pfleeger C. P., Security in Computing, Prentice Hall PTR, Upper Saddle River,1997. 8. Purser M., Secure Data Networking, Artech House, Norwood, 1993. 9. Shaffer S. & Simon A., Network Security, Academic Press, 1994. 10.Tanenbaum A. S., Computer Networks, Prentice–Hall Inc., Englewood Cliffs, 1981. 11.Αποστολόπουλος Θ., ∆ίκτυα Υπολογιστών, Αθήνα, 1994.
63
∫
AÚ¯ÈÙÂÎÙÔÓÈ΋ AÛÊ¿ÏÂÈ·˜ Internet ™ÎÔfi˜
∂
3 º
Στο κεφάλαιο αυτό θα γνωρίσουµε τα πρωτόκολλα ασφαλείας των επιπέδων Internet και µεταφοράς του µοντέλου Internet.
¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù· Όταν θα έχετε τελειώσει τη µελέτη του κεφαλαίου αυτού, θα µπορείτε να: • Αναφέρετε τα τέσσερα επίπεδα του µοντέλου Internet • Περιγράψετε το πρωτόκολλο ΙΡ • Αναφέρετε δύο πρωτόκολλα δροµολόγησης και τρία πρωτόκολλα υποστήριξης επιπέδου δικτύου • Περιγράψετε τα πρωτόκολλα TCP και UDP • Αναφέρετε δέκα πρωτόκολλα επιπέδου εφαρµογής • Αναφέρετε έξι πρωτόκολλα ασφάλειας επιπέδου Internet • Περιγράψετε τα πρωτόκολλα IPSP και IKMP • Αναφέρετε πέντε πρωτόκολλα ασφάλειας επιπέδου µεταφοράς • Περιγράψετε τα πρωτόκολλα SSH και SSL/TLS
ŒÓÓÔȘ ÎÏÂȉȿ • Internet, • επίπεδα του µοντέλου Internet, • πρωτόκολλα του Internet, • επίπεδο Internet, • επίπεδο µεταφοράς.
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Στο προηγούµενο κεφάλαιο συζητήσαµε αναλυτικά το µοντέλο OSI. Όσο σηµαντικό
∞
§
∞
π
√
66
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
και αν είναι το µοντέλο αυτό, ωστόσο δεν καλύπτει ακριβώς µια µεγάλη κατηγορία δικτύων που κυριαρχούν στη σηµερινή πραγµατικότητα, τα δίκτυα που χρησιµοποιούν την οικογένεια πρωτοκόλλων TCP/IP. Στα πρωτόκολλα αυτά στηρίζεται και το Internet. Στο κεφάλαιο αυτό θα γνωρίσουµε το µοντέλο του Internet και την αρχιτεκτονική ασφάλειας αυτού του µοντέλου. Το κεφάλαιο είναι δοµηµένο σε τρεις ενότητες. Η πρώτη ενότητα είναι αφιερωµένη στην παρουσίαση του µοντέλου και στη συζήτηση των πρωτοκόλλων IP, TCP και UDP. Στη δεύτερη ενότητα ασχολούµαστε µε την αρχιτεκτονική ασφάλειας επιπέδου Internet και αναπτύσσουµε τα πρωτόκολλα IPSP και IKMP. Τέλος, στην τρίτη ενότητα συζητάµε την αρχιτεκτονική aσφάλειας επιπέδου µεταφοράς και αναπτύσσουµε τα πρωτόκολλα SSH και SSL/TLS.
3.1 T√ ª√¡∆∂§√ ∆√À INTERNET
67
3.1 TÔ ÌÔÓÙ¤ÏÔ ÙÔ˘ Internet
Στην ενότητα αυτή θα κάνουµε µια σύντοµη ανασκόπηση του µοντέλου του Internet. Όπως φαίνεται στη δεξιά πλευρά του Σχήµατος 3.1, το µοντέλο του Internet αποτελείται από τέσσερα επίπεδα, και συγκεκριµένα το επίπεδο δικτύου (ή προσπέλασης δικτύου), το επίπεδο Internet, το επίπεδο µεταφοράς και το επίπεδο εφαρµογής. Η διάταξη αυτή είναι κάπως διαφορετική απ’ αυτήν του µοντέλου αναφοράς OSI. Ωστόσο, δεν πρέπει να δίνεται και µεγάλη σηµασία στο γεγονός αυτό, που οφείλεται κυρίως στο ότι το µοντέλο Internet σχεδιάστηκε πριν από το µοντέλο OSI. Επίπεδο εφαρµογής Επίπεδο παρουσίασης
Επίπεδο εφαρµογής
Επίπεδο συνόδου Επίπεδο µεταφοράς
Επίπεδο µεταφοράς
Επίπεδο δικτύου
Επίπεδο Internet
Επίπεδο ζεύξης δεδοµένων Επίπεδο δικτύου ™¯‹Ì· 3.1
Φυσικό επίπεδο Μοντέλο OSI
Μοντέλο Internet
3.1.1 To Â›Â‰Ô ÚÔۤϷÛ˘ ‰ÈÎÙ‡Ô˘
Μέρος της δηµοτικότητας της σειράς πρωτοκόλλων TCP/IP οφείλεται στην ικανότητά τους να υλοποιούνται πάνω από διάφορες τεχνολογίες δικτύων και τα αντίστοιχα πρωτόκολλα προσπέλασης δικτύων, όπως τα Ethernet, IEEE 802.3, IEEE 802.4 (Token Bus) και IEEE 802.5 (Token Ring). Η κυρίαρχη στρατηγική σήµερα είναι η χρήση Ethernet για τοπική δικτύωση και η σύνδεση του Ethernet, µέσω µιας γραµµής Τ1, σε ένα περιφερειακό δίκτυο κορµού TCP/IP, που µε τη σειρά του συνδέεται στο Internet. Ο βασικός λόγος που διαµόρφωσε τη στρατηγική αυτή ως κυρίαρχη είναι ότι όλοι οι σηµαντικοί προµηθευτές συστηµάτων Unix πωλούν τα συστήµατά τους µε ενσωµατωµένη διεπαφή Ethernet. Οι ταχύτητες των modems βελτιώνονται συνεχώς, καθώς εγκρίνονται νέα τηλεπικοινωνιακά πρότυπα, αυξάνοντας έτσι τη δηµοτικότητα των µορφών του TCP/IP που λειτουργούν πάνω από το δηµόσιο επιλεγόµενο τηλεφωνικό δίκτυο (Public Switched Telephone Network –
Τα µοντέλα OSI και Internet
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
68
PSTN). Έτσι, πολλοί χρησιµοποιούν σήµερα το Point–to–Point Protocol (PPP) ή το Serial Line IP (SLIP) για να συνδέσουν τα συστήµατά τους σε δίκτυα TCP/IP µέσω του PSTN. Στην περίπτωση αυτή µπορούν να χρησιµοποιήσουν είτε το Password Authentication Protocol (PAP) είτε το CHallenge–response Authentication Protocol (CHAP) για να αυθεντικοποιηθούν. 3.1.2 ∆Ô Â›Â‰Ô Internet
∆√ INTERNET PROTOCOL Το Interner Protocol (IP) είναι το βασικό πρωτόκολλο της οικογένειας TCP/IP. Η τρέχουσα έκδοση του IP είναι η IPv4. Ο χώρος διευθύνσεων της έκδοσης αυτής έχει εύρος 4 bytes. Οι αντίστοιχες διευθύνσεις IP γράφονται συνήθως σε µορφή δεκαδικού µε υποδιαστολή, όπου κάθε byte εµφανίζεται ως δεκαδικός αριθµός, τα δε bytes χωρίζονται µε τη δεκαδική τελεία και εµφανίζονται σε σειρά από το byte υψηλής τάξης προς το byte χαµηλής τάξης. Κυρίως για να απλοποιηθεί η δροµολόγηση, µια διεύθυνση IP χωρίζεται σε διεύθυνση δικτύου και σε διεύθυνση συστήµατος. Για να επικοινωνούν κανονικά όλες οι µηχανές, κάθε διεπαφή δικτύου στο ίδιο τµήµα φυσικού δικτύου πρέπει να έχει την ίδια διεύθυνση δικτύου και µια µοναδική διεύθυνση συστήµατος. Αρχικά το ΙΡ χρησιµοποιούσε το byte υψηλής τάξης ως διεύθυνση δικτύου και τα τρία bytes χαµηλής τάξης ως διεύθυνση συστήµατος. Αλλά, πολύ σύντοµα, µετά την διευθέτηση αυτή έγινε φανερό ότι το πλήθος των διασυνδεµένων δικτύων θα ξεπερνούσε κατά πολύ τα 254. Για να λυθεί λοιπόν το πρόβληµα αυτό, συµφωνήθηκε µια συγκεκριµένη κωδικοποίηση των bits υψηλής τάξης του byte υψηλής τάξης της διεύθυνσης ΙΡ, που επιτρέπει στη διεύθυνση δικτύου να έχει µήκος 1, 2 ή 3 bytes, ενώ τα υπόλοιπα χρησιµοποιούνται για διεύθυνση συστήµατος. Το σχήµα αυτό κωδικοποίησης χωρίζει το χώρο διευθύνσεων ΙΡ σε πέντε κλάσεις διευθύνσεων, που ονοµατίζονται ως A, B, C, D και Ε. Οι κλάσεις Α–C είναι οι συνηθέστερα χρησιµοποιούµενες κλάσεις, ενώ η κλάση D είναι δεσµευµένη για διευθύνσεις multicast και η κλάση Ε για µελλοντική χρήση, εκτός από τη διεύθυνση (255.255.255.255), η οποία µπορεί να χρησιµοποιηθεί µόνον ως διεύθυνση προορισµού και υποδηλώνει όλα τα συστήµατα που βρίσκονται στο ίδιο τµήµα φυσικού δικτύου µε τον αποστολέα.
Το ΙΡ πακετάρει µηνύµατα δηµιουργώντας ένα πακέτο ΙΡ για κάθε µήνυµα που λαµβάνει από κάποιο υποσύστηµα πρωτοκόλλου επιπέδου µεταφοράς. Κάθε πακέτο αποτελείται από την επικεφαλίδα ΙΡ, η οποία ακολουθείται από το σώµα που µπορεί να περιέχει δεδοµένα επιπέδου µεταφοράς. Όσον αφορά το ΙΡ, το σώµα είναι απλώς µια σειρά από bytes δεδοµένων. Η δοµή µιας επικεφαλίδας IPv4 φαίνεται στο Σχήµα 3.2.
3.1 T√ ª√¡∆∂§√ ∆√À INTERNET
Version
69
Header Length
Identification TTL
TOS
Total Length
Flags
Fragment Offset
Protocol
Header Checksum
Source IP Address Destination IP Address Options Data 32 bits
Το πεδίο Version (µήκους 4 bits) χρησιµοποιείται για να δηλώσει την έκδοση του ΙΡ. Το πεδίο Header Length (µήκους 4 bits) περιέχει το µήκος της επικεφαλίδας ΙΡ. Το ελάχιστο (και πιο συνηθισµένο) µήκος της επικεφαλίδας είναι 20 bytes. Στην περίπτωση αυτή το συγκεκριµένο πεδίο περιέχει τον αριθµό 5, αφού το µήκος της επικεφαλίδας πρέπει να είναι ακέραιο πολλαπλάσιο λέξεων µήκους 32 bits. Το πεδίο TOS (µήκους 8 bits) περιέχει τον τύπο υπηρεσίας (Type Of Service) ή την προτεραιότητα του πακέτου ΙΡ. Συνήθως, το πεδίο περιέχει την τιµή 0. Το πεδίο Total Length (µήκους 16 bits) περιέχει το συνολικό µήκος του πακέτου (συµπεριλαµβανοµένης της επικεφαλίδας) σε bytes. Τα πεδία Identification (µήκους 16 bits), Flags (µήκους 3 bits) και Fragment Offset (µήκους 13 bits) χρησιµοποιούνται για να τεµαχίζουν και να ανασυγκροτούν ορθά τα πακέτα ΙΡ. Το πεδίο TTL (µήκους 8 bits) περιέχει την τιµή του αποµένοντος χρόνου ζωής (Time To Live) του πακέτου σε δευτερόλεπτα. Η τιµή αυτή ελαττώνεται κατά τουλάχιστον ένα κάθε φορά που το πακέτο υφίσταται επεξεργασία από κάποιο δροµολογητή ή κεντρικό υπολογιστή. Το πεδίο Protocol (µήκους 8 bits) περιέχει έναν κωδικό αναγνώρισης του πρωτοκόλλου των δεδοµένων που είναι ενσωµατωµένα στο πακέτο ΙΡ. Για παράδειγµα, η τιµή του πεδίου αυτού είναι 1 για το ICMP, 6 για το TCP και 17 για το UDP. Το πεδίο Header Checksum (µήκους 16 bits) χρησιµοποιείται για ανίχνευση λαθών. Περιέχει το συµπλήρωµα ως προς 1 του αθροίσµατος όλων των λέξεων µήκους 16 bits της επικεφαλίδας. Το πεδίο Source IP Address (µήκους 32 bits) περιέχει τη διεύθυνση ΙΡ προέλευσης του πακέτου. Το πεδίο Destination IP Address (µήκους 32 bits) περιέχει τη διεύθυνση ΙΡ προορισµού του πακέτου. Το πεδίο Options µπορεί να χρησιµοποιηθεί προαιρετικά για:
™¯‹Ì· 3.2
Η δοµή της επικεφαλίδας IPv4
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
70
• επιλογή συγκεκριµένου δροµολογίου, • καταγραφή δροµολογίου, • χρονοσφράγιση σε κάθε ενδιάµεσο δροµολογητή, • ασφάλεια, • συµπλήρωση της επικεφαλίδας σε άρτιο πολλαπλάσιο των 4 bytes. Η δουλειά του ΙΡ δεν τελειώνει µε τη δηµιουργία του πακέτου. Πρέπει επίσης να καθορίσει ποια διεπαφή δικτύου πρέπει να χρησιµοποιηθεί και µετά να µεταβιβάσει αρκετή πληροφορία στο υποσύστηµα πρωτοκόλλου επιπέδου προσπέλασης δικτύου, ώστε αυτό να µπορέσει κατάλληλα να εσωκλείσει το πακέτο ΙΡ στο αντίστοιχο πλαίσιο. Το IP next generation (IPng) ή έκδοση 6 του ΙΡ (ΙPv6) είναι η νέα έκδοση του ΙΡ, που βασίζεται πάνω στην ίδια επιτυχηµένη αρχιτεκτονική του IPv4, αλλά σχεδιάστηκε ώστε να αντιµετωπίσει τα προβλήµατα ανάπτυξης που αντιµετωπίζει το Internet. Αυτά περιλαµβάνουν τα άµεσα προβλήµατα διευθυνσιοδότησης και δροµολόγησης, αλλά και τα µακροπρόθεσµα προβλήµατα ανάπτυξης, όπως ασφάλεια, αυτοκαθορισµός και υπηρεσίες πραγµατικού χρόνου. Η κύρια διαφορά του IPv6 από το IPv4 είναι η αύξηση του µήκους της διεύθυνσης ΙΡ από 32 σε 128 bits. Επιπλέον, κάποια από τα πεδία της ΙΡ επικεφαλίδας έχουν καταργηθεί ή έγιναν προαιρετικά, ώστε να ελαττωθεί το κόστος χειρισµού πακέτου στις περισσότερες περιπτώσεις και να περιοριστεί ανάλογα το κόστος εύρους ζώνης της επικεφαλίδας του IPv6. Το Σχήµα 3.3 δείχνει τη δοµή µιας βασικής επικεφαλίδας IPv6. Το πεδίο Version (µήκους 4 bits) χρησιµοποιείται, όπως και στο IPv4, για να δηλώσει την έκδοση του ΙΡ. Το πεδίο Priority (µήκους 4 bits) δηλώνει τη (σχετική) προτεραιότητα του πακέτου ΙΡ ως προς άλλα πακέτα που ταξιδεύουν στο δίκτυο. Το πεδίο Flow Label (µήκους 24 bits) περιέχει µια τιµή που, µαζί µε τη διεύθυνση ΙΡ προέλευσης, καθορίζει µια συγκεκριµένη ροή κυκλοφορίας στο δίκτυο. Το πεδίο Payload Length (µήκους 16 bits) περιέχει το συνολικό µήκος του πακέτου (µη συµπεριλαµβανοµένης της επικεφαλίδας) σε bytes. Το πεδίο Next Header (µήκους 8 bits) παίρνει τιµές ανάλογες του πεδίου Protocol του IPv4. Το πεδίο Hop Limit (µήκους 8 bits) περιέχει το µέγιστο πλήθος επιτρεπόµενων ενδιάµεσων κόµβων. Η τιµή αυτή ελαττώνεται κατά 1 κάθε φορά που το πακέτο περνάει από ενδιάµεσο κόµβο. Αν η τιµή µηδενιστεί, το πακέτο απορρίπτεται. Το πεδίο Source IP Address (µήκους 128 bits) περιέχει τη διεύθυνση ΙΡ προέλευσης του πακέτου. Το πεδίο Destination IP Address (µήκους 128 bits) περιέχει τη διεύθυνση ΙΡ προορισµού του πακέτου.
3.1 T√ ª√¡∆∂§√ ∆√À INTERNET
Version
71
Priority
Flow label
Payload Length
Next Header
Hop Limit
Source Address ™¯‹Ì· 3.3
Destination Address 32 bits
Στο IPv6 προαιρετικές πληροφορίες του επιπέδου Internet µπορούν να τοποθετηθούν σε ξεχωριστές επικεφαλίδες επέκτασης, που τοποθετούνται µεταξύ της βασικής επικεφαλίδας IPv6 και της επικεφαλίδας του πρωτοκόλλου του επόµενου υψηλότερου επιπέδου. Υπάρχει ένας σχετικά µικρός αριθµός τέτοιων επικεφαλίδων επέκτασης, η καθεµιά από τις οποίες αναγνωρίζεται από µια µοναδική τιµή επόµενης επικεφαλίδας. Υπάρχουν καθορισµένες επικεφαλίδες επέκτασης για επιλογές Hop–By–Hop, για δροµολόγηση, για κατακερµάτιση, επιλογές προορισµού, αυθεντικοποίηση και σώµα µε ενσωµατωµένη ασφάλεια. ¶ƒø∆√∫√§§∞ ¢ƒ√ª√§√°∏™∏™
Ο σκοπός ενός πρωτοκόλλου δροµολόγησης είναι να επιτρέπει τη λήψη αποφάσεων δροµολόγησης στο επίπεδο Internet. Εποµένως, το πρωτόκολλο δροµολόγησης πρέπει να διαχειρίζεται και περιοδικά να ενηµερώνει τους πίνακες δροµολόγησης που είναι αποθηκευµένοι σε κάθε δροµολογητή. Κάθε δροµολογητής Internet µπορεί να είναι µέρος ενός αυτόνοµου συστήµατος δροµολόγησης, που είναι βασικά ένα σύνολο δροµολογητών µε ενιαία διαχείριση. Οι δροµολογητές αυτοί τρέχουν το ίδιο πρωτόκολλο δροµολόγησης, που συνήθως λέγεται πρωτόκολλο εσωτερικού πύλης (Interior Gateway Protocol – IGP). Υπάρχουν διάφορα IGP σε χρήση σήµερα, αλλά όλοι οι δροµολογητές µέσα σ’ ένα αυτόνοµο σύστηµα κανονικά τρέχουν το ίδιο. Ωστόσο, για να επικοινωνήσει µε ένα άλλο αυτόνοµο σύστηµα, ο δροµολογητής συνήθως χρησιµοποιεί ένα πρωτόκολλο εξωτερικού πύλης (Exterior Gateway Protocol – EGP). Το EGP δεν γνωρίζει τις λεπτοµέρειες της δροµολόγησης στο εσωτερικό µιας άλλης περιοχής δικτύου. Αναλογικά µιλώντας, το IGP είναι το ανάλογο του τοπικού τηλεφωνικού κέντρου, ενώ το EGP είναι η τηλεφωνήτρια υπεραστικών. Σήµερα χρησιµοποιούνται πολλά πρωτόκολλα δροµολόγησης στο Internet, που κατηγοριοποιούνται σε πρωτόκολλα επισκεψιµότητας και σε πρωτόκολλα διανύσµατος απόστασης. Τα πρωτόκολλα επισκεψιµότητας καθορίζουν αν υπάρχει διαδροµή προς
Η δοµή της επικεφαλίδας IPv6
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
72
κάποιο απόµακρο δίκτυο, ενώ τα πρωτόκολλα διανύσµατος απόστασης υπολογίζουν ένα µετρικό της απόστασης προς το απόµακρο δίκτυο. Το µετρικό αυτό µπορεί να είναι απλώς το πλήθος των δροµολογητών µεταξύ των δικτύων προέλευσης και προορισµού ή µπορεί να συµπεριλαµβάνει περισσότερη πληροφορία για κάθε κόµβο, όπως εύρος ζώνης και φορτίο. Γενικά, τα IGP είναι πρωτόκολλα διανύσµατος απόστασης και τα EGP πρωτόκολλα επισκεψιµότητας. ¶ƒø∆√∫√§§∞ À¶√™∆∏ƒπ•∏™
Πρωτόκολλα υποστήριξης του ΙΡ χειρίζονται συγκεκριµένες εργασίες, όπως αναδροµολογήσεις, µηνύµατα λάθους, και αντιστοιχίσεις µεταξύ διευθύνσεων ΙΡ και φυσικών διευθύνσεων επιπέδου προσπέλασης δικτύου. ∆εν παίρνουν αποφάσεις δροµολόγησης στο επίπεδο Internet, αν και µπορούν να χρησιµοποιηθούν από πρωτόκολλα που παίρνουν τέτοιες αποφάσεις. Το πρωτόκολλο Internet Message Control Protocol (IMCP) είναι ένα πρωτόκολλο που πρέπει απαραίτητα να υλοποιηθεί µαζί µε το IP. Ο σκοπός του είναι να στέλνει πληροφορίες και µηνύµατα ελέγχου µεταξύ συστηµάτων, όπως µηνύµατα λάθους, όταν γίνει προσπάθεια αποστολής πακέτων σε µη επισκέψιµο σύστηµα ή δίκτυο, και άλλα µη διορθώσιµα λάθη δροµολόγησης. Τα µηνύµατα IMCP στέλνονται ως δεδοµένα πρωτοκόλλου επιπέδου µεταφοράς, δηλαδή ενσωµατώνονται σε πακέτα ΙΡ. ∆οθείσης µιας διεύθυνσης ΙΡ, ο σκοπός του πρωτοκόλλου Address Resolution Protocol (ARP) είναι να βρει την αντίστοιχη διεύθυνση επιπέδου προσπέλασης δικτύου, ανακοινώνοντας στο τµήµα τοπικού δικτύου ένα µήνυµα που περιέχει τη διεύθυνση ΙΡ και αναµένοντας απάντηση. Μόλις δοθεί µια απάντηση ARP για µια διεύθυνση ΙΡ, το ζεύγος αυτό διευθύνσεων αποθηκεύεται, ώστε να µη χρειάζεται να υποβληθεί η αίτηση πάλι, τουλάχιστον για κάποιο χρονικό διάστηµα. To ARP συνήθως χρησιµοποιείται πάνω από πρωτόκολλα επιπέδου προσπέλασης δικτύου που υποστηρίζουν ανακοινώσεις, όπως το Ethernet. ∆οθείσης µιας φυσικής διεύθυνσης επιπέδου προσπέλασης δικτύου, ο σκοπός του πρωτοκόλλου Reverse Address Resolution Protocol (RARP) είναι να βρει την αντίστοιχη διεύθυνση ΙΡ. Το RARP είναι ιδιαίτερα χρήσιµο σε σταθµούς εργασίας χωρίς δίσκο, που πρέπει να βρουν µια διεύθυνση ΙΡ κατά την εκκίνησή τους. Τα πρωτόκολλα υποστήριξης είναι πολύ σηµαντικά για την ασφάλεια της υλοποίησης του TCP/IP. Για παράδειγµα, µηνύµατα αναδροµολόγησης του ICMP µπορούν να χρησιµοποιηθούν για να παραπλανήσουν δροµολογητές και συστήµατα που δρουν ως δροµολογητές, ώστε να χρησιµοποιήσουν πλαστά δροµολόγια. Τα δροµολόγια
3.1 T√ ª√¡∆∂§√ ∆√À INTERNET
73
αυτά θα µπορούσαν να βοηθήσουν στο να κατευθύνουν πακέτα προς το σύστηµα του επιτιθέµενου αντί για το νόµιµο προορισµό τους. 3.1.3 ∆Ô Â›Â‰Ô ÌÂÙ·ÊÔÚ¿˜
Τα δύο βασικά πρωτόκολλα επιπέδου µεταφοράς, το TCP και το UDP, συνθέτουν µηνύµατα που προέρχονται από διεργασίες εφαρµογής και τα παραδίδουν χρησιµοποιώντας την υπηρεσία παράδοσης πακέτων ΙΡ. Επειδή το ΙΡ παραδίδει πακέτα µόνο σε συστήµατα, τα πρωτόκολλα επιπέδου µεταφοράς πρέπει να προσθέσουν πληροφορίες που θα επιτρέψουν την παράδοση σε διεργασίες εφαρµογής. ¶ƒø∆√∫√§§√ TCP
Το πρωτόκολλο Τransmission Control Protocol (TCP) είναι το συνηθέστερα χρησιµοποιούµενο πρωτόκολλο επιπέδου µεταφοράς στο Internet. Παρέχει υπηρεσίες µεταφοράς προσανατολισµένες σε σύνδεση, αξιόπιστες και διπλής κατεύθυνσης, εξαλείφοντας έτσι τα διπλά πακέτα, επιτρέποντας το χειρισµό της αναµετάδοσης χαµένων πακέτων και εξασφαλίζοντας ότι τα πακέτα θα παραδοθούν µε τη σωστή σειρά. Επειδή παρέχει υπηρεσία µεταφοράς προσανατολισµένη σε σύνδεση, το TCP υλοποιεί εικονικά κυκλώµατα µεταξύ των οντοτήτων που επικοινωνούν. Το υποσύστηµα TCP στην προέλευση της σύνδεσης επεξεργάζεται µια ακολουθία bytes από µια διεργασία εφαρµογής και τη διαιρεί σε διακριτά µηνύµατα που στέλνονται στο υποσύστηµα TCP του προορισµού. Το υποσύστηµα TCP του προορισµού, µε τη σειρά του, συλλέγει τα µηνύµατα, ανακατασκευάζει την αρχική ακολουθία bytes και την περνάει στην αντίστοιχη διεργασία εφαρµογής. Το Σχήµα 3.4 δείχνει τη δοµή της επικεφαλίδας ενός µηνύµατος TCP. Source Port Number
Destination Port Number Sequence Number
Acknowledgement Number Header Length
Reserved
Flags
TCP Checksum
Window size Urgent Pointer
Options ™¯‹Ì· 3.4
Data 32 bits
∆οµή επικεφαλίδας TCP
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
74
Τα πεδία Source Port Number (µήκους 16 bits) και Destination Port Number (µήκους 16 bits), µαζί µε τις διευθύνσεις ΙΡ προέλευσης και προορισµού που υπάρχουν στην επικεφαλίδα του πακέτου ΙΡ, καθορίζουν µοναδικά τις δύο εφαρµογές που σχετίζονται µε τη σύνδεση TCP/IP. Το πεδίο Sequence Number (µήκους 32 bits) περιέχει το σχετικό αύξοντα αριθµό, σε bytes, του πρώτου byte του µηνύµατος από την αρχή της επικοινωνίας. Ο αύξων αριθµός συµφωνείται από τα δύο µέρη κατά την αρχή της επικοινωνίας και είναι κάποιος (αυθαίρετος) αριθµός µήκους 32 bits. Το πεδίο Acknowledgment Number (µήκους 32 bits) χρησιµοποιείται για να επιβεβαιώσει τη λήψη δεδοµένων. Η τιµή που περιέχει είναι η σχετική θέση του τελευταίου byte, του οποίου έγινε επιτυχής επιβεβαίωση λήψης. Το πεδίο Header Length (µήκους 4 bits) περιέχει το µήκος της επικεφαλίδας TCP, εκφρασµένο σε πλήθος λέξεων µήκους 32 bits. Το πεδίο Reserved (µήκους 6 bits) είναι δεσµευµένο για µελλοντική χρήση. Η τιµή του είναι πάντα µηδέν. Το πεδίο Flags (µήκους 6 bits) περιέχει τις τιµές (µήκους 1 bit η κάθε µία) των σηµαφόρων που φαίνονται στον Πίνακα 3.1. Το πεδίο Window Size (µήκους 16 bits) περιέχει το πλήθος των bytes δεδοµένων που ο αποστολέας ενός µηνύµατος είναι διατεθειµένος να δεχτεί. Το πρωτόκολλο χρησιµοποιεί το πεδίο αυτό για έλεγχο ροής. Το πεδίο TCP Checksum (µήκους 16 bits) χρησιµοποιείται για ανίχνευση λαθών, σε αναλογία µε το πεδίο Header Checksum της επικεφαλίδας του IPv4. Το πεδίο Urgent Pointer (µήκους 16 bits) υποδεικνύει το byte δεδοµένων που πρέπει να υποστεί επεξεργασία πρώτο. Το πεδίο Options µπορεί να χρησιµοποιηθεί για τον καθορισµό διαφόρων επιλογών του πρωτοκόλλου, αλλά πολύ σπάνια χρησιµοποιείται σήµερα. Τέλος, το πεδίο Data περιέχει τα δεδοµένα του µηνύµατος TCP, µήκους το πολύ 65535 bytes. ¶›Ó·Î·˜ 3.1
Σηµαφόροι TCP Σηµαφόρος
Περιγραφή
URG
Όταν είναι ίσος µε 1, υποδηλώνει ότι µπορεί να γίνει αποστολή δεδοµένων χωρίς να χρειάζεται να επεξεργαστεί ο παραλήπτης τα δεδοµένα που υπάρχουν ήδη στο κανάλι επικοινωνίας.
ACK
Όταν είναι ίσος µε 1, η τιµή του πεδίου Acknowledgment έχει νόηµα.
PSH
Όταν είναι ίσος µε 1, η µονάδα TCP πρέπει να παραδώσει δεδοµένα για το µήνυµα αυτό αµέσως.
RST
Όταν είναι ίσος µε 1, η σύνδεση πρέπει να επανεγκατασταθεί, λόγω µη διορθώσιµων λαθών.
SYN
Όταν είναι ίσος µε 1, η τιµή του πεδίου Sequence number έχει νόηµα.
FIN
Όταν είναι ίσος µε 1, η σύνδεση διακόπτεται.
3.1 T√ ª√¡∆∂§√ ∆√À INTERNET
75
¶ƒø∆√∫√§§√ UDP
Το πρωτόκολλο User Datagram Protocol (UDP) είναι παρόµοιο µε το TCP. Κάθε µήνυµα UDP (ή τµήµα UDP) ενσωµατώνεται σε ένα πακέτο ΙΡ. Επιπλέον, η έννοια των θυρών στο UDP και στο TCP είναι ίδια. Εποµένως, τα πεδία Destination Port Number και Source Port Number εξυπηρετούν τους ίδιους σκοπούς που εξυπηρετούν και στο TCP. Επιπλέον, κάθε µήνυµα UDP περιέχει επίσης ένα πεδίο UDP Length, που δείχνει το µήκος του µηνύµατος, όπως και ένα πεδίο UDP Checksum, που περιέχει έναν αριθµό ελέγχου για το σύνολο του µηνύµατος και της επικεφαλίδας UDP. Το Σχήµα 3.5 δείχνει τη δοµή µιας επικεφαλίδας UDP.
Source Port Number
Destination Port Number
UDP Length
UDP Checksum ™¯‹Ì· 3.5
Data 32 bits Αντίθετα µε το TCP, το UDP είναι µη αξιόπιστο πρωτόκολλο πακέτου και είναι σκόπιµα επιπόλαιο. Με το UDP, η παράδοση γίνεται στη βάση της καλύτερης προσπάθειας. ∆εν υπάρχει διόρθωση λαθών, αναµετάδοση ή ανίχνευση χαµένων, διπλών ή αναδιαταχθέντων πακέτων. Ακόµη και η ανίχνευση λαθών είναι προαιρετική στο UDP. Μια εφαρµογή που χρησιµοποιεί το UDP βλέπει διακριτά µηνύµατα που έχουν µήκος ακριβώς ίσο µε το µέγεθος του σώµατος UDP. ∆εν υπάρχει στρατηγική επιβεβαίωσης ή εγγύηση αξιόπιστης παράδοσης. Βασικά, το UDP απλώς προσθέτει αριθµούς θυρών στο βασικό σχήµα παράδοσης καλύτερης προσπάθειας ΙΡ. ∆εν εγγυάται την παράδοση πακέτων µε τη σωστή σειρά και χωρίς επαναλήψεις ή έστω την ίδια την παράδοση. Τα µηνύµατα µπορούν να χαθούν ή να φτάσουν µε λάθος σειρά και είναι δουλειά της εφαρµογής που χρησιµοποιεί το UDP ως πρωτόκολλο µεταφοράς να χειριστεί τις καταστάσεις αυτές. Από τη σκοπιά της ανάπτυξης εφαρµογών, θα ήταν άβολο κάθε εφαρµογή να επικοινωνεί απ’ ευθείας µε το UDP ή το TCP. Η κατασκευή TCP µηνυµάτων, όπως και οι λεπτοµέρειες του ελέγχου ροής TCP, δεν χρειάζεται και δεν πρέπει να αποτελούν τµήµα ενός προγράµµατος εφαρµογής. Για να διευκολυνθεί η επικοινωνία µε το TCP και το UDP, έχουν αναπτυχθεί διάφορες προγραµµατιστικές διεπαφές για προγραµµατισµό στο επίπεδο µεταφοράς. Παραδείγµατα τέτοιων διεπαφών είναι οι Berkeley sockets και η διεπαφή επιπέδου µεταφοράς (Transport Layer Interface – TLI) των
Η δοµή της επικεφαλίδας UDP
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
76
συστηµάτων UNIX V. Οι εφαρµογές ΙΡ που τρέχουν κάτω από Unix συνηθέστατα είναι γραµµένες για µία από τις δύο αυτές διεπαφές. 3.1.4 TÔ Â›Â‰Ô ÂÊ·ÚÌÔÁ‹˜
Υπάρχει µια µεγάλη ποικιλία πρωτοκόλλων εφαρµογής και υπηρεσιών που τρέχουν πάνω από το TCP και το UDP. Οι συνηθέστερες και περισσότερο χρησιµοποιούµενες εφαρµογές είναι οι εξής: • Προσπέλαση τερµατικού από απόσταση, που υλοποιείται µε το πρωτόκολλο σύνδεσης από απόσταση Telnet. • Μεταφορά αρχείου, που υλοποιείται µε το πρωτόκολλο µεταφοράς αρχείου File Transfer Protocol (FTP). • Ηλεκτρονικό ταχυδροµείο (e–mail), που υλοποιείται µε το πρωτόκολλο µεταφοράς ταχυδροµείου Simple Mail Transfer Protocol (SMTP). Αυτά τα πρωτόκολλα εφαρµογής υλοποιούνται πάνω από το TCP και είναι απαραίτητα για όλα τα συστήµατα Internet. Το FTP έχει µια ιδιαιτερότητα, επειδή απαιτεί την εγκατάσταση δύο συνδέσεων TCP (µιας σύνδεσης ελέγχου και µιας σύνδεσης δεδοµένων) µεταξύ πελάτη και εξυπηρετητή. Πέρα απ’ αυτά, υπάρχουν και κάποια άλλα πρωτόκολλα εφαρµογής που υλοποιούνται πάνω από το TCP. • Το πρωτόκολλο µεταφοράς ειδήσεων δικτύου Network News Transfer Protocol (NNTP), µπορεί να χρησιµοποιηθεί για την προσπέλαση και την παράδοση ειδήσεων USENET πάνω από το Internet. • Το πρωτόκολλο χρόνου δικτύου Network Time Protocol (NTP) µπορεί να χρησιµοποιηθεί για το συγχρονισµό συστηµάτων. • Το πρωτόκολλο διαχείρισης δικτύου Simple Network Management Protocol (SNMP) µπορεί να χρησιµοποιηθεί για τη διαχείριση ετερογενών στοιχείων σε περιβάλλον Internet ή Intranet. • Το πρωτόκολλο Χ11 µπορεί να χρησιµοποιηθεί για τη διαχείριση συνόδων X–Windows µεταξύ πελατών και εξυπηρετητών Χ. Επιπλέον αυτών, υπάρχουν και κάποια πρωτόκολλα που υλοποιούνται πάνω από το UDP. • Το πρωτόκολλο κλήσης διαδικασίας από απόσταση Remote Procedure Call (RPC) µπορεί να χρησιµοποιηθεί για να εκτελέσει διαδικασίες σε απόµακρα συστήµατα. To Secure RPC επεκτείνει το RPC µε την υποστήριξη κρυπτογραφικής αυθεντικοποίησης. Όλες οι κλήσεις RPC αυθεντικοποιούνται χρησιµοποιώντας ένα
3.1 T√ ª√¡∆∂§√ ∆√À INTERNET
µυστικό κλειδί, που διανέµεται χρησιµοποιώντας ανταλλαγή κλειδιών Diffie–Hellman. • Το σύστηµα αρχείων δικτύου Network File System (NFS) χρησιµοποιεί το RPC για να υποστηρίξει διαφανή προσπέλαση αρχείων πάνω από ένα δίκτυο. Αν υπάρχει διαθέσιµο το Secure RPC, το NFS µπορεί να το χρησιµοποιήσει. • Παροµοίως, το πληροφοριακό σύστηµα δικτύου Network Information System (NIS) χρησιµοποιεί το RPC για να επιτρέψει σε πολλαπλά συστήµατα να µοιράζονται δεδοµένα (π.χ. το αρχείο συνθηµατικών) για κεντρικοποιηµένη διαχείριση. To NIS+ είναι µια ενισχυµένη µορφή του NIS, που επιτρέπει το χειρισµό µεγάλων συστηµάτων και την ασφαλή ανταλλαγή κρίσιµης πληροφορίας. Οι περισσότερες υπηρεσίες TCP/IP και τα αντίστοιχα πρωτόκολλα εφαρµογής απαιτούν κάποια µορφή αντιστοίχισης µεταξύ ονοµάτων συστηµάτων και των αριθµητικών τους διευθύνσεων ΙΡ. Η υπηρεσία Domain Name Service (DNS) επιτελεί τη λειτουργία αυτή στο Internet. Είναι η πιο ευρέως κατανεµηµένη υπηρεσία σήµερα στο Internet. Ο χώρος ονοµάτων DNS διαµερίζεται ιεραρχικά σε δοµή δένδρου µε ένα µοναδικό κόµβο ρίζας. Κάθε κόµβος ανήκει σε µια αρχή ονοµατοδοσίας, στην οποία εναπόκειται να δηµιουργήσει όσους θυγατρικούς κόµβους θέλει. Ο όρος πεδίο (domain) χρησιµοποιείται για να δηλώσει οποιονδήποτε κόµβο και όλους τους απογόνους του. Η αρχιτεκτονική DNS υποστηρίζεται από έναν εξυπηρετητή DNS. Ο συνηθέστερα χρησιµοποιούµενος εξυπηρετητής DNS είναι ο Berkeley Internet Name Daemon (BIND), που αποτελεί τµήµα των περισσότερων σηµερινών συστηµάτων UNIX. Τέλος, πρέπει να αναφέρουµε και τις διάφορες υπηρεσίες ανακάλυψης πόρων και πληροφοριών. Παραδείγµατα τέτοιων υπηρεσιών είναι οι Gopher, Wide Area Information Service (WAIS), World Wide Web (WWW). Ο όρος WWW στην πραγµατικότητα αναφέρεται σε ένα υπερσύνολο των FTP, Gopher, WAIS και κάποιων άλλων υπηρεσιών πληροφοριών, που υλοποιείται µε το πρωτόκολλο Hypertext Transfer Protocol (HTTP).
77
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
78
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.1 Αντιστοιχίστε τα επίπεδα του µοντέλου Internet της αριστερής στήλης µε τα επίπεδα του µοντέλου OSI της δεξιάς στήλης: 1. Επίπεδο εφαρµογής
1. Επίπεδο εφαρµογής
2. Επίπεδο µεταφοράς
2. Επίπεδο παρουσίασης
3. Επίπεδο Internet
3. Επίπεδο συνόδου
4. Επίπεδο δικτύου
4. Επίπεδο µεταφοράς 5. Επίπεδο δικτύου 6. Επίπεδο ζεύξης δεδοµένων 7. Φυσικό επίπεδο
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.2 Αντιστοιχίστε τα πρωτόκολλα της αριστερής στήλης µε τα επίπεδα της δεξιάς στήλης:. 1. IPv4
1. Επίπεδο εφαρµογής
2. TCP
2. Επίπεδο µεταφοράς
3. Telnet
3. Επίπεδο Internet
4. IPv6
4. Επίπεδο δικτύου
5. UDP 6. IGP 7. EGP 8. FTP 9. ICMP 10. ARP 11. SMTP 12. NNTP 13. SNMP 14. RPC 15. RARP 16. NFS
3.2 ¶ƒø∆√∫√§§∞ ∞™º∞§∂π∞™ ∂¶π¶∂¢√À INTERNET
79
¢Ú·ÛÙËÚÈfiÙËÙ· 3.1 Eπισκεφθείτε στο ∆ιαδίκτυο τη θέση http://www.ietf.org της IETF και προµηθευτείτε τα RFCs που προδιαγράφουν τα πρωτόκολλα IPv4, IPv6, TCP και UDP. Μελετείστε και περιγράψτε συνοπτικά τα πεδία των αντίστοιχων επικεφαλίδων.
3.2 ¶ÚˆÙfiÎÔÏÏ· ·ÛÊ¿ÏÂÈ·˜ ÂȤ‰Ô˘ Internet 3.2.1 ∆a ÚÒÙ· ÚˆÙfiÎÔÏÏ·
Η ιδέα της ανάπτυξης ενός τυποποιηµένου πρωτοκόλλου ασφάλειας επιπέδου δικτύου (ή Internet) δεν είναι καινούργια. ∆ιάφορα τέτοια πρωτόκολλα είχαν προταθεί πριν ακόµη συγκροτηθεί η οµάδα εργασίας IETF IPsec: • Το πρωτόκολλο Security Protocol 3 (SP3) είναι ένα πρωτόκολλο ασφάλειας επιπέδου δικτύου, που αναπτύχθηκε και προτάθηκε από το Αµερικανικό National Security Agency (NSA) και το National Institute of Science and Technology (NIST), ως τµήµα της οµάδας πρωτοκόλλων ασφάλειας Secure Data Network System. Το SP3 χρησιµοποιεί κρυπτογραφικές τεχνικές για να παράσχει υπηρεσίες ασφάλειας για την χωρίς σύνδεση έκδοση του πρωτοκόλλου επιπέδου δικτύου OSI. Μηνύµατα που δηµιουργούνται από το επίπεδο µεταφοράς υφίστανται επεξεργασία από το SP3 πριν περάσουν σε χαµηλότερα επίπεδα του δικτύου. • Το πρωτόκολλο Network Layer Security Protocol (NLSP) αναπτύχθηκε από τον ISO για να ασφαλίσει το πρωτόκολλο Connectionless Network Layer Protocol (CNLP). Πρόκειται για ένα µη συµβατό απόγονο του SP3. • Το Ολοκληρωµένο NLSP (Integrated NLSP, I–NLSP) αναπτύχθηκε και προτάθηκε από τον K. Robert Glenn του NIST για να παράσχει υπηρεσίες ασφάλειας τόσο στο IPv4, όσο και στο CNLP. Και πάλι, η λειτουργικότητα του I–NLSP ως προς την ασφάλεια είναι παρόµοια µε αυτήν του SP3, αν και κάποιες λεπτοµέρειες διαφέρουν. Πιο συγκεκριµένα, το I–NLSP παρέχει επιπλέον λειτουργικότητα, όπως επεξεργασία ετικετών ασφάλειας. Το I–NLSP είχε προδιαγραφεί σε Internet Draft που έχει προ πολλού λήξει. • Το πρωτόκολλο swIPe είναι άλλο ένα πειραµατικό πρωτόκολλο ασφάλειας επιπέδου Internet, που αναπτύχθηκε και κατασκευάστηκε σε πρωτότυπο από τον Γιάννη Ιωαννίδη και τον Matt Blaze. Η υλοποίηση του πρωτοτύπου είναι διαθέσιµη δωρεάν στο Internet.
80
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
Όλα τα παραπάνω πρωτόκολλα είναι παρόµοια. Όλα χρησιµοποιούν ως βασική τεχνική την ενσωµάτωση (encapsulation). Βασικά, αυτό σηµαίνει ότι αυθεντικοποιηµένα ή/και κρυπτογραφηµένα πακέτα επιπέδου δικτύου εµπεριέχονται (ή ενσωµατώνονται) σε άλλα πακέτα. Πιο συγκεκριµένα, εξερχόµενα µη κρυπτογραφηµένα πακέτα αυθεντικοποιούνται ή/και κρυπτογραφούνται και εσωκλείονται σε εξωτερικές επικεφαλίδες επιπέδου δικτύου που χρησιµοποιούνται για να δροµολογήσουν τα πακέτα µέσω του (δια)δικτύου. Στα ισότιµα συστήµατα, τα εισερχόµενα πακέτα αποσφραγίζονται, δηλαδή αποµακρύνονται οι εξωτερικές επικεφαλίδες και τα εσωτερικά πακέτα αυθεντικοποιούνται ή/και αποκρυπτογραφούνται και προωθούνται προς τις κατευθύνσεις προορισµού τους. Aς σηµειωθεί ότι η ενσωµάτωση IP δεν απαιτεί αλλαγές στην υπάρχουσα υποδοµή δροµολόγησης Internet. Αφού τα αυθεντικοποιηµένα ή/και κρυπτογραφηµένα πακέτα ΙΡ έχουν µια µη κρυπτογραφηµένη, φυσιολογική εξωτερική επικεφαλίδα, µπορούν να δροµολογηθούν και να υποστούν επεξεργασία όπως και κάθε άλλο πακέτο ΙΡ. 3.2.2 ∏ ÔÌ¿‰· ÂÚÁ·Û›·˜ IPSEC Ù˘ Internet Engineering Task Force
Όταν σχεδιάστηκε το IPv6, πριν από µερικά χρόνια, υπήρχαν ισχυρές πιέσεις να συµπεριληφθούν σ’ αυτό λειτουργίες ασφάλειας. Ο βασικός στόχος ήταν να εξασφαλιστεί ότι η επόµενη γενιά του ΙΡ θα είχε διαθέσιµους ισχυρούς κρυπτογραφικούς µηχανισµούς για τους χρήστες εκείνους που θα επιθυµούσαν να τους χρησιµοποιήσουν. Σύµφωνα µε τους στόχους σχεδίασης, οι µηχανισµοί αυτοί έπρεπε να είναι ανεξάρτητοι από αλγόριθµους, έτσι ώστε να είναι δυνατή η αλλαγή των αλγόριθµων χωρίς να επηρεάζεται η υπόλοιπη υλοποίηση. Οι µηχανισµοί θα έπρεπε, επίσης, να είναι χρήσιµοι στην επιβολή µιας µεγάλης ποικιλίας πολιτικών ασφάλειας, αλλά, ταυτόχρονα, θα έπρεπε να σχεδιαστούν µε τέτοιον τρόπο ώστε να αποφευχθούν δυσµενείς επιπτώσεις στους χρήστες του Internet που δεν χρησιµοποιούν καθόλου µηχανισµούς ασφάλειας για τη διακίνηση των δεδοµένων τους. Το αποτέλεσµα της προσπάθειας αυτής ήταν η προδιαγραφή µιας ολοκληρωµένης αρχιτεκτονικής ασφάλειας για το IPv6, η οποία συνδυάζει µηχανισµούς αυθεντικοποίησης και κρυπτογράφησης. Στο τέλος του 1992, η Internet Engineering Task Force (IETF) συγκρότησε µια οµάδα εργασίας µε στόχο την προτυποποίηση ενός πρωτοκόλλου ασφάλειας ΙΡ (IP Security Protocol –– IPSP) και ενός πρωτοκόλλου διαχείρισης κλειδιών Internet (Internet Key Management Protocol – IKMP). Σύντοµα έγινε αντιληπτό ότι η ίδια αρχιτεκτονική που σχεδιαζόταν για το IPv6 µπορούσε να χρησιµοποιηθεί και για το IPv4. Η βασική διαφορά είναι ότι οι µηχανισµοί ασφάλειας που περιγράφονται στην
3.2 ¶ƒø∆√∫√§§∞ ∞™º∞§∂π∞™ ∂¶π¶∂¢√À INTERNET
αρχιτεκτονική πρέπει εκ των υστέρων να ενταχθούν στις υλοποιήσεις του IPv4, ενώ ενυπάρχουν στις υλοποιήσεις του IPv6 εξ αρχής. Τα IPSP και IKMP συνδέονται µόνο µέσω συνάψεων ασφάλειας (Security Associations – SAs), στις οποίες γίνονται αναφορές από δείκτες παραµέτρων ασφάλειας (Security Parameter Indices – SPIs). Βασικά, το IKMP χρησιµοποιείται για να εγκατασταθούν SΑs και να αρχικοποιηθούν SPIs, ενώ το IPSP χρησιµοποιεί αυτές τις SAs και τα SPIs για να κρυπτογραφήσει πακέτα IP. 3.2.3 EÈÛÎfiËÛË Ù˘ ·Ú¯ÈÙÂÎÙÔÓÈ΋˜
Κάθε υποσύστηµα υλοποίησης IPsec περιέχει υλοποιήσεις του IPSP και του IKMP, µια βάση δεδοµένων πολιτικής ασφάλειας και µια βάση δεδοµένων συνάψεων ασφάλειας. Το IPSP περιέχει τα πρωτόκολλα Authentication Header Protocol (AHP) και Encapsulating Security Payload Protocol (ESP), τα οποία, είτε µεµονωµένα είτε σε συνεργασία, παρέχουν τις αντίστοιχες υπηρεσίες στη σύναψη ασφάλειας. Αν απαιτείται προστασία και µε το AHP και µε το ESP, τα επικοινωνούντα υποσυστήµατα υλοποίησης IPsec πρέπει να εγκαταστήσουν και να συντηρήσουν δύο συνάψεις ασφάλειας. Οµοίως, προκειµένου να επιτευχθεί αµφίδροµη επικοινωνία µεταξύ δύο κεντρικών συστηµάτων, το υποσύστηµα υλοποίησης IPsec πρέπει να εγκαταστήσει και να συντηρήσει δύο συνάψεις ασφάλειας, µία για κάθε κατεύθυνση επικοινωνίας. Τόσο το ΑΗΡ όσο και το ESP υποστηρίζουν δύο τρόπους λειτουργίας: λειτουργία σήραγγας (tunnel mode) και λειτουργία µεταφοράς (transport mode). Στη λειτουργία µεταφοράς προστατεύουν κυρίως πρωτόκολλα ανώτερων επιπέδων. Ο τρόπος αυτός είναι ο απλούστερος και ο πιο συνηθισµένος για χρήση µεταξύ τελικών συστηµάτων. Στη λειτουργία σήραγγας προστατεύουν σειρές πακέτων ΙΡ χρησιµοποιώντας ενσωµάτωση ΙΡ. Η βάση δεδοµένων πολιτικής ασφάλειας, την οποία εγκαθιστά και συντηρεί ένας χρήστης ή ένας διαχειριστής συστήµατος µέσα στο υποσύστηµα υλοποίησης IPsec, περιέχει απαιτήσεις για το συγκεκριµένο επίπεδο προστασίας. Ο συγκεκριµένος τρόπος επεξεργασίας των πακέτων κάθε εφαρµογής επιλέγεται ταυτίζοντας πληροφορίες των επικεφαλίδων επιπέδου ΙΡ και επιπέδου µεταφοράς (διευθύνσεις ΙΡ ποµπού και δέκτη, αριθµοί θυρών κτλ.) µε εγγραφές της βάσης. Μια σύναψη ασφάλειας είτε αποδέχεται τις υπηρεσίες ασφάλειας IPsec κάθε πακέτου, είτε το απορρίπτει, είτε του επιτρέπει να παρακάµψει πλήρως τα πρωτόκολλα IPsec. Κάθε σύναψη ασφάλειας αναγνωρίζεται µοναδικά από µια τριάδα αριθµών, που απο-
81
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
82
τελείται από ένα δείκτη παραµέτρων ασφάλειας, µια ΙΡ διεύθυνση προορισµού και ένα όνοµα, που καθορίζει το AHP ή το ESP ως πρωτόκολλο ασφάλειας. Η βάση δεδοµένων σύναψης ασφάλειας περιέχει µια εγγραφή για κάθε σύναψη, που ορίζει τις παραµέτρους ασφάλειάς της. ¶ƒø∆√∫√§§√ AHP
Το πρωτόκολλο αυτό χρησιµοποιείται όταν η ακεραιότητα και αυθεντικότητα του πακέτου ΙΡ ή του περιεχοµένου του πρέπει να προστατευτούν, αλλά όχι απαραίτητα η εµπιστευτικότητα του ίδιου του πακέτου. Για παράδειγµα, σε µια µεταφορά χρηµάτων, θέλουµε να είµαστε σίγουροι ότι το ποσό που µεταφέρεται δεν θα αλλοιωθεί, αλλά δεν µας πολυνοιάζει αν κάποιος µάθει το ύψος του. Υπάρχουν, βέβαια, και περιπτώσεις όπου το ύψος του ποσού που µεταφέρεται αποτελεί σηµαντικότατη πληροφορία για κάποιους τρίτους. Το πρωτόκολλο ΑΗΡ παρέχει µια επιπλέον επικεφαλίδα µεταξύ των επικεφαλίδων των επιπέδων ΙΡ και µεταφοράς, η οποία περιέχει κάποια δεδοµένα αυθεντικοποίησης, τα οποία ο αποδέκτης επαληθεύει, ώστε να διαπιστώσει αν ο αποστολέας ήταν πράγµατι αυτός που ισχυρίζεται πως ήταν. Για το σκοπό αυτό χρησιµοποιείται µια µονόδροµη συνάρτηση σύνοψης (hash function) µε κλειδί, όπως η MD5 µε κλειδί ή o SHA µε κλειδί. Ο υπολογισµός και η επαλήθευση δεδοµένων αυθεντικοποίησης ™¯‹Ì· 3.6 µε τον τρόπο αυτό γίνονται πολύ αποτελεσµατικότερα απ’ ό,τι αν κρυπτογραφού∆οµή επικεφαλίσαµε και αποκρυπτογραφούσαµε όλο το πακέτο.
δας AHP και η θέση της µέσα σε πακέτο IPv6.
Στο Σχήµα 3.6 φαίνεται η δοµή της επικεφαλίδας αυτής και η θέση της µέσα σε ένα πακέτο IPv6. Κάθε γραµµή της επικεφαλίδας αντιστοιχεί σε λέξη 32 bits.
IPv6C Header
Hop-by-C hop/routing
Next Header
AuthenticationC Header
DestinationC options
Length
TCP
Data
Reserved
Security Parameter Index (SPI) Authentication Data (n*32 bits) 32 bits
Το πεδίο Next header (µήκους 8 bits) χρησιµοποιείται για την αναγνώριση του τύπου των δεδοµένων που ακολουθούν την επικεφαλίδα αυθεντικοποίησης. Το πεδίο
3.2 ¶ƒø∆√∫√§§∞ ∞™º∞§∂π∞™ ∂¶π¶∂¢√À INTERNET
Payload length (µήκους 8 bits) καθορίζει το µήκος της επικεφαλίδας αυθεντικοποίησης σε λέξεις 32 bits, µειωµένο κατά 2. Για παράδειγµα, αν η τιµή αυθεντικοποίησης είναι µήκους 96 bits, το πραγµατικό µήκος της επικεφαλίδας θα είναι 6, αλλά η τιµή του πεδίου αυτού θα είναι 4. Η τιµή 2 σηµαίνει ότι δεν χρησιµοποιείται αλγόριθµος αυθεντικοποίησης. Το πεδίο Reserved (µήκους 16 bits) είναι δεσµευµένο για µελλοντική χρήση. Το πεδίο Security parameter index (SPI) (µήκους 32 bits) καθορίζει τη σύναψη ασφάλειας του πακέτου. Η τιµή 0 σηµαίνει ότι δεν υπάρχει σύναψη ασφάλειας. Το πεδίο Authentication data περιέχει ένα µεταβλητό πλήθος λέξεων µήκους 32 bits που περιγράφουν τα δεδοµένα αυθεντικοποίησης, π.χ. έναν κώδικα αυθεντικοποίησης µηνύµατος ή µια ψηφιακή υπογραφή. Για να αυθεντικοποιηθεί ένα πακέτο, ο αποστολέας πρέπει πρώτα να εντοπίσει µια σύναψη ασφάλειας, καθορίζοντας παραµέτρους όπως ο αλγόριθµος ελέγχου ακεραιότητας, το κρυπτογραφικό κλειδί και το µήκος των δεδοµένων αυθεντικοποίησης. Κανονικά, η ταυτότητα του χρήστη, η διεύθυνση προορισµού και ο δείκτης παραµέτρων ασφάλειας (SPI) καθορίζουν ποια σύναψη ασφάλειας θα χρησιµοποιηθεί. Συνήθως, για αυθεντικοποίηση χρησιµοποιείται ένας αλγόριθµος κώδικα αυθεντικοποίησης µηνύµατος. Οι προκαθορισµένες επιλογές που πρέπει να υποστηρίζονται από όλες τις υλοποιήσεις IPsec είναι ο HMAC µε τον MD5 και τον SHA–1. Ωστόσο, µπορούν να χρησιµοποιηθούν και άλλες συναρτήσεις ελέγχου ακεραιότητας. Ο υπολογισµός των δεδοµένων αυθεντικοποίησης θεωρεί τα πεδία του πακέτου, όπως αυτά εµφανίζονται στην πλευρά του δέκτη. Μερικά πεδία θα αλλάξουν κατά τη µετάδοση, όπως το hop limit στην επικεφαλίδα ΙΡ. Μερικά πεδία δεν είναι ακόµη γνωστά, όπως τα δεδοµένα αυθεντικοποίησης στην επικεφαλίδα αυθεντικοποίησης. Τα πεδία αυτά γεµίζουν µε µηδενικά κατά τον υπολογισµό του κώδικα αυθεντικοποίησης µηνύµατος. Ο κώδικας αυτός εισάγεται στη συνέχεια στο κατάλληλο πεδίο δεδοµένων της επικεφαλίδας αυθεντικοποίησης. Ο δέκτης του πακέτου αναφέρεται στο SPI και στη διεύθυνση προορισµού για να εντοπίσει τη σχετική σύναψη ασφάλειας και να επαληθεύσει τα δεδοµένα αυθεντικοποίησης. Αν αποτύχει η αυθεντικοποίηση, η αποτυχία πρέπει να καταγραφεί και το πακέτο να απορριφθεί. Σ’ αυτόν τον αλγόριθµο, κάποια πεδία της επικεφαλίδας ΙΡ δεν καλύπτονται από το µηχανισµό προστασίας. Για περισσότερη προστασία, η λειτουργία σήραγγας προσθέτει µια εξωτερική ΙΡ επικεφαλίδα που περιέχει κάποια άλλη διεύθυνση ΙΡ, συνήθως τη διεύθυνση ενός ηλεκτρονικού αναχώµατος (firewall). Η εσωτερική επικεφαλίδα ΙΡ περιέχει τις αρχικές διευθύνσεις προορισµού και προέλευσης και προστατεύεται πλήρως από την επικεφαλίδα αυθεντικοποίησης, όπως φαίνεται στο Σχήµα 3.7.
83
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
84
New IPC header
ExternalC header (ifC present)
AuthenticationC header
OriginalC IPC Header
ExternalC header (if C present)
TCP
Data
™¯‹Ì· 3.7
Επικεφαλίδα AHP σε λειτουργία σήραγγας
¶ƒø∆√∫√§§√ ESP
To πρωτόκολλο αυτό χρησιµοποιείται για να κρυπτογραφήσει και να ενσωµατώσει είτε µόνο το περιεχόµενο επιπέδου µεταφοράς είτε ολόκληρο το πακέτο IP, ανάλογα µε τον τρόπο χρήσης, όπως θα δούµε αµέσως µετά. Το υποσύστηµα υλοποίησης ΙΡ πρέπει να περιέχει µια επικεφαλίδα ΙΡ και να κρυπτογραφεί τµήµατα του πακέτου ΙΡ, αντίστοιχα. Η κρυπτογράφηση γίνεται στην πλευρά του αποστολέα και η αποκρυπτογράφηση στην πλευρά του δέκτη. Η ακριβής µορφή των δεδοµένων περιεχοµένου εξαρτάται από τον συγκεκριµένο αλγόριθµο κρυπτογράφησης και το συγκεκριµένο µετασχηµατισµό που χρησιµοποιείται.
Το ESP προστατεύει την εµπιστευτικότητα. Ανάλογα µε τον αλγόριθµο κρυπτογράφησης που χρησιµοποιείται, µπορεί επίσης να προστατεύει την ακεραιότητα και την αυθεντικότητα. Η επικεφαλίδα ESP συνήθως τοποθετείται µπροστά από τα κρυπτογραφηµένα δεδοµένα, όπως φαίνεται στο Σχήµα 3.8, και περιέχει το SPI. Η δοµή της έχει ως εξής: Το πεδίο Security Parameter Index (µήκους 32 bits) αναφέρεται στο δείκτη παραµέτρων ασφάλειας του δέκτη. Το πεδίο Initialization Vector αποτελείται από µεταβλητό πλήθος λέξεων µήκους 32 bits, των οποίων το ακριβές πλήθος ορίζεται ως παράµετρος της σύναψης ασφάλειας. Το περιεχόµενο του πεδίου αυτού είναι κανονι™¯‹Ì· 3.8 κά το αποτέλεσµα µιας γεννήτριας τυχαίων αριθµών. Το πεδίο Payload Data περιέχει ∆οµή και θέση της τα κρυπτογραφηµένα δεδοµένα. Το πεδίο Padding (µεταβλητού µήκους) συνήθως γεµίεπικεφαλίδας ESP
IP Header
Other IP headers
ESP header
Encrypted data
Security Parameter Index (SPI) Initialization Vector (IV) Payload Data Padding Pad Length (0-255) 32 bits
Payload Type
3.2 ¶ƒø∆√∫√§§∞ ∞™º∞§∂π∞™ ∂¶π¶∂¢√À INTERNET
ζει µε τυχαία bits. Το µήκος του πεδίου επιλέγεται έτσι ώστε το συνολικό µήκος των πεδίων Payload Data και Padding mod 8 να ισούται µε 6. Το πεδίο Pad Length (µήκους 8 bits) καθορίζει το µήκος του πεδίου Padding. Το πεδίο Payload Type (µήκους 8 bits) περιέχει τον κωδικό του πρωτοκόλλου των δεδοµένων του περιεχοµένου. Πριν κρυπτογραφήσουµε ένα πακέτο, ο ποµπός πάλι εντοπίζει µια σύναψη ασφάλειας για να καθορίσει ποιον αλγόριθµο κρυπτογράφησης και ποιο κλειδί θα χρησιµοποιήσει. Η σύναψη αυτή είναι διαφορετική από εκείνη που χρησιµοποιείται µε το ΑΗΡ Ο ποµπός έχει στη συνέχεια δύο επιλογές τρόπου λειτουργίας του ESP: • Σε λειτουργία µεταφοράς, ένα πλαίσιο από ανώτερο πρωτόκολλο, όπως, π.χ., από το TCP ή το UDP, ενσωµατώνεται στο ESP. Η επικεφαλίδα ΙΡ δεν κρυπτογραφείται. Η λειτουργία αυτή παρέχει προστασία των πακέτων που µεταδίδονται µεταξύ δύο κόµβων απ’ άκρη σε άκρη. • Σε λειτουργία σήραγγας, ολόκληρο το ΙΡ πακέτο ενσωµατώνεται στο ESP. Αυτό το ESP µεταδίδεται µέσα σε ένα άλλo πακέτο ΙΡ µε µη κρυπτογραφηµένες επικεφαλίδες. Εποµένως, η λειτουργία αυτή µπορεί να ονοµαστεί «ΙΡ µέσα στο ΙΡ». Η λειτουργία αυτή µπορεί να εφαρµοστεί µεταξύ ηλεκτρονικών αναχωµάτων για να δηµιουργήσει ένα ιδεατό ιδιωτικό δίκτυο (Virtual Private Network – VPN). Ο δέκτης του πακέτου εντοπίζει τη σχετική σύναψη ασφάλειας και αποκρυπτογραφεί το κρυπτογραφηµένο περιεχόµενο. Αν η αποκρυπτογράφηση αποτύχει, το γεγονός καταγράφεται και το πακέτο απορρίπτεται. Μέχρι τώρα έχουµε ξεπεράσει τη συζήτηση των ζητηµάτων των σχετικών µε τη διαχείριση κλειδιών µέσα στο IPsec. Αυτό έγινε γιατί το IPsec προδιαγράφει υπηρεσίες αυθεντικοποίησης και κρυπτογράφησης ανεξάρτητα από τα πρωτόκολλα διαχείρισης κλειδιών, που διαµορφώνουν τις σχέσεις ασφάλειας, και τα κλειδιά των συνόδων. Έτσι, οι υπηρεσίες του IPsec δε συσχετίζονται µε κάποιο συγκεκριµένο πρωτόκολλο διαχείρισης κλειδιών. Αν ένα τέτοιο πρωτόκολλο βρεθεί ελαττωµατικό, µπορεί να αντικατασταθεί χωρίς περαιτέρω επιπτώσεις στην υλοποίηση του IPsec. Μπορούµε όµως τώρα να ολοκληρώσουµε τη συζήτησή µας, κάνοντας αναφορά στο IKMP. ¶ƒø∆√∫√§§√ IKMP
Το IPSP υποθέτει ότι υπάρχουν συνάψεις ασφάλειας µεταξύ των οντοτήτων που επιθυµούν να χρησιµοποιήσουν το IPsec. Ο σκοπός του πρωτοκόλλου IKMP είναι να διαπραγµατευτεί τις κρυπτογραφικές δυνατότητες και των δύο µερών, ώστε να συµφωνήσουν σε αλγόριθµους και παραµέτρους και να ανταλλάξουν κλειδιά. Με άλλα
85
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
86
λόγια, το πρωτόκολλο εγκαθιστά και συντηρεί τις συνάψεις ασφάλειας που θα χρησιµοποιήσουν τα πρωτόκολλα AHP και ESP. Η ιστορία του ΙΚΜΡ είναι µεγάλη. Η τρέχουσα έκδοση του πρωτοκόλλου συνδυάζει το πρωτόκολλο Internet Security Association Key Management Protocol (ISAKMP), που αναπτύχθηκε από την NSA, και το πρωτόκολλο καθορισµού κλειδιού Oakley, που αναπτύχθηκε από το Πανεπιστήµιο της Αριζόνα. Το ISAKMP χρησιµοποιείται για τη διαπραγµάτευση αµοιβαία υποστηριζόµενων αλγόριθµων και µαθηµατικών δοµών για την ανταλλαγή κλειδιών Diffie–Hellman και το επακόλουθο βήµα αυθεντικοποίησης. Πρόσφατα, το ISAKMP/Oakley µετονοµάστηκε σε Internet Key Exchange (ΙΚΕ) και πιθανόν κάποτε θα αντικαταστήσει το IKMP. Η πρόταση ISAKMP/Oakley (και ΙΚΕ) συνδυάζει ανταλλαγή κλειδιών Diffie– Hellman και επακόλουθη αυθεντικοποίηση των παραµέτρων Diffie–Hellman. Η ανταλλαγή κλειδιών επέρχεται σε τρεις φάσεις. Στην πρώτη φάση, τα δύο µέρη ανταλλάσσουν cookies ώστε να προστατευτούν από επιθέσεις συµφόρησης πόρων (resource–clogging attacks) –– µια ειδική µορφή επιθέσεων άρνησης παροχής υπηρεσίας (denial–of–service attacks), κατά την οποία ο επιτιθέµενος κατακλύζει το θύµα µε υπολογισµούς µεγάλης πολυπλοκότητας, όπως, π.χ. η εκτέλεση πολλών ανταλλαγών κλειδιών Diffie–Hellman ταυτόχρονα. Στη δεύτερη φάση, εκτελούν µια ανταλλαγή κλειδιών Diffie–Hellman, ώστε αµοιβαία να υπολογίσουν το κλειδί µιας συνόδου. Το κλειδί αυτό µπορεί στη συνέχεια να χρησιµοποιηθεί µέσα στα πρωτόκολλα IPsec, έτσι ώστε να προστατευτούν οι µετέπειτα επικοινωνίες. Τα δύο µέρη, προκειµένου να αυθεντικοποιηθούν αµοιβαία και να προστατευτούν από επιθέσεις ενδιαµέσου (Man–in–the–middle attack), καταλήγουν µε την ανταλλαγή ψηφιακών υπογραφών για αυθεντικοποίηση. Τόσο η µαθηµατική δοµή (πολλαπλασιαστική οµάδα σε πεπερασµένο πεδίο) στην οποία θα πραγµατοποιηθεί η ανταλλαγή Diffie–Hellman όσο και η µέθοδος της επακόλουθης αυθεντικοποίησης είναι διαπραγµατεύσιµες. ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.3 Ανάµεσα σε ποια πεδία της επικεφαλίδας IPv6 τοποθετείται η επικεφαλίδα ΑΗΡ σε λειτουργία σήραγγας; Σε λειτουργία µεταφοράς; ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.4 Περιγράψτε τη δοµή της επικεφαλίδας ΑΗΡ.
3 . 3 ¶ ƒ ø ∆ √ ∫ √ § § ∞ ∞ ™ º ∞ § ∂ π ∞ ™ ∂ ¶ π ¶ ∂ ¢ √ À ª ∂ ∆∞ º √ ƒ ∞ ™
87
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.5 Ανάµεσα σε ποια πεδία της επικεφαλίδας IPv6 τοποθετείται η επικεφαλίδα ESP;
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.6 Περιγράψτε τη δοµή της επικεφαλίδας ESP.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.7 Ποιες είναι οι φάσεις λειτουργίας του πρωτοκόλλου ISAKMP/Oakley;
¢Ú·ÛÙËÚÈfiÙËÙ· 3.2 Στη συζήτηση του πρωτοκόλλου ΑΗΡ αναφέραµε ότι στον υπολογισµό των δεδοµένων αυθεντικοποίησης δε συµµετέχουν όλα τα πεδία της επικεφαλίδας ΙΡ, επειδή ο υπολογισµός αυτός θεωρεί τα πεδία όπως εµφανίζονται στο δέκτη. Βρείτε ποια από τα πεδία της επικεφαλίδας ΙPv4 πρέπει να µηδενιστθούν πριν από τον υπολογισµό αυτό και ποια όχι και εξηγείστε τις επιλογές σας. ¢Ú·ÛÙËÚÈfiÙËÙ· 3.3 Επαναλάβετε τη ∆ραστηριότητα 3.2 για τα πεδία της επικεφαλίδας IPv6.
¢Ú·ÛÙËÚÈfiÙËÙ· 3.4 Όταν χρησιµοποιούµε λειτουργία σήραγγας, κατασκευάζουµε µια καινούρια επικεφαλίδα ΙΡ. Βρείτε ποια είναι η σχέση ανάµεσα στα πεδία της επικεφαλίδας (ή πεδία επέκτασης) του εξωτερικού πακέτου και στα αντίστοιχα πεδία της επικεφαλίδας (ή πεδία επέκτασης) του εσωτερικού πακέτου, για πακέτα IPv4. Με άλλα λόγια, καθορίστε ποιες από τις εξωτερικές τιµές υπολογίζονται από τις εσωτερικές και ποιες υπολογίζονται ανεξάρτητα. ¢Ú·ÛÙËÚÈfiÙËÙ· 3.5 Επαναλάβετε τη ∆ραστηριότητα 3.4 για πακέτα IPv6.
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
88
3.3 ¶ÚˆÙfiÎÔÏÏ· ·ÛÊ·Ï›·˜ ÂȤ‰Ô˘ ÌÂÙ·ÊÔÚ¿˜ 3.3.1 T· ÚÒÙ· ÚˆÙfiÎÔÏÏ·
Όπως και µε τα πρωτόκολλα επιπέδου Internet, η ιδέα προτυποποίησης ενός πρωτοκόλλου ασφάλειας για το επίπεδο µεταφοράς δεν είναι καινούρια. Πριν ακόµη την εµφάνιση της οµάδας εργασίας TLS (Transport Layer Security) της IETF, είχαν προταθεί τα εξής πρωτόκολλα: • Το πρωτόκολλο Security Protocol 4 (SP4) είναι πρωτόκολλο επιπέδου µεταφοράς, που αναπτύχθηκε από την NSA και το NIST ως τµήµα της οµάδας πρωτοκόλλων SDNS. • Το πρωτόκολλο Transport Layer Security Protocol (TLSP) αναπτύχθηκε και προτυποποιήθηκε από τον ISO. • Οι Matt Blaze και Steven Bellovin της AT&T Bell Labs ανέπτυξαν ένα πακέτο λογισµικού µε το όνοµα Encrypted Session Manager (ESM), που σε πολλά του σηµεία µοιάζει µε το Secure Shell (SSH), το οποίο θα συζητήσουµε αµέσως µετά. 3.3.2 TÔ ÚˆÙfiÎÔÏÏÔ Secure Shell
To Secure Shell (SSH) είναι ένα σχετικά απλό πρόγραµµα, που µπορεί να χρησιµοποιηθεί για να συνδεθεί κανείς ασφαλώς σε αποµακρυσµένη µηχανή, να εκτελέσει εντολές στη µηχανή αυτή και να µετακινήσει αρχεία από µια µηχανή σε άλλη. Τo SSH παρέχει ισχυρή αυθεντικοποίηση και ασφαλείς επικοινωνίες µέσω ανασφαλών καναλιών. Η πρόθεση κατασκευής του ήταν να µπορεί να αντικαταστήσει τα εργαλεία rlogin, rsh, rdist, rcp. Επίσης µπορεί, σε πολλές περιπτώσεις, να αντικαταστήσει το telnet. Το SSH παρέχει υποστήριξη για αυθεντικοποίηση µηχανής αλλά και αυθεντικοποίηση χρήστη, µαζί µε συµπίεση δεδοµένων, και προστασία ακεραιότητας και εµπιστευτικότητας δεδοµένων. Ένα µειονέκτηµά του είναι το γεγονός ότι χρησιµοποιεί προκαθορισµένα δηµόσια κλειδιά που δε διανέµονται αυτόµατα, αντί για ένα σχήµα διαχείρισης κλειδιών βασισµένο σε πιστοποιητικά. Το πρωτόκολλο αρχίζει µε τον πελάτη να στέλνει µια αίτηση αυθεντικοποίησης στον εξυπηρετητή. Ο εξυπηρετητής, µε τη σειρά του, στέλνει πίσω στον πελάτη το δηµόσιο κλειδί του κεντρικού συστήµατος, που είναι συνήθως κλειδί RSA µήκους 1024 bits, και ένα δηµόσιο κλειδί εξυπηρετητή, που είναι συνήθως κλειδί RSA µήκους 768 bits και αλλάζει κάθε ώρα. Ο σκοπός του κλειδιού κεντρικού συστήµατος είναι να συσχετίσει τη σύνδεση µε το επιθυµητό κεντρικό σύστηµα εξυπηρετητή, ενώ ο
3 . 3 ¶ ƒ ø ∆ √ ∫ √ § § ∞ ∞ ™ º ∞ § ∂ π ∞ ™ ∂ ¶ π ¶ ∂ ¢ √ À ª ∂ ∆∞ º √ ƒ ∞ ™
σκοπός του κλειδιού εξυπηρετητή είναι να κάνει αδύνατη την αποκρυπτογράφηση καταγραµµένης κίνησης, ακόµη και αν σπάσει το κλειδί κεντρικού συστήµατος. Εποµένως, το κλειδί εξυπηρετητή δεν πρέπει ποτέ να σώζεται στο δίσκο. Ο πελάτης τώρα συγκρίνει το κλειδί κεντρικού συστήµατος που έλαβε µε εκείνα τα κλειδιά που είχαν διανεµηθεί και καθοριστεί εκ των προτέρων και που βρίσκονται αποθηκευµένα σε κάποια βάση δεδοµένων του. Φυσιολογικά, ο πελάτης αποδέχεται το κλειδί ενός άγνωστου κεντρικού συστήµατος και το αποθηκεύει στη βάση του για µελλοντική χρήση. Αυτό κάνει τη χρήση του SSH πρακτική στα περισσότερα περιβάλλοντα. Ωστόσο, σε περιβάλλοντα υψηλής ασφάλειας, είναι δυνατόν να διαµορφώσουµε τον πελάτη SSH έτσι ώστε να αρνείται πρόσβαση σε οποιοδήποτε κεντρικό σύστηµα του οποίου το κλειδί δεν υπάρχει ήδη στη βάση κλειδιών του. Αν ο πελάτης αποδεχτεί το κλειδί του κεντρικού συστήµατος, δηµιουργεί ένα κλειδί µήκους 256 bits, το οποίο χρησιµοποιείται ως το κλειδί της συνόδου. Επιπλέον, ο πελάτης επιλέγει έναν αλγόριθµο κρυπτογράφησης απ’ αυτούς που υποστηρίζει ο εξυπηρετητής, συνήθως Blowfish, DES ή 3DES τριπλού κλειδιού σε λειτουργία Chain Block Cipher (CBC). Ο πελάτης συµπληρώνει το κλειδί συνόδου µε τυχαία bytes, το κρυπτογραφεί διπλά, µε τα δηµόσια κλειδιά του κεντρικού συστήµατος και του εξυπηρετητή, και στέλνει το αποτέλεσµα στον εξυπηρετητή. Ο εξυπηρετητής το αποκρυπτογραφεί και παραλαµβάνει το κλειδί συνόδου. Και τα δύο µέρη µπορούν τώρα να χρησιµοποιήσουν το κλειδί συνόδου και να κρυπτογραφήσουν διαφανώς τη σύνδεση. Ο εξυπηρετητής στέλνει µια κρυπτογραφηµένη επιβεβαίωση του γεγονότος αυτού στον πελάτη. Η λήψη της επιβεβαίωσης αυτής σηµαίνει για τον πελάτη ότι ο εξυπηρετητής ανέκτησε επιτυχώς το κλειδί συνόδου, και ότι πρέπει, κατά συνέπεια, να κρατήσει τα ιδιωτικά κλειδιά του. Από τη στιγµή αυτή, ο πελάτης εµπιστεύεται τον εξυπηρετητή ως αυθεντικό και θεωρεί ότι η προστασία ακεραιότητας και η κρυπτογράφηση επιπέδου µεταφοράς λειτουργούν καλώς. Σε µερικές περιπτώσεις είναι δυνατόν να χρειάζεται και αυθεντικοποίηση χρήστη. Η αντίστοιχη ανταλλαγή ξεκινάει από τον πελάτη, που στέλνει µια αίτηση αυθεντικοποίησης στον εξυπηρετητή. Η αίτηση περιλαµβάνει το όνοµα χρήστη που θέλει να συνδεθεί. Ανάλογα µε τη µέθοδο αυθεντικοποίησης, ο διάλογος µεταξύ πελάτη και εξυπηρετητή µπορεί να διαφέρει. Υπάρχουν δύο τέτοιες µέθοδοι: • Στην περίπτωση της αυθεντικοποίησης µε συνθηµατικό, το συνθηµατικό του χρήστη µεταφέρεται µέσω του καναλιού επικοινωνίας που είναι διαφανώς κρυπτογραφηµένο µε SSH. • Στην περίπτωση της αυθεντικοποίησης RSA, ο εξυπηρετητής προκαλεί τον πελά-
89
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
90
τη µε έναν τυχαίο αριθµό, ο οποίος είναι κρυπτογραφηµένος µε το δηµόσιο κλειδί του χρήστη. Στην περίπτωση αυτή, ο εξυπηρετητής πρέπει επίσης να έχει πρόσβαση σε µια βάση προκαθορισµένων και χειροκίνητα διανεµηθέντων δηµόσιων κλειδιών των εγγεγραµµένων χρηστών. Ο πελάτης µπορεί να αποκρυπτογραφήσει την πρόκληση µόνο αν γνωρίζει το ιδιωτικό κλειδί του χρήστη. Εποµένως, ζητάει µια συνθηµατική φράση που απαιτείται προκειµένου να ξεκλειδωθεί προσωρινά το ιδιωτικό κλειδί του χρήστη. Για να αυθεντικοποιηθεί στον εξυπηρετητή, ο πελάτης πρέπει να απαντήσει µε τη σωστή τιµή σύνοψης MD5 της αποκρυπτογραφηµένης πρόκλησης και κάποια επιπλέον δεδοµένα που συσχετίζουν το αποτέλεσµα µε την τρέχουσα σύνοδο. Και στις δύο περιπτώσεις ο εξυπηρετητής πρέπει να απαντήσει µε ένα µήνυµα επιτυχούς ή αποτυχηµένης αυθεντικοποίησης. Αν δεν απαιτείται αυθεντικοποίηση πελάτη, ή αν ο πελάτης µπόρεσε επιτυχώς να αυθεντικοποιηθεί στον εξυπηρετητή, µπορεί τώρα να ζητήσει την παροχή µιας υπηρεσίας. Ειδικότερα, µπορεί να συνδεθεί ασφαλώς µε ένα αποµακρυσµένο σύστηµα (slogin), να εκτελέσει εντολές (ssh), να µεταφέρει αρχεία (scp) κτλλπ. Τα κλειδιά συνόδου µπορούν επίσης να επανανταλλαγούν δυναµικά. Επίσης, υπάρχουν και διάφορα εργαλεία που ο πελάτης και ο εξυπηρετητής µπορούν να χρησιµοποιήσουν για τη διαχείριση του SSH και των σχετικών αρχείων. Η οµάδα εργασίας Secure Shell (SECSH) της IETF, το Σεπτέµβριο του 1996, πρότεινε – σε Internet Draft–– τη διαίρεση του πρωτοκόλλου SSH, όπως το περιγράψαµε εδώ, σε ένα πρωτόκολλο επιπέδου µεταφοράς SSH (SSH transport layer protocol) και σε ένα πρωτόκολλο αυθεντικοποίησης SSH (SSH authentication protocol), που λειτουργεί πάνω από το SSH transport layer protocol. 3.3.3 TÔ ÚˆÙfiÎÔÏÏÔ SSL/TLS
Το πρωτόκολλο TCP παρέχει µια αξιόπιστη ροή bytes µεταξύ δύο κόµβων. Το πρωτόκολλο αυτό είναι προσανατολισµένο σε σύνδεση και έχει κατάσταση, ανιχνεύει απώλειες πακέτων και λήψη πακέτων εκτός σειράς και απορρίπτει επαναλαµβανόµενα δεδοµένα. Το πρωτόκολλο, επίσης, εκτελεί αυθεντικοποίηση οντότητας βασισµένη σε διευθύνσεις, όταν εγκαθιστά σύνοδο µεταξύ δύο κόµβων. Το TCP δεν υποστηρίζει ισχυρή κρυπτογραφική αυθεντικοποίηση οντοτήτων, ακεραιότητα δεδοµένων και εµπιστευτικότητα. Οι υπηρεσίες αυτές εισάχθηκαν στο πρωτόκολλο Secure Socket Layer (SSL), που αναπτύχθηκε από την Netscape, κυρίως για να προστατεύσει την κίνηση στον παγκόσµιο ιστό. Η προδιαγραφή Transport Layer Security (TLS) της IETF είναι σχεδόν ταυτόσηµη µε την έκδοση 3 του SSL και γι’ αυτό το πρωτόκολλο είναι τώρα γνωστό ως SSL/TLS.
3 . 3 ¶ ƒ ø ∆ √ ∫ √ § § ∞ ∞ ™ º ∞ § ∂ π ∞ ™ ∂ ¶ π ¶ ∂ ¢ √ À ª ∂ ∆∞ º √ ƒ ∞ ™
Μέσα στη σειρά πρωτοκόλλων Internet, το SSL βρίσκεται µεταξύ του επιπέδου εφαρµογής και του TCP. Εποµένως, το SSL µπορεί να βασίζεται στις ιδιότητες που εγγυάται το TCP και, για παράδειγµα, δε χρειάζεται να ασχοληθεί µε την αξιόπιστη παράδοση των δεδοµένων. Όπως και το TCP, το SSL έχει κατάσταση και είναι προσανατολισµένο σε σύνδεση. Η κατάσταση συνόδου SSL περιέχει πληροφορίες που απαιτούνται για την εκτέλεση κρυπτογραφικών αλγόριθµων, όπως ταυτότητα συνόδου, καθορισµός κρυπτογραφικού συστήµατος, κοινά µυστικά κλειδιά, πιστοποιητικά, τυχαίες τιµές που χρησιµοποιούν πρωτόκολλα, όπως το πρωτόκολλο Diffie–Hellman, κ.λπ. Για να εξυπηρετήσει την επιβάρυνση που προκαλείται από τη διαχείριση κλειδιών, µια σύνοδος SSL µπορεί να περιέχει πολλαπλές συνδέσεις. Το χαρακτηριστικό παράδειγµα είναι µια σύνοδος HTTP µεταξύ ενός πελάτη και ενός εξυπηρετητή, όπου δηµιουργείται µια καινούργια σύνδεση για τη µεταφορά ενός σύνθετου εγγράφου. Μόνο ένα υποσύνολο της πληροφορίας κατάστασης χρειάζεται να αλλάξει για κάθε σύνδεση. Το πρωτόκολλο SSL υποδιαιρείται σε δύο υπο–πρωτόκολλα: • Το πρωτόκολλο εγγραφής SSL και • Το πρωτόκολλο χειραψίας SSL. ∆√ ¶ƒø∆√∫√§§√ ∂°°ƒ∞º∏™ SSL
Το πρωτόκολλο εγγραφής SSL δέχεται blocks δεδοµένων από ένα πρωτόκολλο ανώτερου επιπέδου, τα τεµαχίζει σε µη κρυπτογραφηµένες εγγραφές SSL και µετά εφαρµόζει τον κρυπτογραφικό µετασχηµατισµό που καθορίζεται από την παράµετρο cipher spec στην τρέχουσα κατάσταση συνόδου. Βασικά, το πρωτόκολλο αυτό παρέχει µια υπηρεσία παρόµοια µε αυτή του IPsec, η δε οµοιότητα ανάµεσα στη σύναψη ασφάλειας του IPsec και την κατάσταση SSL δεν είναι καθόλου τυχαία. ∆√ ¶ƒø∆√∫√§§√ Ã∂πƒ∞æπ∞™ SSL
Το πρωτόκολλο χειραψίας SSL είναι το βασικό πρωτόκολλο που βρίσκεται πάνω από το πρωτόκολλο εγγραφής SSL. Μηνύµατα χειραψίας SSL παρέχονται στο πρωτόκολλο εγγραφής SSL, όπου εσωκλείονται µέσα σε µία ή περισσότερες εγγραφές SSL, οι οποίες υφίστανται επεξεργασία και µεταδίδονται όπως καθορίζει η µέθοδος συµπίεσης και οι προδιαγραφές κρυπτογράφησης των τρεχουσών καταστάσεων συνόδου και σύνδεσης. Ο σκοπός του πρωτοκόλλου χειραψίας SSL είναι να µπορέσουν ο πελάτης και ο εξυπηρετητής να συµφωνήσουν για τα πρωτόκολλα που θα χρησιµοποιήσουν στην επικοινωνία τους, να επιλέξουν τη µέθοδο συµπίεσης και τις
91
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
92
προδιαγραφές κρυπτογράφησης, πιθανόν να αυθεντικοποιηθούν αµοιβαία, και να δηµιουργήσουν ένα βασικό µυστικό, από το οποίο είναι δυνατόν να παραχθούν τα διάφορα κλειδιά συνόδων για κρυπτογράφηση και αυθεντικοποίηση µηνυµάτων. Περιληπτικά, η λειτουργία του πρωτοκόλλου φαίνεται στο Σχήµα 3.9.
Πελάτης
Eξυπηρετητής client_hello
server_hello
server_key_exchange certificate_request server_hello_done
certificate client_key_exchange certificate_verify
Kαθιέρωση δυνατοτήτων ασφάλειας, συµπε- ριλαµβανοµένης της έκδοσης του πρωτοκόλ- λου, της ταυτότητας της συνόδου της οµά- δας πρωτοκόλλων κρυπτογράφησης, της µεθόδου συµπίεσης και των αρχικών τυχαίων αριθµών
O εξυπηρετητής µπορεί να στείλει πιστο- ποιητικό, ανταλλαγή κλειδιού και αίτηση πιστοποιητικού. O εξυπηρετητής σηµατοδο- τεί το τέλος της φάσης µηνυµάτων χαιρετι- σµού.
O πελάτης στέλνει το πιστοποιητικό, αν αυτό έχει ζητηθεί. O πελάτης στέλνει ανταλλαγή κλειδιού. O πελάτης µπορεί να στείλει επα- λήθευση κλειδιού.
change_cipher_spec finished
Aλλαγή οµάδας πρωτοκόλλων κρυπτογρά- φησης και τέλος πρωτοκόλλου χειραψίας.
change_cipher_spec finished ™¯‹Ì· 3.9
Λειτουργία πρωτοκόλλου χειραψίας SSL. Oι διακεκοµµένες γραµµές υποδηλώνουν προαιρετικά µηνύµατα
3 . 3 ¶ ƒ ø ∆ √ ∫ √ § § ∞ ∞ ™ º ∞ § ∂ π ∞ ™ ∂ ¶ π ¶ ∂ ¢ √ À ª ∂ ∆∞ º √ ƒ ∞ ™
93
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.8 Περιγράψτε τα βήµατα λειτουργίας του πρωτοκόλλου SSH χωρίς αυθεντικοποίηση χρήστη.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.9 Περιγράψτε τους δύο εναλλακτικούς τρόπους αυθεντικοποίησης χρήστη στο πρωτόκολλο SSH.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.10 Περιγράψτε τη λειτουργία του πρωτοκόλλου εγγραφής SSL.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 3.11 Περιγράψτε τη λειτουργία του πρωτοκόλλου χειραψίας SSL.
¢Ú·ÛÙËÚÈfiÙËÙ· 3.6 Εξηγήστε πώς το πρωτόκολλο SSL/TLS αντιµετωπίζει τις παρακάτω κατηγορίες επιθέσεων: 1. Κρυπταναλυτική επίθεση εξαντλητικής δοκιµής (Brute–Force Cryptanalytic Attack). Εξαντλητικός έλεγχος του χώρου κλειδιών για συµβατικό αλγόριθµο κρυπτογράφησης. 2. Επίθεση λεξικού γνωστού µη κρυπτογραφηµένου κειµένου (Known Plaintext Dictionary Attack). Πολλά µηνύµατα θα περιέχουν προβλέψιµο κείµενο, όπως, π.χ., την εντολή HTTP GET. Ο επιτιθέµενος κατασκευάζει ένα λεξικό που περιέχει κάθε πιθανή κρυπτογραφηµένη µορφή του γνωστού µη κρυπτογραφηµένου κειµένου. Όταν υποκλαπεί ένα κρυπτογραφηµένο µήνυµα, ο επιτιθέµενος παίρνει το τµήµα εκείνο που περιέχει την κρυπτογραφηµένη µορφή του γνωστού κειµένου και ψάχνει να τη βρει στο λεξικό. Η µορφή αυτή θα ταιριάζει µε την εγγραφή που δηµιουργήθηκε χρησιµοποιώντας το ίδιο µυστικό κλειδί. Αν υπάρχουν περισσότερες από µια εγγραφές που ταιριάζουν, µπορούν να δοκιµαστούν
KEºA§AIO 3: AƒÃπ∆∂∫∆√¡π∫∏ A™º∞§∂π∞™ INTERNET
94
όλες. Η επίθεση αυτή είναι ιδιαίτερα επιτυχής εναντίον συστηµάτων που χρησιµοποιούν µικρό µήκος κλειδιού (π.χ. 40 bits). 3. Επίθεση επανάληψης (Replay Attack). Κάποιο µήνυµα χειραψίας SSL επαναλαµβάνεται. 4. Επίθεση ενδιαµέσου (Man–in–the–middle Αttack). Ο επιτιθέµενος παρεµβάλλεται στην επικοινωνία κατά την ανταλλαγή κλειδιών, προσποιούµενος στον εξυπηρετητή ότι είναι ο πελάτης και αντιστρόφως. 5. Υποκλοπή συνθηµατικού (Password Sniffing). Υποκλοπή συνθηµατικού που µεταδίδεται κατά τη διάρκεια µιας σύνδεσης. 6. Παραποίηση διευθύνσεων ΙΡ (IP Spoofing). Πλαστογράφηση της διεύθυνσης ΙΡ προκειµένου να πειστεί ένα σύστηµα να δεχτεί πλαστά δεδοµένα. 7. Πειρατεία ΙΡ (IP Hijacking). Μια ενεργή και αυθεντικοποιηµένη σύνδεση µεταξύ δύο συστηµάτων διακόπτεται από τον επιτιθέµενο, ο οποίος παίρνει τη θέση ενός από τα δύο µέρη. 8. Κατακλυσµός SYN (SYN Flooding). Ο επιτιθέµενος στέλνει µηνύµατα TCP SYN για να ζητήσει σύνδεση, αλλά δεν απαντάει στο τελικό µήνυµα, ώστε να αποκατασταθεί πλήρως η σύνδεση. Το υποσύστηµα TCP που δέχεται την επίθεση συνήθως αφήνει τη µισάνοιχτη σύνδεση ανοικτή για λίγα λεπτά. Αν αυτό γίνει επανειληµµένα, το υποσύστηµα µπορεί να σταµατήσει να προσφέρει υπηρεσίες.
™‡ÓÔ„Ë Στο κεφάλαιο αυτό ασχοληθήκαµε µε την αρχιτεκτονική ασφάλειας των δικτύων που στηρίζονται στην οικογένεια πρωτοκόλλων TCP/IP, δηλαδή σε δίκτυα που ακολουθούν το µοντέλο του Internet. Αφού παρουσιάσαµε το µοντέλο αυτό, που αποτελείται από τέσσερα µόνο επίπεδα (σε αντιδιαστολή µε τα επτά του µοντέλου OSI/ISO), περιγράψαµε αναλυτικά τα δύο βασικά πρωτόκολλα του µοντέλου, δηλαδή τα πρωτόκολλα TCP και IP, όπως και ένα ακόµη πρωτόκολλο επιπέδου µεταφοράς, το πρωτόκολλο UDP. Στη συνέχεια στρέψαµε την προσοχή µας στη λεπτοµερέστερη εξέταση της αρχιτεκτονικής ασφάλειας του µοντέλου στο επίπεδο Internet και συζητήσαµε διεξοδικά τα πρωτόκολλα ασφάλειας IPSP (και τις συνιστώσες του ΑHP και ESP) και IKMP. Τέλος, συζητήσαµε αναλυτικά και την αρχιτεκτονική ασφάλειας στο επίπεδο µεταφοράς και περιγράψαµε τα πρωτόκολλα SSH και SSL/TLS.
B I B § I O ° PA º I A
BÈ‚ÏÈÔÁÚ·Ê›·
1. Garfinkel S. & Spafford G., Practical Unix and Internet Security, O’Reilly, 1996. 2. Gollmann D., Computer Security, J. Wiley & Sons, 1999. 3. Oppliger R., Internet and Intranet Security, Artech House, 1998. 4. Stallings W., Cryptography and Network Security. Principles and Practice, Prentice–Hall Inc., 1999. 5. R. Oppliger, Internet and Intranet Security, Artech House, 1998. 6. D. Gollmann, Computer Security, J. Wiley & Sons, 1999. 7. W. Stallings, Cryptography and Network Security. Principles and Practice, Prentice–Hall Inc., 1999 8. S. Garfinkel & G. Spafford, Practical Unix and Internet Security, O’Reilly, 1996.
95
∫
AÛÊ¿ÏÂÈ· ÛÙÔ E›Â‰Ô EÊ·ÚÌÔÁ‹˜ ™ÎÔfi˜
∂
4 º
Στο κεφάλαιο αυτό θα γνωρίσουµε ασφαλή πρωτόκολλα του επιπέδου εφαρµογής.
¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù· Όταν θα έχετε τελειώσει τη µελέτη του κεφαλαίου αυτού, θα µπορείτε να: • Περιγράψετε τρεις λύσεις για την υλοποίηση ασφαλούς telnet • Περιγράψετε τα συστήµατα ασφαλούς ηλεκτρονικού ταχυδροµείου ΡΕΜ, PGP και S/MIME • Περιγράψετε το πρωτόκολλο SHTTP και την αρχιτεκτονική επέκτασης ασφάλειας • Αναφέρετε τρεις τεχνικές εξασφάλισης κινητού κώδικα • Περιγράψετε τα έξι επίπεδα ασφάλειας της γλώσσας Java • Αναφέρετε τρεις τεχνικές προστασίας της ανωνυµίας χρηστών WWW • Περιγράψετε τρεις τεχνικές προστασίας πνευµατικής ιδιοκτησίας • Περιγράψετε τη λειτουργία συστηµάτων ηλεκτρονικών συναλλαγών • Περιγράψετε τα πρωτόκολλα iKP • Περιγράψετε το πρωτόκολλο SET • Αναφέρετε τις υπηρεσίες ασφάλειας που παρέχει το EDIFACT, τη δοµή ασφάλειας EDIFACT και το µήνυµα AUTACK • Περιγράψετε το πρωτόκολλο SNMP και τις υπηρεσίες ασφάλειάς του
ŒÓÓÔȘ ÎÏÂȉȿ • προσπέλαση από απόσταση, • ηλεκτρονικό ταχυδροµείο, • παγκόσµιος ιστός, ηλεκτρονικές πληρωµές, • EDI, • διαχείριση δικτύων, κρυπτογραφία
∞
§
∞
π
√
98
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Στο Κεφάλαιο 2 συζητήσαµε την παροχή υπηρεσιών ασφάλειας στα διάφορα επίπεδα του µοντέλου OSI. Η επιλογή της παροχής υπηρεσιών ασφάλειας στο επίπεδο εφαρµογής είναι ασφαλώς η πιο παρεµβατική απ’ όλες. Είναι όµως και η πιο ευέλικτη, επειδή η έκταση και ο βαθµός προστασίας µπορούν να σχεδιαστούν έτσι ώστε να καλύπτουν ακριβώς τις ανάγκες τής κάθε εφαρµογής. Από τη στιγµή που θα επιλέξουµε την παροχή υπηρεσιών ασφάλειας στο επίπεδο εφαρµογής, έχουµε δύο εναλλακτικές λύσεις: ή θα ενσωµατώσουµε τις υπηρεσίες αυτές µέσα σε κάθε πρωτόκολλο επιπέδου εφαρµογής, δηµιουργώντας ένα ασφαλές πρωτόκολλο, ή θα αναπτύξουµε ένα γενικευµένο σύστηµα ασφάλειας, που θα µπορεί να χρησιµοποιηθεί για να προσφέρει τις υπηρεσίες ασφάλειας σε οποιαδήποτε εφαρµογή. Τέτοια γενικευµένα συστήµατα ασφάλειας είναι τα συστήµατα κατανεµηµένης αυθεντικοποίησης και διανοµής κλειδιών, τα ηλεκτρονικά αναχώµατα και τα συστήµατα ανίχνευσης εισβολής. Στην πρώτη περίπτωση είναι απαραίτητο να τροποποιηθούν τα πρωτόκολλα, ώστε να συµπεριλάβουν τα χαρακτηριστικά ασφάλειας, ενώ στη δεύτερη τροποποιείται η σύνταξη και η σηµασιολογία των µηνυµάτων, ενώ τα βασικά πρωτόκολλα παραµένουν αναλλοίωτα. Στο κεφάλαιο αυτό θα παρουσιάσουµε την πρώτη λύση, ενώ θα αφήσουµε τη δεύτερη για το επόµενο κεφάλαιο. Είναι γεγονός ότι η ενσωµάτωση υπηρεσιών ασφάλειας σε ένα σύστηµα, ή ακόµη και σε ένα πρωτόκολλο, επιβαρύνει την απόδοσή του. Είναι φυσικό, λοιπόν, να δηµιουργείται το ερώτηµα «Πότε προτιµούµε να θυσιάσουµε την ασφάλεια σε βάρος της απόδοσης, πότε όχι και πότε δε χρειάζεται να διαλέξουµε;». Όµως, η εποχή που η ασφάλεια στα πληροφοριακά συστήµατα αποτελούσε εκ των υστέρων προσθήκη έχει περάσει. Σήµερα, όλα τα πληροφοριακά συστήµατα σχεδιάζονται µε βάση προδιαγραφές που περιλαµβάνουν και τις απαιτήσεις ασφάλειάς τους. Η απάντηση, λοιπόν, στο παραπάνω ερώτηµα απαντάται κατά τη φάση προδιαγραφής του συστήµατος και σε συνάρτηση µε πολλές ακόµη (πέρα από την απόδοση) παραµέτρους. Το κεφάλαιο είναι οργανωµένο σε έξι ενότητες, καθεµιά από τις οποίες παρουσιάζει µια οµάδα οµοειδών ασφαλών πρωτοκόλλων. Έτσι, η Ενότητα 4.1 αφορά πρωτόκολλα ασφαλούς προσπέλασης τερµατικού από απόσταση, η Ενότητα 4.2 πραγµατεύεται πρωτόκολλα ασφαλούς ηλεκτρονικού ταχυδροµείου, η Ενότητα 4.3 ασχολείται µε πρωτόκολλα ασφαλών συναλλαγών WWW και µε συναφή θέµατα, η Ενότητα 4.4 παρουσιάζει συστήµατα ηλεκτρονικών πληρωµών, η Ενότητα 4.5 συζητάει τις ασφαλείς συναλλαγές EDI και, τέλος, η Ενότητα 4.6 περιγράφει συστήµατα ασφαλούς διαχείρισης δικτύων. Θα έχετε –ίσως– ήδη παρατηρήσει ότι η έκταση του κεφαλαίου αυτού είναι ασυνήθιστα µεγάλη. Θα έχετε όµως επίσης ήδη αντιληφθεί ότι τα θέµατα που προσεγγίζουµε στο κεφάλαιο είναι πολύ διαφορετικά µεταξύ τους, τόσο διαφορετικά που θα µπορούσαµε να πούµε ότι ο µόνος συνδετικός τους κρίκος είναι ότι όλα αναφέρονται στο
E I ™ A ° ø ° I K E ™ ¶ A PAT H P H ™ E I ™
επίπεδο εφαρµογής. Έτσι, λοιπόν, δεν είναι καθόλου απαραίτητο να µελετήσετε όλο το κεφάλαιο µε µιας. Αντίθετα, θα συνιστούσα η µελέτη σας να γίνει ανά ενότητα. Σχόλιο Μελέτης: Στο κεφάλαιο θα αναφερθούµε πολλές φορές σε κρυπτογραφικούς αλγόριθµους. Αν δεν έχετε πρόσφατα ασχοληθεί µε θέµατα κρυπτογραφίας, καλό θα ήταν να ξεσκονίσετε λίγο τις γνώσεις σας σ’ αυτά. Για το σκοπό αυτό µπορείτε να αναφερθείτε στο βιβλίο του ΕΑΠ µε τίτλο «Κρυπτογραφία» του Βασίλη Ζορκάδη.
99
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
100
4.1 Telnet
Στο προηγούµενο κεφάλαιο συζητήσαµε το πρωτόκολλο SSH, το οποίο χρησιµοποιείται για την υλοποίηση του προγράµµατος slogin, που µπορεί να χρησιµοποιηθεί αντί για τα προγράµµατα rlogin και telnet. Οµοίως, τα πρωτόκολλα SSL και TLS µπορούν να χρησιµοποιηθούν για την εγκατάσταση µιας σύνδεσης TCP/IP που να παρέχει υπηρεσίες αυθεντικοποίησης και κρυπτογράφησης µεταξύ ενός πελάτη και ενός εξυπηρετητή. Η σύνδεση αυτή µπορεί µετά να χρησιµοποιηθεί για την ασφαλή µετάδοση κίνησης µέσω πρωτοκόλλου telnet. Συνεπώς, η λειτουργία telnet πάνω από SSL ή TLS είναι µια άλλη λύση για την ασφαλή προσπέλαση τερµατικού από απόσταση. Τέλος, σήµερα υπάρχουν διαθέσιµα διάφορα ασφαλή πρωτόκολλα telnet και τα αντίστοιχα πακέτα λογισµικού. Ανάµεσα σ’ αυτά που διατίθενται προς πώληση, αναφέρουµε το S/RLogin, που είναι ένα πακέτο λογισµικού που υλοποιεί αυθεντικοποιηµένο και κρυπτογραφηµένο telnet. Υπάρχουν όµως και αντίστοιχα πακέτα που διατίθενται δωρεάν µέσω του Internet. Ένα παράδειγµα τέτοιου λογισµικού είναι ένα πακέτο που αναπτύχθηκε από τον Steve Bellovin και τον Matt Blaze και αντικαθιστά το λογισµικό telnet σε συστήµατα 4.4BSD Unix. Το πακέτο αυτό χρησιµοποιεί ανταλλαγή κλειδιών Diffie–Hellman, το πρωτόκολλο Interlock για την αποφυγή επιθέσεων ενδιαµέσου και 3DES για την κρυπτογράφηση των δεδοµένων. Κανένα όµως απ’ αυτά τα πακέτα δεν κατάφερε να διαδοθεί ευρέως στο Internet. 4.1.1 Secure RPC Authentication
To πακέτο λογισµικού Secure RPC Authentication (SRA) βασίζεται στην ασφαλή υλοποίηση της RPC από τη Sun Microsystems και προστατεύει τη διαδικασία χειραψίας κατά την εγκατάσταση συνδέσεων telnet και FTP από επιθέσεις υποκλοπής συνθηµατικού. Όταν ένας πελάτης που χρησιµοποιεί SRA συνδεθεί σε εξυπηρετητή Telnet ή FTP που χρησιµοποιεί SRA, εκτελείται µια ανταλλαγή κλειδιών Diffie–Hellman για να συµφωνηθεί ένα κλειδί συνόδου. Το κλειδί αυτό στη συνέχεια χρησιµοποιείται για να κρυπτογραφήσει τις πληροφορίες αυθεντικοποίησης του χρήστη, που συνήθως είναι το όνοµα χρήστη και το αντίστοιχο συνθηµατικό. ∆υστυχώς, η υπόλοιπη κίνηση telnet ή FTP παραµένει µη κρυπτογραφηµένη. Το SRA έχει δύο βασικά προβλήµατα: • Το πρώτο πρόβληµα είναι ότι το µήκος του υπολοίπου που χρησιµοποιεί η υλοποίηση ασφαλούς RPC της Sun Microsystems για την ανταλλαγή κλειδιών Diffie–Hellman είναι µόνο 192 bits, δηλαδή πολύ µικρό για προστασία από κρυπτανάλυση. • Το δεύτερο πρόβληµα είναι ότι η ασφαλής RPC και, κατά συνέπεια, και το SRA είναι ευάλωτα σε επιθέσεις ενδιαµέσου.
4.1 TELNET
Πρόσφατα, οι κατασκευαστές του SRA ανέπτυξαν το πακέτο NATAS, το οποίο χρησιµοποιεί την κρυπτογραφική βιβλιοθήκη RSAREF της RSA αντί της υλοποίησης ασφαλούς RPC της Sun Microsystems και ενισχύει την ανταλλαγή κλειδιών Diffie–Hellman µε ένα βήµα αυθεντικοποίησης, ώστε να αποκρούσει την επίθεση ενδιαµέσου. 4.1.2 Secure Telnet
Το πακέτο λογισµικού Secure Telnet (STEL) είναι ακόµη ένα πακέτο ασφαλούς Telnet για συστήµατα Unix. Ο σκοπός του είναι να παρέχει στους χρήστες του ασφαλή προσπέλαση τερµατικού από απόσταση, λειτουργικά όµοια µε το rlogin και το telnet. Παρά όµως τη λειτουργική οµοιότητα, υπάρχουν δύο βασικές διαφορές: Η πρώτη είναι ότι οι µηχανισµοί αυθεντικοποίησης που χρησιµοποιεί το STEL είναι πολύ ισχυρότεροι απ’ αυτούς που χρησιµοποιούν τα rlogin και telnet. Η δεύτερη είναι ότι, όταν χρησιµοποιείται το STEL, όλη η κίνηση δεδοµένων µεταξύ πελάτη και εξυπηρετητή είναι διαφανώς κρυπτογραφηµένη. Το λογισµικό πελάτη stel προορίζεται για χρήση απευθείας από τους χρήστες, ενώ το λογισµικό εξυπηρετητή steld µπορεί να τρέξει ως daemon από τον super–user ή να ενεργοποιηθεί αυτόµατα από τον inetd. Όπως και τα SRA και NATAS, το STEL χρησιµοποιεί ανταλλαγή κλειδιών Diffie–Hellman για να συµφωνηθεί ένα κλειδί συνόδου. Για την αποφυγή της επίθεσης ενδιαµέσου, το STEL επίσης χρησιµοποιεί το πρωτόκολλο Interlock. Επιπλέον, το STEL υποστηρίζει τρεις µεθόδους αυθεντικοποίησης του πελάτη, που σε σειρά φθίνουσας παρεχόµενης ασφάλειας είναι οι SecurID, S/Key και τα συνηθισµένα συνθηµατικά Unix. Αν και η µέθοδος SecurID θεωρείται πολύ ασφαλής, ωστόσο δεν είναι πολύ διαδεδοµένη στο Internet. Για το λόγο αυτό η χρήση της δεν είναι υποχρεωτική στο STEL. Το STEL χρησιµοποιεί µια τροποποιηµένη µορφή της µεθόδου S/Key για να αποκρούσει επιθέσεις λεξικού. Όσον αφορά τα συνηθισµένα συνθηµατικά Unix, πρέπει να θυµίσουµε ότι η επικοινωνία πελάτη–εξυπηρετητή είναι κρυπτογραφηµένη, παρέχοντας έτσι ικανοποιητική ασφάλεια στο συνθηµατικό που µεταδίδεται. Το επίπεδο ασφάλειας που παρέχεται έτσι είναι συγκρίσιµο µε εκείνο που παρέχει το SSL. Μετά την ανταλλαγή Diffie–Hellman και την αυθεντικοποίηση πελάτη, η κίνηση κρυπτογραφείται µε τον καθορισµένο αλγόριθµο κρυπτογράφησης και το κλειδί συνόδου. Ο προκαθορισµένος αλγόριθµος είναι ο DES, αλλά υπάρχει επίσης η δυνατότητα χρήσης 3DES ή IDEA.
101
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
102
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.1 Αντιστοιχίστε τις ενέργειες της αριστερής στήλης µε τα πακέτα ή τις λύσεις της δεξιάς στήλης: 1. Ανταλλαγή κλειδιών Diffie–Hellman 2. Κρυπτογράφηση των πληροφοριών αυθεντικοποίησης 3. Κρυπτογράφηση όλης της κίνησης µέσω πρωτοκόλλου telnet
1. SRA 2. NATAS 3. STEL 4. telnet πάνω από SSL
4.2 HÏÂÎÙÚÔÓÈÎfi Ù·¯˘‰ÚÔÌ›Ô
Η βάση του ηλεκτρονικού ταχυδροµείου στο Internet είναι το πρωτόκολλο Simple Mail Transfer Protocol (SMTP), η σύνταξη κειµένου και µηνυµάτων ASCII και οι επεκτάσεις Multipurpose Internet Mail Extensions (MIME). Το βασικό πρόβληµα που αντιµετωπίζουν οι προδιαγραφές ΜΙΜΕ είναι ότι τα µηνύµατα του ηλεκτρονικού ταχυδροµείου συνήθως αποτελούνται από κείµενο ASCII 7 bits, ενώ οι εφαρµογές πολυµέσων παράγουν ακολουθίες δεδοµένων που αποτελούνται από ακανόνιστες σειρές µήκους 8 bits. Πρέπει, λοιπόν, να υπάρξει κάποιος τρόπος να µετατραπούν οι ακολουθίες αυτές σε εκτυπώσιµους χαρακτήρες, που µπορούν να περάσουν ανεµπόδιστα µέσα από πακέτα λογισµικού, όπως είναι, για παράδειγµα, οι χειριστές ηλεκτρονικού ταχυδροµείου, χωρίς να εκληφθούν ως χαρακτήρες ελέγχου ή ως απαγορευµένοι χαρακτήρες. Μια προφανής συνέπεια αυτής της κωδικοποίησης (ή φιλτραρίσµατος) είναι η αύξηση του µήκους του µηνύµατος. Προϊόντα που είναι σύµφωνα µε την προδιαγραφή ΜΙΜΕ επιτρέπουν την αποστολή όχι µόνο κειµένου ASCII µήκους 7 bits, αλλά και ακολουθιών δεδοµένων µεγαλύτερου µήκους, παρέχοντας συµβάσεις για την ενσωµάτωση στο µήνυµα κάποιας κωδικοποίησης 8 bits. Ακριβέστερα, η προδιαγραφή ΜΙΜΕ παρέχει µια γενική δοµή για τον τύπο περιεχοµένου ενός µηνύµατος ηλεκτρονικού ταχυδροµείου και επιτρέπει επεκτάσεις για νέους τύπους περιεχοµένων. Για παράδειγµα, η προδιαγραφή ΜΙΜΕ µπορεί να χρησιµοποιηθεί για να εσωκλείσει αντικείµενα EDI σε µηνύµατα ηλεκτρονικού ταχυδροµείου. Ούτε το SMTP ούτε η αντίστοιχη σύνταξη µηνύµατος υποστηρίζουν υπηρεσίες ασφάλειας. Είναι γενικά εύκολο να αλλάξει το περιεχόµενο ενός µηνύµατος ή να πλαστογραφηθεί είτε ο αποστολέας είτε οι πληροφορίες δροµολόγησης του µηνύµατος. Επίσης, η υποκλοπή µηνυµάτων ηλεκτρονικού ταχυδροµείου από δηµόσια
4 . 2 H § ∂ ∫ ∆ ƒ √ ¡ π ∫ √ ∆∞ Ã À ¢ ƒ √ ª ∂ π √
δίκτυα, όπως το Internet, είναι κάτι πολύ συνηθισµένο και εύκολο να γίνει από τον οποιονδήποτε. Τα ίδια κεντρικά συστήµατα και οι δροµολογητές που διακινούν επιτυχώς µηνύµατα ηλεκτρονικού ταχυδροµείου µπορούν επίσης να στραφούν εναντίον των χρηστών τους, εκτελώντας µαζικές έρευνες και ταξινοµήσεις. Η τεχνική της ανάλυσης κίνησης µπορεί να συγκεντρώσει τροµακτικά ποσά πληροφορίας για χρήστες και οργανισµούς, ακόµη και χωρίς ανθρώπινη παρέµβαση. Επιπλέον, οποιοσδήποτε µπορεί να υποκλέψει ένα µήνυµα ηλεκτρονικού ταχυδροµείου µπορεί επίσης να επιτεθεί ενεργά και να το τροποποιήσει κατά βούληση. Ακόµη και µικρές αλλαγές, όπως η αλλαγή µιας ηµεροµηνίας ή η µετακίνηση µιας δεκαδικής τελείας, µπορούν µερικές φορές να έχουν καταστροφικές συνέπειες. Είναι κοινά αποδεκτό ότι η ευρεία χρήση του ηλεκτρονικού ταχυδροµείου για εµπορικές συναλλαγές θα απαιτήσει την παροχή υπηρεσιών ασφάλειας, όπως αυτές που αναφέρονται στην αρχιτεκτονική ασφάλειας OSI. Είναι, επίσης, κοινά αποδεκτό ότι η τεχνική που θα επιτρέψει την παροχή αυτών των υπηρεσιών είναι ο ψηφιακός φάκελος. Αυτό βασικά σηµαίνει ότι ο αποστολέας ενός µηνύµατος ηλεκτρονικού ταχυδροµείου επιλέγει τυχαία ένα κλειδί συναλλαγής, κρυπτογραφεί όλο το µήνυµα µ’ αυτό το κλειδί και επισυνάπτει στο µήνυµα το κλειδί, κρυπτογραφηµένο µε το δηµόσιο κλειδί του παραλήπτη. Ο παραλήπτης χρησιµοποιεί το ιδιωτικό του κλειδί για να αποκρυπτογραφήσει το κλειδί συναλλαγής και µετά χρησιµοποιεί το κλειδί αυτό για να αποκρυπτογραφήσει το µήνυµα. Αν το µήνυµα προορίζεται για περισσότερους από έναν παραλήπτες, ο αποστολέας πρέπει να επαναλάβει τη διαδικασία κρυπτογράφησης του κλειδιού συναλλαγής, δηµιουργώντας ένα παράρτηµα για κάθε παραλήπτη. Το παράρτηµα αυτό περιέχει το κλειδί συναλλαγής κρυπτογραφηµένο µε το δηµόσιο κλειδί του παραλήπτη. Επιπλέον, ο αποστολέας µπορεί επίσης να χρησιµοποιήσει το ιδιωτικό του κλειδί για να υπογράψει ψηφιακά το µήνυµα. Στην περίπτωση αυτή ο παραλήπτης χρησιµοποιεί το δηµόσιο κλειδί του αποστολέα για να επαληθεύσει την ψηφιακή του υπογραφή. Κατά τα τελευταία χρόνια, τρία βασικά σχήµατα ασφάλειας ηλεκτρονικού ταχυδροµείου έχουν εµφανιστεί στο Internet: το Privacy Enhanced Mail (PEM), το Pretty Good Privacy (PGP) και το ασφαλές ΜΙΜΕ (S/MIME). Στη συνέχεια θα εξετάσουµε σύντοµα τα σχήµατα αυτά. Σηµειώστε ότι και τα τρία σχήµατα χρησιµοποιούν την τεχνική του ψηφιακού φακέλου και ότι οι οµοιότητές τους είναι πολύ περισσότερες από τις διαφορές τους, γεγονός που, το 1996, οδήγησε το Internet Mail Consortium στην απόφαση να προσπαθήσει να τα οµογενοποιήσει.
103
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
104
4.2.1 Privacy Enhanced Mail
Το 1985 το Συµβούλιο Αρχιτεκτονικής του Internet (Internet Architecture Board – IAB) συγκρότησε µια οµάδα εργασίας για την ανάπτυξη ενός πρωτοκόλλου για την ασφάλεια του ηλεκτρονικού ταχυδροµείου. Η οµάδα δηµοσίευσε τις προδιαγραφές της µε τη µορφή 4 RFCs (1421, 1422, 1423, 1424) το 1993. Σύµφωνα µ’ αυτές, το σχήµα ΡΕΜ υποστηρίζει τις υπηρεσίες αυθεντικοποίησης µηνύµατος, ακεραιότητας δεδοµένων και µη αµφισβήτησης αποστολής, χρησιµοποιώντας µια Τιµή Ελέγχου Ακεραιότητας Μηνύµατος (Message Integrity Check – MIC). Επιπλέον, είναι δυνατή η παροχή υπηρεσιών εµπιστευτικότητας, µέσω κρυπτογράφησης του όλου µηνύµατος. Σηµειώστε ότι το ΡΕΜ δεν παρέχει υπηρεσίες ελέγχου πρόσβασης και µη αµφισβήτησης λήψης. Οι προδιαγραφές ΡΕΜ διαχωρίζουν τρεις τύπους µηνυµάτων: • Μηνύµατα MIC–CLEAR, που περιέχουν µια MIC και, κατά συνέπεια, υποστηρίζουν τις υπηρεσίες αυθεντικοποίησης µηνύµατος, ακεραιότητας δεδοµένων και µη αµφισβήτησης προέλευσης. Ωστόσο, δεν υποστηρίζουν υπηρεσίες εµπιστευτικότητας µηνύµατος και κωδικοποίησης µετάδοσης. Επειδή το βήµα της κρυπτογράφησης παραλείπεται, τέτοια µηνύµατα µπορούν να ληφθούν και από χρήστες που δεν υποστηρίζουν το ΡΕΜ, χωρίς βέβαια αυτοί να µπορούν να επαληθεύσουν την αυθεντικότητα και ακεραιότητά τους. • Μηνύµατα MIC–ONLY, που υποστηρίζουν τις υπηρεσίες ασφάλειας που υποστηρίζουν και τα µηνύµατα MIC–CLEAR, επιπλέον δε και κωδικοποίηση µετάδοσης. • Τέλος, µηνύµατα ENCRYPTED, που υποστηρίζουν τις υπηρεσίες ασφάλειας που υποστηρίζουν και τα µηνύµατα MIC–ONLY, επιπλέον δε και υπηρεσίες εµπιστευτικότητας δεδοµένων. Κάθε µήνυµα ΡΕΜ αποτελείται από δύο βασικά στοιχεία: την επικεφαλίδα και το τµήµα κειµένου. Η επικεφαλίδα περιέχει πληροφορίες που είναι απαραίτητες στον παραλήπτη προκειµένου να ερµηνεύσει και επαληθεύσει το µήνυµα. Αυτές περιλαµβάνουν πληροφορίες σχετικά µε τους αλγόριθµους που χρησιµοποιούνται, πληροφορίες MIC και πιστοποιητικά. Το τµήµα κειµένου περιέχει το µήνυµα σε κρυπτογραφηµένη και κωδικοποιηµένη µορφή. Συνεπώς, η επεξεργασία µηνυµάτων ΡΕΜ ακολουθεί τα εξής τέσσερα στάδια: • Το στάδιο κανονικοποίησης, κατά το οποίο ο αποστολέας µετατρέπει το µήνυµα σε µια κανονική µορφή, ανεξάρτητη από το λειτουργικό σύστηµα που χρησιµοποιείται. • Το στάδιο ψηφιακής υπογραφής, κατά το οποίο ο αποστολέας υπολογίζει και υπο-
4 . 2 H § ∂ ∫ ∆ ƒ √ ¡ π ∫ √ ∆∞ Ã À ¢ ƒ √ ª ∂ π √
γράφει ψηφιακά µια MIC για να αποκρούσει επιθέσεις εναντίον της αυθεντικότητας και της ακεραιότητας του µηνύµατος. Οι αλγόριθµοι MD2 και MD5, καθώς και το σχήµα RSA χρησιµοποιούνται για το σκοπό αυτό. Για να γίνει δυνατή η επαλήθευση της ψηφιακής υπογραφής από τον παραλήπτη, ο αποστολέας µεταδίδει µαζί µε το µήνυµα και ένα πιστοποιητικό για το δικό του δηµόσιο κλειδί. Το πιστοποιητικό αυτό ακολουθεί το πρότυπο Χ.509 της ITU–T. • Το στάδιο κρυπτογράφησης, κατά το οποίο ο αποστολέας, προαιρετικά, κρυπτογραφεί το µήνυµα µε DES σε τρόπο λειτουργίας CBC. Πριν όµως το κάνει αυτό, ο αποστολέας πρέπει να αποκτήσει ένα έγκυρο πιστοποιητικό για κάθε παραλήπτη του µηνύµατος. Στη συνέχεια, ο αποστολέας τοποθετεί το µήνυµα σε ψηφιακό φάκελο, µαζί µε τα δηµόσια κλειδιά των παραληπτών. • Το στάδιο κωδικοποίησης µετάδοσης, κατά το οποίο ο αποστολέας, προαιρετικά, µετατρέπει το µήνυµα σε κείµενο µε αλφάβητο 6–bit. Η κωδικοποίηση αυτή είναι συµβατή µε την κανονική µορφή SMTP. Είναι φανερό ότι τα µηνύµατα MIC–CLEAR εκτελούν τα στάδια 1 και 2, τα µηνύµατα MIC–ONLY τα στάδια 1, 2 και 4 και τα µηνύµατα ENCRYPTED όλα τα στάδια. Ο παραλήπτης ενός µηνύµατος ΡΕΜ πρώτα ελέγχει τον τύπο του µηνύµατος και στη συνέχεια, ανάλογα µε τον τύπο, τα στάδια επεξεργασίας του µηνύµατος αντιστρέφονται. Αν και η προδιαγραφή ΡΕΜ στοχεύει στο να είναι συµβατή µε ευρύ φάσµα στρατηγικών διαχείρισης κλειδιών, τόσο συµµετρικών όσο και ασύµµετρων, προδιαγράφηκε πρώτα ένα σχήµα διαχείρισης κλειδιών βασισµένο σε πιστοποιητικά. Τόσο η δοµή των πιστοποιητικών ΡΕΜ όσο και η διαχείρισή τους είναι συµβατά µε το πρότυπο Χ509 της ITU–T. Για να γίνει δε δυνατή η παγκόσµια χρήση του ΡΕΜ, εγκρίθηκε επίσηµα µια ιεραρχία πιστοποίησης, η οποία αποτελείται από τρία επίπεδα και φαίνεται στο Σχήµα 4.1. Στο κορυφαίο επίπεδο υπάρχει η Αρχή Εγγραφής Πολιτικών Internet (Internet Policy Registration Authority – IPRA), η οποία ορίζει τις κατευθύνσεις όλων των παρακάτω πεδίων και είναι επίσης η πρωταρχική αρχή πιστοποίησης (Root Certification Authority) για όλο το Internet. Η IPRA λειτουργεί υπό την αιγίδα της Internet Society (ISOC). Μέσα στο πεδίο ευθύνης της IPRA µπορούν να εγκατασταθούν Αρχές Πιστοποίησης Πολιτικών (Policy Certification Authorities – PCAs), οι οποίες πληροφορούν τις οµάδες–στόχους τους µέσω πληροφοριακών RFCs για τον τρόπο µε τον οποίο ανεξάρτητοι χρήστες και οργανισµοί µπορούν να εγγραφούν και να πιστοποιηθούν.
105
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
106
Μια ή περισσότερες Αρχές Πιστοποίησης (Certification Authorities – CAs) µπορούν στη συνέχεια να εγκατασταθούν µέσα στο πεδίο ευθύνης κάθε PCA. IP R A
PCA
PCA
PCA
™¯‹Ì· 4.1
Ιεραρχία πιστοποίησης ΡΕΜ
CA
CA
CA
Η κεντρική ιδέα είναι ότι η IPRA εκδίδει πιστοποιητικά για τις PCAs, οι οποίες, µε τη σειρά τους, εκδίδουν πιστοποιητικά για τις CAs. Τέλος, οι CAs εκδίδουν πιστοποιητικά για ανεξάρτητους χρήστες και οργανισµούς. Σηµειώστε ότι η ιεραρχία αυτή είναι απολύτως αυστηρή και απαγορεύει τη χορήγηση ή υποστήριξη πιστοποιητικών από µια αρχή πιστοποίησης για το κλειδί κάποιας άλλης (cross certificates). Αν και υπήρξαν διάφορες υλοποιήσεις του ΡΕΜ, τόσο στην Αµερική (TIS/PEM) όσο και στην Ευρώπη (COSINE P8, PASSWORD, COST–PEM), το σύστηµα ΡΕΜ ποτέ δεν κατάφερε να επιβληθεί. Υπήρξαν διάφοροι λόγοι γι’ αυτό, αλλά ίσως ο σηµαντικότερος είναι το γεγονός ότι, για να λειτουργήσει το ΡΕΜ, απαιτείται η ύπαρξη και πλήρης λειτουργία της ιεραρχίας πιστοποίησης και της υποδοµής δηµόσιων κλειδιών, όπως περιγράφηκε πιο πάνω, απαίτηση που ακόµη δεν έχει ικανοποιηθεί. Επίσης, το εύρος των υποστηριζόµενων αλγόριθµων κρυπτογράφησης είναι περιορισµένο. Για παράδειγµα, η κρυπτογράφηση γίνεται µε DES, ένα σύστηµα που σήµερα θεωρείται ότι δεν παρέχει ικανοποιητικά επίπεδα ασφάλειας. Τέλος, το ΡΕΜ περιορίζεται σε περιβάλλοντα κειµένου και δεν υποστηρίζει δυαδικές επισυνάψεις και τύπους ΜΙΜΕ. Για να καλυφθεί η τελευταία αυτή αδυναµία, προτάθηκε µια επέκταση της προδιαγραφής ΡΕΜ, η οποία συνδυάζει την ΡΕΜ και τη ΜΙΜΕ. Η προδιαγραφή περιέχεται στα RFC 1847 και 1848 και ονοµάζεται MIME Object Security Services (MOSS).
4 . 2 H § ∂ ∫ ∆ ƒ √ ¡ π ∫ √ ∆∞ Ã À ¢ ƒ √ ª ∂ π √
4.2.2 Pretty good privacy
Αντίθετα µε το ΡΕΜ και το MOSS, ο όρος Pretty Good Privacy (PGP), που στα ελληνικά µπορεί να αποδοθεί ως Αρκετά Καλή Προστασία του Απορρήτου, δεν αναφέρεται σε κάποιο πρότυπο, αλλά σε ένα προϊόν λογισµικού που πρωτοκατασκευάστηκε από τον Phil Zimmermann τo 1991 και χρησιµοποιείται ευρύτατα στο Internet για την προστασία µηνυµάτων ηλεκτρονικού ταχυδροµείου που περιέχουν κείµενο. Όπως και η προδιαγραφή ΡΕΜ, το PGP υποστηρίζει υπηρεσίες εµπιστευτικότητας δεδοµένων, καθώς και αυθεντικοποίησης µηνύµατος, ακεραιότητας δεδοµένων και µη αµφισβήτησης αποστολής, µέσω κρυπτογράφησης και ψηφιακών φακέλων. Αλλά, σε αντιδιαστολή µε το ΡΕΜ, το PGP χρησιµοποιεί τον αλγόριθµο IDEA (αντί για τον DES) για την κρυπτογράφηση των δεδοµένων. Επειδή ο IDEA χρησιµοποιεί κλειδιά µήκους 128 bits, θεωρείται ισχυρότερος από τον DES, ο οποίος χρησιµοποιεί κλειδιά µήκους µόνο 56 bits. Για τις ψηφιακές υπογραφές το PGP χρησιµοποιεί τους αλγόριθµους MD5 και RSA, είναι δηλαδή συγκρίσιµο µε το ΡΕΜ. Αν και το PGP υποστηρίζει τρία επίπεδα ασφάλειας, µε διαφορετικό µήκος κλειδιού RSA, δηλαδή: • κλειδιά RSA µήκους 512 bits για ασφάλεια εµπορικών εφαρµογών χαµηλού επιπέδου, • κλειδιά RSA µήκους 768 bits για ασφάλεια εµπορικών εφαρµογών υψηλού επιπέδου, • κλειδιά RSA µήκους 1024 bits για ασφάλεια στρατιωτικών εφαρµογών, σήµερα συνιστάται η χρήση κλειδιών µήκους 1024 bits σε όλες τις εφαρµογές. Το PGP έχει µερικά µοναδικά χαρακτηριστικά. Πρώτα απ’ όλα, µπορεί να χρησιµοποιηθεί όχι µόνο για να ασφαλίσει µηνύµατα ηλεκτρονικού ταχυδροµείου, αλλά και για να κρυπτογραφήσει τοπικά αρχεία µε τον IDEA. Επιπλέον, ενώ οι ψηφιακές υπογραφές συνήθως επισυνάπτονται στο µήνυµα µε το οποίο σχετίζονται, το PGP επιτρέπει την αποκόλλησή τους και την ξεχωριστή αποστολή τους. Ένα πλεονέκτηµα της δυνατότητας αυτής είναι ότι οι υπογραφές µπορούν να καταγραφούν και να αρχειοθετηθούν ξεχωριστά από το µήνυµα. Ακόµη, το PGP συµπιέζει τα µηνύµατα χρησιµοποιώντας το κοινά διαθέσιµο πρόγραµµα ZIP 2.0. Η συµπίεση, γενικά, ελαττώνει το µέγεθος του µηνύµατος και αφαιρεί τις πολλαπλότητες σε µη κρυπτογραφηµένα κείµενα, κάνει δε δυσκολότερη την κρυπτανάλυση. Πιθανόν η µεγαλύτερη και εµφανέστερη διαφορά του ΡΕΜ και του PGP είναι ότι, ενώ το ΡΕΜ απαιτεί την ύπαρξη και πλήρη λειτουργία της ιεραρχίας πιστοποίησης και της υποδοµής δηµόσιων κλειδιών, το PGP βασίζεται στην έννοια της εµπιστοσύ-
107
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
108
νης µεταξύ χρηστών. Σηµειώστε ότι η εµπιστοσύνη είναι κοινωνική έννοια και ότι εµπιστοσύνη υπάρχει συνήθως µεταξύ φίλων. Για παράδειγµα, αν ο Αλέκος και ο Βασίλης έχουν κοινό φίλο το Γιώργο, τότε ο Βασίλης θα αποδεχτεί το δηµόσιο κλειδί του Αλέκου, αν ο Γιώργος έχει εκδώσει ένα ψηφιακά υπογραµµένο πιστοποιητικό γι’ αυτό. Είναι επίσης πιθανό ο Αλέκος να έχει πιστοποιητικά από περισσότερους από ένα φίλους. Στην περίπτωση αυτή ο Βασίλης αποδέχεται το δηµόσιο κλειδί του Αλέκου, αν αυτό είναι υπογραµµένο από τουλάχιστον έναν κοινό τους φίλο. Η έννοια αυτή της µεταβατικής εµπιστοσύνης χρησιµοποιείται και υλοποιείται από το PGP, καταλήγοντας έτσι σ’ έναν ιστό εµπιστοσύνης. Ένας χρήστης PGP µπορεί να επιλέξει ένα αυθαίρετο δηµόσιο κλειδί, να το προσθέσει στο µπρελόκ δηµόσιων κλειδιών του και να του δώσει ένα συγκεκριµένο επίπεδο εµπιστοσύνης. Ο ίδιος χρήστης µπορεί, επίσης, να συλλέξει πιστοποιητικά για το κλειδί αυτό που εκδόθηκαν από κάποιους άλλους χρήστες PGP. Ο χρήστης έχει, επίσης, στην κατοχή του ένα µπρελόκ απόρρητων κλειδιών, το οποίο βασικά αποτελεί το ιδιωτικό κλειδί του και είναι κρυπτογραφηµένο µε ένα µυστικό κλειδί που παράγεται από µια συνθηµατική φράση. Η λύση του PGP έχει, βέβαια, πλεονεκτήµατα και µειονεκτήµατα. Ένα πλεονέκτηµα είναι ότι ο ιστός εµπιστοσύνης αναιρεί την ανάγκη ύπαρξης µιας κοινής ιεραρχίας πιστοποίησης για την επικοινωνία των χρηστών. Ωστόσο, ένα µειονέκτηµα είναι ότι ένας χρήστης PGP δεν µπορεί να επαληθεύσει την ταυτότητα κάποιου άλλου, αν οι δύο δεν έχουν κοινούς φίλους. Ένα σοβαρότερο µειονέκτηµα είναι η τροµακτική δυσκολία (ή πλήρης αδυναµία) ανάκλησης πιστοποιητικού στο PGP. Το PGP χρησιµοποιείται ευρύτατα σήµερα, ιδίως σε περιβάλλοντα intranets, όπου είναι δυνατόν να εγκατασταθεί σύστηµα αυθεντικοποίησης και διαχείρισης κλειδιών για την εξασφάλιση του εξυπηρετητή δηµόσιων κλειδιών της επιχείρησης. 4.2.3 S/MIME
Εκτός από το ΡΕΜ και το MOSS, ένα τρίτο πρωτόκολλο για ασφαλές ηλεκτρονικό ταχυδροµείο είναι το Secure MIME (S/MIME). Όπως και τα ΡΕΜ και MOSS, και αντίθετα µε το PGP, το S/MIME είναι µια προδιαγραφή η οποία σχεδιάστηκε για να παρέχει ασφάλεια σε µηνύµατα ηλεκτρονικού ταχυδροµείου µε µορφή ΜΙΜΕ. Το πρωτόκολλο αναπτύχθηκε από µια οµάδα εταιρειών µε επικεφαλής την RSA Data Security και πρωτοπαρουσιάστηκε το 1995. Όπως και στο ΡΕΜ, η ιεραρχία πιστοποίησης στο S/MIME βασίζεται στο πρότυπο Χ.509 της ITU–T. Ωστόσο, για να αποφευχθεί η ανάγκη ύπαρξης παγκόσµιας ιεραρχίας πιστοποίησης, οι απαιτήσεις για τις αρχές και την ιεραρχία πιστοποίησης του S/MIME είναι πολύ πιο ευέλικτες από εκείνες για το ΡΕΜ.
4 . 2 H § ∂ ∫ ∆ ƒ √ ¡ π ∫ √ ∆∞ Ã À ¢ ƒ √ ª ∂ π √
109
Οι κρυπτογραφικοί αλγόριθµοι που ορίζονται στην προδιαγραφή S/MIME για ψηφιακές υπογραφές είναι οι MD2, MD5 και RSA. Επιπλέον, οι αλγόριθµοι DES, 3DES και RC2 σε λειτουργία CBC µπορούν να χρησιµοποιηθούν για κρυπτογράφηση µηνύµατος. Το S/MIME εξασφαλίζει την κρυπτογραφική συµβατότητα και τη διαλειτουργικότητα µεταξύ κατασκευαστών αξιοποιώντας τα Πρότυπα Κρυπτογραφίας ∆ηµόσιου Κλειδιού (Public Key Cryptography Standards – PKCS), πρότυπα που αφορούν την υλοποίηση κρυπτοσυστηµάτων δηµόσιου κλειδιού και αναπτύχθηκαν, από το 1991 και µετά, από µια οµάδα εταιρειών που περιλάµβανε τις Apple, DEC, Lotus, Sun Microsystems, RSA Data Security και το ΜΙΤ.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.2 Ποια είναι η βασική τεχνική που χρησιµοποιείται για την εξασφάλιση µηνυµάτων ηλεκτρονικού ταχυδροµείου (επιλέξτε µία από τις παρακάτω απαντήσεις); 1. Η ψηφιακή υπογραφή 2. Ο ψηφιακός φάκελος 3. Η κρυπτογραφία δηµόσιου κλειδιού 4. Η κρυπτογραφία ιδιωτικού κλειδιού
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.3 Αντιστοιχίστε τις υπηρεσίες ασφάλειας της αριστερής στήλης µε τους τύπους µηνυµάτων ΡΕΜ της δεξιάς στήλης: 1. Αυθεντικοποίηση µηνύµατος
1. MIC–CLEAR
2. Κωδικοποίηση µετάδοσης
2. MIC–ONLY
3. Ακεραιότητα δεδοµένων
3. ENCRYPTED
4. Εµπιστευτικότητα δεδοµένων 5. Μη αµφισβήτηση προέλευσης
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
110
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.4 Αντιστοιχίστε τα στάδια επεξεργασίας µηνυµάτων ΡΕΜ της αριστερής στήλης µε τους τύπους µηνυµάτων ΡΕΜ της δεξιάς στήλης: 1. Κανονικοποίηση
1. MIC–CLEAR
2. Ψηφιακή υπογραφή
2. MIC–ONLY
3. Κρυπτογράφηση
3. ENCRYPTED
4. Κωδικοποίηση µετάδοσης
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.5 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Το PΕΜ είναι πρότυπο.
❏
❏
2. Το PΕΜ χρησιµοποιεί τους αλγόριθµους IDEA, MD5 και RSA.
❏
❏
3. Είναι δυνατή η κρυπτογράφηση αρχείων που δεν περιέχονται σε µηνύµατα ηλεκτρονικού ταχυδροµείου µε το PΕΜ.
❏
❏
4. Οι ψηφιακές υπογραφές στο PΕΜ πρέπει να επισυνάπτονται στο µήνυµα.
❏
❏
5. ∆εν υπάρχει συµπίεση δεδοµένων στο PΕΜ.
❏
❏
6. Το PΕΜ απαιτεί την ύπαρξη παγκόσµιας ιεραρχίας πιστοποίησης για να λειτουργήσει.
❏
❏
7. Για να πιστοποιηθούν δύο µέρη στο PΕΜ, πρέπει απαραίτητα να έχουν κοινούς φίλους.
❏
❏
8. Η ανάκληση πιστοποιητικών στο PΕΜ γίνεται εύκολα.
❏
❏
4 . 2 H § ∂ ∫ ∆ ƒ √ ¡ π ∫ √ ∆∞ Ã À ¢ ƒ √ ª ∂ π √
111
¢Ú·ÛÙËÚÈfiÙËÙ· 4.1 Eπισκεφτείτε τον κόµβο http://www.ietf.org και προµηθευτείτε τα RFC 1421, 1422, 1423 και 1424 (ΡΕΜ). Αφού τα µελετήσετε, περιγράψτε ποια πεδία θα πρέπει να υπάρχουν στην επικεφαλίδα: 1. ενός µηνύµατος ΡΕΜ τύπου ENCRYPTED που απευθύνεται σε έναν και µόνο παραλήπτη, υποθέτοντας ότι χρησιµοποιείται συµµετρικό κρυπτοσύστηµα, 2. ενός µηνύµατος ΡΕΜ τύπου MIC–ONLY που απευθύνεται σε δύο παραλήπτες, υποθέτοντας ότι χρησιµοποιείται ασύµµετρο κρυπτοσύστηµα για όλα τα µέρη, 3. ενός µηνύµατος ΡΕΜ τύπου MIC–CLEAR που απευθύνεται σε τρεις παραλήπτες, και τι περίπου περιεχόµενο έχει το καθένα.
¢Ú·ÛÙËÚÈfiÙËÙ· 4.2 Eπισκεφτείτε τον κόµβο http://www.ietf.org και προµηθευτείτε τα RFC 1421, 1422, 1423 και 1424 (ΡΕΜ) και 1847 και 1848 (MOSS). Αφού τα µελετήσετε, περιγράψτε σύντοµα ποιες είναι οι βασικές τους διαφορές, σε µια έκθεση όχι µεγαλύτερη από µια σελίδα.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.6 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Το PGP είναι πρότυπο.
❏
❏
2. Το PGP χρησιµοποιεί τους αλγόριθµους IDEA, MD5 και RSA.
❏
❏
3. Είναι δυνατή η κρυπτογράφηση αρχείων που δεν περιέχονται σε µηνύµατα ηλεκτρονικού ταχυδροµείου µε το PGP.
❏
❏
4. Οι ψηφιακές υπογραφές στο PGP πρέπει να επισυνάπτονται στο µήνυµα.
❏
❏
5. ∆εν υπάρχει συµπίεση δεδοµένων στο PGP.
❏
❏
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
112
6. Το PGP απαιτεί την ύπαρξη παγκόσµιας ιεραρχίας πιστοποίησης για να λειτουργήσει.
❏
❏
7. Για να πιστοποιηθούν δύο µέρη στο PGP πρέπει απαραίτητα να έχουν κοινούς φίλους.
❏
❏
8. Η ανάκληση πιστοποιητικών στο PGP γίνεται εύκολα.
❏
❏
¢Ú·ÛÙËÚÈfiÙËÙ· 4.3 Eπισκεφτείτε τον κόµβο http://www.pgp.com και προµηθευτείτε το πακέτο PGP. Αφού το εγκαταστήσετε στο σύστηµά σας και πειραµατιστείτε µε αυτό, γράψτε µια έκθεση έκτασης περίπου δύο σελίδων όπου θα περιγράφετε τις θετικές και αρνητικές σας εντυπώσεις.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.7 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Το S/MIME είναι πρότυπο.
❏
❏
2. Το S/MIME χρησιµοποιεί τους αλγόριθµους IDEA, MD5 και RSA.
❏
❏
3. Το S/MIME απαιτεί την ύπαρξη παγκόσµιας ιεραρχίας πιστοποίησης για να λειτουργήσει.
❏
❏
4. Η ανάκληση πιστοποιητικών στο S/MIME γίνεται εύκολα.
❏
❏
¢Ú·ÛÙËÚÈfiÙËÙ· 4.4 Υποθέστε ότι εργάζεστε σε µια µεγάλη εταιρεία. Ο προϊστάµενός σας σας ζητάει µια πρόταση εγκατάστασης συστήµατος ασφαλούς ηλεκτρονικού ταχυδροµείου για το ∆ιοικητικό Συµβούλιο. Γράψτε µια τέτοια έκθεση, στην οποία θα πρέπει να συγκρίνετε, µε διάφορα κριτήρια, τις διάφορες επιλογές που έχετε και να καταλήγετε σε πρόταση υλοποίησης συγκεκριµένου συστήµατος. Αν και η έκθεσή σας µπορεί να είναι µακροσκελής, να θυµάστε ότι κανείς διευθυντής δε διαβάζει τίποτε µεγαλύτερο από δύο σελίδες. Σιγουρευτείτε, λοιπόν, ότι θα συµπεριλάβετε στην έκθεσή σας και µια κατάλληλη περίληψη.
4.3 ™À¡∞§§∞°∂™ WWW
4.3 ™˘Ó·ÏÏ·Á¤˜ WWW
Η συνεχής ανάπτυξη και αυξανόµενη δηµοτικότητα του Internet οφείλεται κυρίως στον παγκόσµιο ιστό (World Wide Web – WWW) και στο βασικό του πρωτόκολλο, το Hyper Text Transfer Protocol (HTTP). Όπως και ολόκληρο το Internet, το WWW σχεδιάστηκε µε κύριο στόχο να είναι τελείως ανοικτό και όχι απαραίτητα ασφαλές. Αυτό συνέβη γιατί όλοι πίστευαν ότι όλες οι πληροφορίες που θα υπήρχαν σε εξυπηρετητές WWW θα ήταν δηµόσια γνωστοποιήσιµες και, ως εκ τούτου, δε θα υπήρχε ανάγκη για αυθεντικοποίηση χρηστών και για εξουσιοδότηση. Όλοι ξέρουµε ότι η κατάσταση αυτή έχει αλλάξει δραµατικά. Σήµερα είναι πολύ συνηθισµένο να απαιτείται να υπάρχει περιορισµός στην προσπέλαση ορισµένων σελίδων του WWW ή να χρειάζεται να προστατευτεί η εµπιστευτικότητα και ακεραιότητα δεδοµένων που µεταδίδονται µεταξύ εξυπηρετητών και πελατών ΗΤΤΡ. Μπορεί ακόµη να είναι επιθυµητό να υποστηριχτούν υπηρεσίες µη αµφισβήτησης για µερικές συναλλαγές WWW. Κάποιες από τις απαιτήσεις ασφάλειας του WWW είχαν ήδη καλυφθεί στο παρελθόν. Για παράδειγµα, οι περισσότεροι εξυπηρετητές ΗΤΤΡ υποστηρίζουν αυθεντικοποίηση και εξουσιοδότηση βασισµένη σε διεύθυνση και συνθηµατικό. Τα προβλήµατα που σχετίζονται µε τη λύση αυτή είναι προφανή: οι διευθύνσεις ΙΡ µπορούν εύκολα να υποκλαπούν και συνθηµατικά που µεταδίδονται σε µη κρυπτογραφηµένη µορφή µπορούν να υποκλαπούν και να χρησιµοποιηθούν σε επιθέσεις επανάληψης. Από τη σκοπιά αυτή, φαίνεται ότι οι απαιτήσεις ασφάλειας του WWW δεν είναι διαφορετικές απ’ αυτές οποιασδήποτε άλλης εφαρµογής. Για να βελτιωθεί η κατάσταση, πρέπει να χρησιµοποιηθούν κρυπτογραφικοί µηχανισµοί. Μια πρόταση ασφάλειας για το WWW είναι η χρήση του GSS–API (Generic Security Service – Application Programming Interface). Η πρόταση αυτή, που δε φαίνεται να προχωράει πολύ, έχει ορίσει ένα νέο προσδιοριστή πρωτοκόλλου ΗΤΤΡ URL, µε το όνοµα gss–http. Ο προσδιοριστής αυτός καθορίζει ότι η σχετική ΗΤΤΡ κίνηση πρέπει να προστατευτεί χρησιµοποιώντας µηχανισµούς ασφάλειας GSS–API. Μια άλλη πρόταση, που επίσης δε φαίνεται να υπόσχεται πολλά, είναι να χρησιµοποιηθεί η διεπαφή γενικού σκοπού Common Client Interface (CCI) για να ενισχυθεί η ασφάλεια των συναλλαγών WWW µε µηνύµατα PGP. 4.3.1 To ÚˆÙfiÎÔÏÏÔ S–HTTP
Το πρωτόκολλο Secure Hyper Text Transfer Protocol (S–HTTP) αναπτύχθηκε για λογαριασµό της κοινοπραξίας CommerceNet το 1994. Στη σηµερινή του µορφή, το πρωτόκολλο ορίζει µια επέκταση του ΗΤΤΡ που µπορεί να χρησιµοποιηθεί για να
113
114
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
υποστηρίξει υπηρεσίες ασφάλειας απ’ άκρη σ’ άκρη σε συναλλαγές WWW. Το πρωτόκολλο δίνει έµφαση στην ευελιξία επιλογής µηχανισµών διαχείρισης κλειδιών, πολιτικών ασφάλειας και κρυπτογραφικών αλγόριθµων, υποστηρίζοντας ανοικτές διαπραγµατεύσεις µεταξύ πελατών και εξυπηρετητών. Για παράδειγµα, το πρωτόκολλο δεν απαιτεί τη χρήση πιστοποιητικών. Αν ο πελάτης διαθέτει πιστοποιητικό, τότε αυτό χρησιµοποιείται. Αν όχι, τότε χρησιµοποιούνται άλλες τεχνικές ασφάλειας. Η τρέχουσα προδιαγραφή S–HTTP υποστηρίζει τους αλγόριθµους MD2, MD5 και SHA–1 για µονόδροµες συναρτήσεις σύνοψης, τους αλγόριθµους DES–CBC, 3DES–CBC, DESX–CBC, IDEA–CFB, RC2–CBC, RC4, CDMF–CBC για κρυπτογράφηση και τους αλγόριθµους RSA και DSS για ψηφιακές υπογραφές. Το S–HTTP επιτρέπει τη διαλειτουργικότητα µεταξύ διαφόρων υλοποιήσεων και είναι συµβατό µε το ΗΤΤΡ. Αυτό, βασικά, σηµαίνει ότι ένας πελάτης S–HTTP µπορεί να επικοινωνήσει µε ένα ΗΤΤΡ εξυπηρετητή (που δεν υποστηρίζει S–HTTP) και αντιστρόφως. Φυσικά, η επικοινωνία τους δε θα χρησιµοποιεί τα χαρακτηριστικά ασφάλειας του S–HTTP. Συντακτικά, τα µηνύµατα S–HTTP είναι παρόµοια µε τα µηνύµατα ΗΤΤΡ. Αποτελούνται από µια γραµµή αίτησης ή κατάστασης, που ακολουθείται από µια σειρά γραµµών επικεφαλίδας, και ένα σώµα που µπορεί να περιέχει ένα εσώκλειστο περιεχόµενο. Το S–HTTP υποστηρίζει προστασία περιεχοµένου µηνύµατος µε τρεις ανεξάρτητους µηχανισµούς: ψηφιακή υπογραφή, αυθεντικοποίηση και κρυπτογράφηση. Κάθε µήνυµα µπορεί να υπογραφεί ψηφιακά, να αυθεντικοποιηθεί ή να κρυπτογραφηθεί ή να προστατευτεί µε οποιονδήποτε συνδυασµό αυτών ή να µην προστατευτεί καθόλου. • Αν εφαρµοστεί η ψηφιακή υπογραφή, ένα κατάλληλο πιστοποιητικό (ή αλυσίδα πιστοποιητικών) πρέπει να επισυναφθεί στο µήνυµα. Εναλλακτικά, ο αποστολέας µπορεί να απαιτήσει από τον παραλήπτη να βρει εκείνος, ανεξάρτητα, τα απαραίτητα πιστοποιητικά. • Αν εφαρµοστεί η αυθεντικοποίηση µηνύµατος, υπολογίζεται ένας κώδικας αυθεντικοποίησης µηνύµατος (Message Authentication Code – MAC) και µια τιµή σύνοψης του κειµένου, χρησιµοποιώντας ένα κοινό µυστικό κλειδί. Το κλειδί αυτό µπορεί να έχει συµφωνηθεί χρησιµοποιώντας κάποια –αυτοµατοποιηµένη ή όχι– µέθοδο διακίνησης. Ένας τρόπος συµφωνίας κλειδιού είναι και η χρήση εισιτηρίων του συστήµατος Kerberos, για το οποίο θα µιλήσουµε µε λεπτοµέρεια στο Κεφάλαιο 5. Η αυθεντικοποίηση µηνύµατος παρέχεται ως ξεχωριστή υπηρεσία ασφάλειας, επειδή η διαδικασία ψηφιακής υπογραφής µιας συναλλαγής πρέπει να είναι ξεκάθαρη και συνειδητή επιλογή του χρήστη, ενώ πολλές ανάγκες αυθεντι-
4.3 ™À¡∞§§∞°∂™ WWW
κοποίησης µπορούν να ικανοποιηθούν µε κάποιον απλούστερο µηχανισµό, όπως αυτός που παρέχεται από µια µονόδροµη συνάρτηση σύνοψης µε κλειδί. • Το S–HTTP ορίζει δύο µηχανισµούς διακίνησης κλειδιών. Ο πρώτος απαιτεί πιστοποιητικά δηµόσιων κλειδιών και υποστηρίζει ανταλλαγή κλειδιών εντός ζώνης (in–band). Στην περίπτωση αυτή ο αποστολέας µεταδίδει το κλειδί συναλλαγής κρυπτογραφηµένο µε το δηµόσιο κλειδί του παραλήπτη. Ο δεύτερος µηχανισµός δεν απαιτεί τέτοια πιστοποιητικά. Στην περίπτωση αυτή η συναλλαγή εξασφαλίζεται µε ένα κλειδί που έχει εξωτερικά συµφωνηθεί και οι σχετικές πληροφορίες βρίσκονται σε µια από τις συγκεκριµένες γραµµές επικεφαλίδας S–HTTP. Εναλλακτικά, κλειδιά συναλλαγών µπορούν επίσης να εξαχθούν από εισιτήρια του συστήµατος Kerberos. Για να είναι αναγνωρίσιµη η χρήση του S–HTTP, έχει οριστεί ένας νέος προσδιοριστής πρωτοκόλλου URL µε το όνοµα shttp. Συνοψίζοντας, το S–HTTP είναι πολύ ευέλικτο σε σχέση µε τους µηχανισµούς ασφάλειας και τους κρυπτογραφικούς αλγόριθµους που υποστηρίζει. Αν και η ευελιξία αυτή βοηθάει στη διαλειτουργικότητα, κάνει ωστόσο πολύ δύσκολη την υλοποίησή του. 4.3.2 AÚ¯ÈÙÂÎÙÔÓÈ΋ ¤ÎÙ·Û˘ ·ÛÊ¿ÏÂÈ·˜
Το World Wide Web Consortium επεξεργάζεται µια αρχιτεκτονική επέκτασης ασφάλειας (Security Extension Architecture – SEA) για το ΗΤΤΡ, η οποία βασίζεται στις αρχές σχεδίασης τόσο του ΗΤΤΡ όσο και του πρωτοκόλλου Protocol Extension Protocol – PEP. Το ΡΕΡ επιτρέπει σ’ έναν πελάτη και σ’ έναν εξυπηρετητή ΗΤΤΡ να ρωτήσουν ο ένας τον άλλο τι υποσυστήµατα επέκτασης υποστηρίζουν, να διαπραγµατευτούν παραµέτρους για τα υποσυστήµατα αυτά και να ζητήσουν την αρχή της συναλλαγής χρησιµοποιώντας µια επέκταση, αν αυτό είναι δυνατό. Η SEA για το HTTP πρωτοδηµοσιεύτηκε το 1996 και καθορίζει τρεις διαφορετικές κλάσεις επέκτασης πρωτοκόλλων για το ΗΤΤΡ: Υπογραφή, Ανταλλαγή κλειδιών και Κρυπτογράφηση. Με τις επεκτάσεις αυτές, η SEA µπορεί να παράσχει στο ΗΤΤΡ υπηρεσίες ασφάλειας παρόµοιες µε αυτές του S–HTTP. 4.3.3 ∞ÛÊ¿ÏÂÈ· ÎÈÓËÙÔ‡ ÎÒ‰Èη
Ο κινητός κώδικας αποτελείται από εκτελέσιµα προγράµµατα γενικού σκοπού που τρέχουν σε αποµακρυσµένες θέσεις. Το γεγονός ότι τέτοια προγράµµατα γενικού σκοπού µπορούν να τρέξουν σε οποιαδήποτε µηχανή συνδεµένη µε το Internet ανοίγει πολλές δυνατότητες για κατανεµηµένες εφαρµογές. Ωστόσο, η λειτουργικότητα
115
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
116
αυτή έχει και ένα τίµηµα. Από τη σκοπιά της ασφάλειας, τίποτε δεν είναι πιο επικίνδυνο από έναν παγκόσµιο, οµογενή διερµηνευτή γενικού σκοπού. Το γεγονός ότι ο διερµηνευτής αυτός είναι µέρος ενός browser, δηλαδή ενός µεγάλου και µε πολλά λάθη πακέτου λογισµικού, αυξάνει τους κινδύνους. Υπάρχουν, βασικά, τρεις πρακτικές τεχνικές για την ασφάλεια κινητού κώδικα: η τεχνική του αµµοδοχείου (sandboxing), η τεχνική της υπογραφής κώδικα και η τεχνική του ηλεκτρονικού αναχώµατος. Η µέθοδος του αµµοδοχείου περιορίζει τις δυνατότητες του εκτελέσιµου σε ένα µικρό σύνολο λειτουργιών. Η µέθοδος υπογραφής κώδικα ελέγχει αν ο πηγαίος κώδικας του εκτελέσιµου είναι άξιος εµπιστοσύνης. Ένας συνδυασµός αυτών των δύο µεθόδων υλοποιήθηκε στα JDK 1.2 και Netscape Communicator. Η µέθοδος του ηλεκτρονικού αναχώµατος περιορίζει τα προγράµµατα που µπορεί να τρέξει ένας πελάτης µε βάση τις ιδιότητες του εκτελέσιµου. Εκτός από τις λύσεις αυτές, υπάρχει αυξανόµενο ενδιαφέρον για µια τεχνική που λέγεται κώδικας που µεταφέρει αποδείξεις (proof carrying code), κατά την οποία κινητά προγράµµατα µεταφέρουν αποδείξεις ότι έχουν κάποιες συγκεκριµένες ιδιότητες. 4.3.4 AÛÊ¿ÏÂÈ· Java
Η Java είναι µια καινούρια, αντικειµενοστραφής γλώσσα προγραµµατισµού, που αναπτύχθηκε από τη Sun Microsystems. Είναι ανεξάρτητη από την αρχιτεκτονική της µηχανής, πράγµα που σηµαίνει ότι προγράµµατα Java µπορούν να εκτελεστούν σε οποιαδήποτε µηχανή. Το γεγονός αυτό την κάνει ιδανική για προγραµµατισµό στο Internet. Οι εφαρµογές της Java, όπως και κάθε άλλη εφαρµογή, χρειάζονται ασφάλεια. Ένας επιπλέον λόγος εξασφάλισης των προγραµµάτων Java είναι ότι, χωρίς κάποιες εγγυήσεις ότι το σύστηµα αρχείων του δε θα πάθει ζηµιά, κανείς δε θα επέτρεπε την αντιγραφή από το Internet και εκτέλεση στη µηχανή του εκτελέσιµου κώδικα. Η ασφάλεια της Java υλοποιείται σε διάφορα επίπεδα. Η Java δε χρησιµοποιεί δείκτες µνήµης. Κατά συνέπεια, δεν είναι δυνατή η πλαστογράφηση τέτοιων δεικτών και δεν είναι δυνατή η κατασκευή προγραµµάτων που να επηρεάζουν τις τιµές των µεταβλητών συστήµατος ή να προσπελάζουν πληροφορίες που δεν τους ανήκουν. Η Java υποστηρίζει συλλογή απορριµµάτων, διαδικασία µέσω της οποίας η αχρησιµοποίητη µνήµη συγκεντρώνεται αυτόµατα και αναχρησιµοποιείται. Η ιδιότητα αυτή κάνει τα προγράµµατα Java ασφαλέστερα και λιγότερο επιρρεπή σε σφάλµατα. Ο µεταφραστής Java πραγµατοποιεί εκτεταµένους ελέγχους κατά τη µετάφραση προκειµένου να εντοπίσει πιθανές παραβιάσεις ασφάλειας. Ο επαληθευτής Java ελέγχει
4.3 ™À¡∞§§∞°∂™ WWW
το δυαδικό κώδικα προκειµένου να βεβαιωθεί ότι ικανοποιούνται οι απαραίτητες προδιαγραφές ασφάλειας. Ο φορτωτής κλάσεων Java επαληθεύει τις κλάσεις Java και εκτελεί διαχωρισµό του χώρου ονοµάτων πριν από την εκτέλεση. Χρησιµοποιούνται διαφορετικοί χώροι ονοµάτων για κάθε πηγή δικτύου και κάθε ενσωµατωµένη κλάση. Χρησιµοποιεί επίσης µια ασφαλή µέθοδο έρευνας του χώρου ονοµάτων των αναφορών κλάσης, η οποία δεν επιτρέπει στην κλάση πηγής δικτύου να παρακάµψει οποιαδήποτε πηγή συστήµατος αρχείων ούτε στην κλάση πηγής συστήµατος αρχείων να προσπελάσει τυχαία µια κλάση πηγής δικτύου. Ο διαχειριστής ασφάλειας Java υλοποιεί και επιβάλλει την πολιτική ασφάλειας µιας εφαρµογής Internet, καθορίζοντας ποιες συγκεκριµένες πράξεις επιτρέπονται. Η λειτουργία του βασίζεται στον έλεγχο και στην έγκριση πράξεων πάνω σε αντικείµενα. Το αφηρηµένο επίπεδο JavaSecurity είναι σχεδιασµένο για να επιτρέπει την ενσωµάτωση λειτουργιών ασφάλειας τόσο χαµηλού όσο και υψηλού επιπέδου στις εφαρµογές Java. Το επίπεδο σχεδιάστηκε µε βάση τρεις αρχές: • Ανεξαρτησία από πλατφόρµα και µορφοποίηση υλοποίησης • ∆ιαλειτουργικότητα µεταξύ υλοποιήσεων • Πολιτική ασφάλειας σχεδιασµένη για τη συγκεκριµένη υλοποίηση Το επίπεδο παρέχει διεπαφές µε διάφορους αλγόριθµους ασφάλειας, χαρακτηριστικό που επιτρέπει την υποβολή αιτήσεων για χρήση κάποιου συγκεκριµένου αλγόριθµου χωρίς την ανάγκη γνώσης των λεπτοµερειών της υλοποίησης. Το ίδιο συµβαίνει και µε τις διεπαφές πιστοποιητικών, επιτρέποντας έτσι τη διαλειτουργικότητα µεταξύ διαφορετικών υλοποιήσεων. Τέλος, το επίπεδο επιτρέπει τη σχεδίαση πολιτικών ασφάλειας διαφορετικών για κάθε υλοποίηση. Η διεπαφή προγραµµάτων εφαρµογής JavaSecurity API περιέχει τις λειτουργίες ΑΡΙ για ψηφιακές υπογραφές, συνόψεις µηνυµάτων, διαχείριση κλειδιών και λίστες ελέγχου προσπέλασης. 4.3.5 AÓˆÓ˘Ì›· Î·È È‰ÈˆÙÈ΋ ˙ˆ‹
Πληροφορίες για τις δραστηριότητες χρηστών στο WWW καταγράφονται και διαχέονται µε αυξανόµενους ρυθµούς. Έτσι, καθώς αυξάνει η λειτουργικότητα του WWW, τα κέρδη που αποκοµίζουµε σε ευκολία χρήσης αντισταθµίζονται από απώλειες στο δικαίωµα της προσωπικής ζωής. Οι χρήστες δεν είναι συνήθως γνώστες του προβλήµατος αυτού και αφήνουν πίσω τους µια σκιά δεδοµένων που περιέχει πληροφορίες
117
118
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
για το τι διαβάζουν, πού ψωνίζουν, τι ψωνίζουν, µε ποιον αλληλογραφούν κτλ. Για παράδειγµα, τα cookies επιτρέπουν σε εξυπηρετητές χωρίς κατάσταση να δίνουν στον πελάτη πληροφορίες κατάστασης για αποθήκευση. Έτσι, ένας εξυπηρετητής µεγάλου όγκου µπορεί να παρακολουθήσει σηµαντικό ποσό πληροφορίας σχετικά µε τις συνήθειες κάποιου χρήστη. Πολλοί συνεργαζόµενοι εξυπηρετητές µπορούν να συγκεντρώσουν ακόµη περισσότερη πληροφορία. Πολλές διαφηµιστικές εταιρείες µοιράζονται πληροφορίες σχετικά µε προφίλ χρηστών και κατασκευάζουν γιγαντιαίες βάσεις δεδοµένων που περιέχουν χρήστες και τις σκιές δεδοµένων τους. Οι προσπάθειες χρήσης τεχνολογίας για προστασία της ιδιωτικής ζωής των χρηστών περιλαµβάνουν τους µείκτες (mixes), τους µηχανισµούς πληρεξουσίου (proxy mechanisms) και το σύστηµα crowds (πλήθη). Οι µείκτες εισάχθηκαν από τον David Chaum, αρχικά για να αντιµετωπίσουν επιθέσεις ανάλυσης κίνησης. Η ίδια τεχνολογία έχει όµως χρησιµοποιηθεί για να υποστηρίξει ανώνυµο ηλεκτρονικό ταχυδροµείο και ανώνυµη περιπλάνηση στο WWW. Ένας µείκτης είναι µια διαδικασία που έχει ένα ζεύγος δηµόσιου – ιδιωτικού κλειδιού, δέχεται µηνύµατα, τα αποκρυπτογραφεί και τα προωθεί. Μπορεί, επίσης, να χρησιµοποιηθεί ένα δίκτυο µεικτών, όπου κάθε µείκτης αφαιρεί ένα στρώµα κρυπτογράφησης και τα µηνύµατα δροµολογούνται µε βάση την προέλευσή τους µέσω του δικτύου µεικτών προς τον προορισµό τους. Η λύση των µεικτών ενδείκνυται για το πρόβληµα του ανώνυµου ηλεκτρονικού ταχυδροµείου. Όταν οι χρήστες επιλέξουν ένα σύνολο έµπιστων αναταχυδρόµων (µεικτών µηνυµάτων), ο παραλήπτης δεν µπορεί να διαπιστώσει από πού ξεκίνησε το µήνυµα. Ωστόσο, η λύση αυτή δεν ενδείκνυται σε περιβάλλοντα σύγχρονης επικοινωνίας, όπως αυτά των Web browsers, επειδή συνεργασία µεταξύ του πρώτου και του τελευταίου µείκτη µπορεί να αποκαλύψει την ταυτότητα και του αποστολέα και του παραλήπτη, µε βάση το περιεχόµενο και το χρόνο της αίτησης. Επίσης, η χρήση κρυπτοσυστηµάτων δηµόσιου κλειδιού εµποδίζει την ευρεία διάδοση τέτοιων συστηµάτων. Μια απλούστερη λύση στο πρόβληµα είναι η παρεµβολή ενός γνωστού πληρεξουσίου µεταξύ των πελατών και όλων των εξυπηρετητών. Ο πληρεξούσιος ξαναγράφει όλες τις αιτήσεις των πελατών, έτσι ώστε ο τελικός εξυπηρετητής δεν είναι σε θέση να αναγνωρίσει την προέλευσή τους. ∆υστυχώς, αν δε χρησιµοποιηθεί κρυπτογράφηση, ο διαχειριστής συστήµατος ή οποιοσδήποτε τρίτος µπορεί να ωτακούσει το τοπικό δίκτυο και να παρατηρήσει όλη την κίνηση και το περιεχόµενο των µηνυµάτων µεταξύ του πελάτη και του εξυπηρετητή. Επιπλέον, οι διαχειριστές των πληρεξουσίων πρέπει να είναι έµπιστοι, ώστε να µην αποθηκεύουν ή/και αποκαλύ-
4.3 ™À¡∞§§∞°∂™ WWW
πτουν πληροφορίες σχετικές µε τις δραστηριότητες των χρηστών. Όταν οι χρήστες περιπλανώνται στο WWW ως µέλη του συστήµατος Crowds, κάθε πράξη τους αποδίδεται στο πλήθος ως σύνολο, προσφέροντας έτσι στον κάθε χρήστη σχετική ανωνυµία. Το σύστηµα Crowds τρέχει σε πλατφόρµες Unix και Windows και έχει αναπτυχθεί στο Internet. Το σύστηµα αναλύθηκε σε σχέση µε διάφορους τύπους επιτιθέµενων (τοπικοί ωτακουστές, διαχειριστές συστήµατος, οµάδες συνεργαζόµενων µελών του πλήθους, τελικοί εξυπηρετητές) και αποδείχθηκε φορµαλιστικά ότι παρέχει κάποιες εγγυήσεις ανωνυµίας. 4.3.6 ¶ÚÔÛÙ·Û›· ÓÂ˘Ì·ÙÈ΋˜ ȉÈÔÎÙËÛ›·˜
Είναι φυσικό και θεµιτό οι παροχείς περιεχοµένου στο WWW να επιθυµούν τη δηµιουργία κερδών από τις πληροφορίες που περιέχονται στις ιστοσελίδες τους. Όµως, η ψηφιακή πληροφορία µπορεί να αντιγραφεί και να µεταδοθεί µε µεγάλη ευκολία. Συµπεραίνουµε, λοιπόν, ότι οι παροχείς περιεχοµένου χρειάζονται µηχανισµούς που θα τους βοηθήσουν να προστατεύσουν τις επιχειρήσεις τους. Η οπτική αυτή της ασφάλειας του WWW δεν είναι ασφαλώς νέα. Το ίδιο πρόβληµα αντιµετώπισαν στο παρελθόν οι εταιρείες λογισµικού και οι εταιρείες µουσικής και video. ∆υστυχώς, όπως και τότε, ούτε και τώρα υπάρχουν ξεκάθαρες και απολύτως αποτελεσµατικές λύσεις προστασίας της πνευµατικής ιδιοκτησίας. Μια σύντοµη µατιά στις µεθόδους προστασίας του λογισµικού, δηλαδή στις µεθόδους πρόληψης της χρήσης λογισµικού χωρίς άδεια, εξηγεί γιατί. Υπάρχουν βασικά δύο τεχνικές λύσεις στο πρόβληµα αυτό: • Προστασία αντιγραφής: Σύνδεση του λογισµικού µε το υλικό στο οποίο είναι αποθηκευµένο. • Περιορισµός χρήσης: Σύνδεση του λογισµικού µε το υλικό στο οποίο εκτελείται. ¶ƒ√™∆∞™π∞ ∞¡∆π°ƒ∞º∏™
Η µέθοδος αυτή χρησιµοποιούνταν όταν το λογισµικό διανεµόταν σε δισκέτες. Τα δεδοµένα που είναι αποθηκευµένα σε µαγνητικά µέσα συνήθως είναι οργανωµένα σε αύλακες, που υποδιαιρούνται σε τοµείς. Οι τοµείς µπορεί να περιέχουν µια επικεφαλίδα για την εύρεση της θέσης των δεδοµένων και ένα άθροισµα ελέγχου για στοιχειώδεις ελέγχους ακεραιότητας. Μια ιδέα είναι ότι, αν αποθηκεύσουµε λογισµικό σε δίσκο που η µορφοποίησή του αποκλίνει από την κανονική, αυτό µπορεί να ανακτηθεί µόνο µε ειδικές ρουτίνες, που παρέχει ο κατασκευαστής. Αν, όµως, µια καλή ρουτίνα αντιγραφής καταφέρει να δηµιουργήσει ένα καλό µη κανονικό αντίγραφο, η άµυνά µας έχει σπάσει. Έτσι και έγινε. Η εµφάνιση µηχανισµών προστα-
119
120
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
σίας αντιγραφής οδήγησε στην πραγµατικότητα στην ανάπτυξη ισχυρότερων ρουτινών αντιγραφής. Πέρα από την επιλογή αυτή, κατά καιρούς προτάθηκαν και χρησιµοποιήθηκαν και οι ακόλουθες επιλογές προστασίας αντιγραφής: • Λογική προστασία: Επανεγγραφή των ρουτινών αντιγραφής και εµφάνιση ευρετηρίου του λειτουργικού συστήµατος, έτσι ώστε αρχεία να µην αντιγράφονται ή εµφανίζονται όταν είναι σηκωµένη κάποια σηµαία «µη εµφάνισης» ή όταν συναντηθεί ένα σύνολο «αφανών» χαρακτήρων. Η προστασία αυτή παρακάµπτεται µε καλή γνώση του λειτουργικού συστήµατος. • Μη κανονικές µορφοποιήσεις δίσκων: Οι επιλογές αλλαγής της λογικής µορφοποίησης του δίσκου περιλαµβάνουν µη µορφοποιηµένες αύλακες, αλλαγµένη αρίθµηση αυλάκων ή τοµέων, αλλαγή µεγέθους τοµέων, αλλαγή αθροισµάτων ελέγχου κ.ά. Οι µηχανισµοί αυτοί είναι χρήσιµοι απέναντι σε προγράµµατα αντιγραφής που υποθέτουν κανονική µορφοποίηση. Η απάντηση των αντιγραφέων ήταν η δηµιουργία προγραµµάτων αντιγραφής που αντιγράφουν µαγνητικά µέσα σε επίπεδο bit, αγνοώντας τη λογική τους µορφοποίηση. • ∆ακτυλικό αποτύπωµα του δίσκου: Το λογισµικό συνδέεται µε ένα συγκεκριµένο φυσικό χαρακτηριστικό του δίσκου πάνω στον οποίο πουλήθηκε το αρχικό πρωτότυπο και τρέχει µόνο από δίσκο µε το σωστό δακτυλικό αποτύπωµα. Το αποτύπωµα αυτό θα µπορούσε να είναι η ύπαρξη µιας αύλακας 40 (συνήθως µη µορφοποιηµένης), η χρονοκαθυστέρηση µεταξύ των αναγνώσεων του τοµέα µηδέν σε κάθε αύλακα, ο αριθµός bits ανά αύλακα ή η θέση ελαττωµατικών τοµέων σε ένα σκόπιµα (µερικά) κατεστραµµένο δίσκο. Η προστασία λογισµικού η βασισµένη σε δίσκο µπορεί να παρακαµφθεί, ανεξάρτητα από το µηχανισµό προστασίας που χρησιµοποιείται, αν υπάρξει πρόσβαση στον κώδικα όσο αυτός βρίσκεται στον επεξεργαστή ή στη µνήµη. Για παράδειγµα, ένας τροποποιηµένος χειριστής διακοπής θα µπορούσε να ενεργοποιήσει µια διαδικασία αντιγραφής όποτε εκτελείται ένα πρόγραµµα. Μια «κάρτα αντιγραφής» (memory board) τοποθετείται στον εσωτερικό δίαυλο του µικροεπεξεργαστή και ο πίνακας διακοπών αλλάζει, έτσι ώστε ο έλεγχος να περνάει στην κάρτα αυτή. Το πιο σηµαντικό όµως µειονέκτηµα της µεθόδου είναι το γεγονός ότι εµποδίζει τη δηµιουργία αντιγράφων ασφάλειας και τη διαλειτουργικότητα µεταξύ διαφορετικών προϊόντων, επειδή οι χρήστες δεν µπορούν να εκτελέσουν «προτυποποιηµένα» πακέτα ή τµήµατα λογισµικού. Επιπλέον, η συντήρηση λογισµικού αφαιρείται από τη δικαιοδοσία του χρήστη, ο οποίος εξαρτάται απόλυτα από τον προµηθευτή του λογισµικού για την εκτέλεση των εργασιών του.
4.3 ™À¡∞§§∞°∂™ WWW
¶∂ƒπ√ƒπ™ª√™ Ã∏™∏™
Τα σηµαντικότερα προβλήµατα της προστασίας αντιγραφής αποφεύγονται θέτοντας περιορισµούς στη χρήση του λογισµικού αντί στον αριθµό των αντιγράφων. Η βασική ιδέα πίσω από την τεχνική αυτή είναι ότι το ίδιο το λογισµικό µπορεί να ελέγξει την ταυτότητα της µηχανής πάνω στην οποία εκτελείται. Η ταυτότητα αυτή µπορεί να είναι το όνοµα της µηχανής, η δικτυακή της διεύθυνση, ο ethernet αριθµός της κτλ. Συνήθως, οι τιµές αυτές χρησιµοποιούνται για τον υπολογισµό ενός αθροίσµατος ελέγχου, το οποίο αντιπαραβάλλεται µε µια εσωτερικά αποθηκευµένη τιµή. Ο τύπος αυτός προστασίας µπορεί να παρακαµφθεί µε χρήση debuggers, που αναλύουν ποιους ελέγχους πραγµατοποιεί το λογισµικό, και µε συνακόλουθο «µπάλωµα» του λογισµικού (patching), ώστε ο έλεγχος να επιτυγχάνει ακόµη κι αν το λογισµικό εκτελείται σε µη εξουσιοδοτηµένη µηχανή. Το πρόβληµα εδώ είναι ότι αναβαθµίσεις ή αλλαγές ονοµάτων των µηχανών απαιτούν την προσφυγή στον προµηθευτή, προκειµένου να δοθούν νέες τιµές ελέγχου, αυξάνοντας και το κόστος αλλά και τη δυσκολία της λύσης. Λύσεις βασισµένες σε επιπλέον υλικό περιλαµβάνουν τα dongles και τα έξυπνα υποσυστήµατα (γνωστά στα ελληνικά ως χασπάκια), που περιλαµβάνουν µικροεπεξεργαστή. Το υποσύστηµα αυτό συνδέεται µε τον υπολογιστή, συνήθως µέσω της διεπαφής RS–232 του εκτυπωτή, της διεπαφής Ethernet, ενός αναγνώστη έξυπνης κάρτας ή του εσωτερικού διαύλου του µικροεπεξεργαστή. Το υποσύστηµα πρέπει να είναι παρόν κατά την εκτέλεση του προστατευόµενου λογισµικού, το οποίο µπορεί απλώς να ελέγχει την παρουσία του. Ένα έξυπνο υποσύστηµα µπορεί να περιέχει κοµµάτια του κώδικα ή να αποκρυπτογραφεί προγράµµατα που είναι αποθηκευµένα µόνο σε κρυπτογραφηµένη µορφή. Αν οι αλληλεπιδράσεις µε το υποσύστηµα είναι απλοϊκές, µπορούν να παρακαµφθούν εύκολα µε την τεχνική του µπαλώµατος. Οι χρήστες είναι ελεύθεροι να αντιγράψουν λογισµικό που προστατεύεται µε dongle, για να πάρουν (για παράδειγµα) αντίγραφο ασφάλειας. Περιορισµοί υπάρχουν µόνο στον αριθµό των ταυτόχρονων εκτελέσεων του προγράµµατος. Μπορεί όµως να δηµιουργηθούν προβλήµατα διαλειτουργικότητας, αν χρειαστεί να τρέχουν περισσότερα από ένα προγράµµατα ταυτόχρονα και το καθένα τους έχει διαφορετικό dongle. Τέλος, πρέπει να σηµειώσουµε ως µειονέκτηµα της λύσης και το γεγονός ότι οι χρήστες πρέπει να αντιµετωπίσουν και την πιθανότητα να χαλάσουν τα dongles ή οι κατασκευαστές τους να σταµατήσουν να υπάρχουν.
121
122
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
¢∞∫∆À§π∫∞ ∞¶√∆À¶øª∞∆∞ ∫∞π À¢∞∆√°ƒ∞ºπ∂™
Η ενσωµάτωση δακτυλικών αποτυπωµάτων και υδατογραφιών σε ψηφιακά έγγραφα παρουσιάζεται σήµερα ως η λύση στο πρόβληµα της προστασίας περιεχοµένου. Μιλώντας όχι φορµαλιστικά, µια υδατογραφία πρέπει να µπορεί να προσδιορίσει τον ιδιοκτήτη πνευµατικών δικαιωµάτων ενός εγγράφου, ενώ ένα δακτυλικό αποτύπωµα πρέπει να µπορεί να προσδιορίσει τον αγοραστή του εγγράφου. Τα απαιτούµενα από τις τεχνικές αυτές χαρακτηριστικά είναι πολλά και πολλές φορές αντιφατικά: • Οι υδατογραφίες και τα δακτυλικά αποτυπώµατα πρέπει να ενσωµατώνονται εύκολα σε ψηφιακά έγγραφα. • Οι υδατογραφίες και τα δακτυλικά αποτυπώµατα πρέπει να αποµακρύνονται δύσκολα ή (ακόµη καλύτερα) να είναι αδύνατον να αποµακρυνθούν. • Οι υδατογραφίες και τα δακτυλικά αποτυπώµατα δεν πρέπει να επηρεάζουν την ποιότητα των εικόνων. • Οι υδατογραφίες και τα δακτυλικά αποτυπώµατα πρέπει να µένουν αναλλοίωτα σε συνήθεις µετασχηµατισµούς εικόνων. • Οι υδατογραφίες και τα δακτυλικά αποτυπώµατα πρέπει να µπορούν να ανιχνεύονται άµεσα από τις κατάλληλες αρχές. Τα ερωτήµατα που γεννιούνται είναι πολλά. Είναι δυνατόν ο δηµιουργός να µπορεί να αποδείξει την ιδιοκτησία του και ταυτόχρονα ο πειρατής να µην µπορεί να αφαιρέσει την υδατογραφία; Για να συµβεί το πρώτο, κάποιος αµερόληπτος διαιτητής πρέπει να ξέρει πού να ψάξει για να βρει την υδατογραφία. Τότε όµως, ο πειρατής θα το ξέρει κι αυτός, και θα µπορεί ν’ αλλάξει τα δεδοµένα στις θέσεις αυτές. Είναι πιθανόν η λύση του προβλήµατος να βρεθεί στους web browsers. Ο έλεγχος τότε θα επικεντρώνεται στη λειτουργία της προσπέλασης περισσότερο, παρά στο αντικείµενο που προσπελάζεται.
4.3 ™À¡∞§§∞°∂™ WWW
123
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.8 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Το πρωτόκολλο S–HTTP απαιτεί τη χρήση πιστοποιητικών.
❏
❏
2. Το πρωτόκολλο S–HTTP υποστηρίζει µονόδροµες συναρτήσεις σύνοψης, κρυπτογράφηση και ψηφιακές υπογραφές.
❏
❏
3. ∆εν είναι δυνατή η επικοινωνία µεταξύ δύο σταθµών, εκτός αν και οι δύο υποστηρίζουν το πρωτόκολλο S–HTTP.
❏
❏
4. Τα µηνύµατα S–HTTP είναι συντακτικά όµοια µε τα µηνύµατα ΗΤΤΡ.
❏
❏
5. Όταν χρησιµοποιούνται πιστοποιητικά από το S–HTTP, αυτά πρέπει οπωσδήποτε να επισυνάπτονται στο µήνυµα.
❏
❏
6. Το κλειδί συνόδου που χρησιµοποιεί το S–HTTP µπορεί να συµφωνηθεί µε διάφορους τρόπους.
❏
❏
7. Η διακίνηση κλειδιών στο S–HTTP γίνεται µόνο εντός ζώνης.
❏
❏
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.9 Αντιστοιχίστε τις τεχνικές προστασίας της αριστερής στήλης µε τα αντικείµενα προστασίας της δεξιάς στήλης: 1. Μείκτες
1. Κινητός κώδικας
2. Αµµοδοχείο
2. Ιδιωτική ζωή χρηστών WWW
3. Υπογραφή κώδικα
3. Λογισµικό
4. Προστασία αντιγραφής 5. Μηχανισµός πληρεξουσίου 6. Περιορισµός χρήσης 7. Ηλεκτρονικό ανάχωµα 8. Σύστηµα crowds
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
124
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.10 Ποια είναι τα πέντε επίπεδα ελέγχου ασφάλειας της γλώσσας Java;
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.11 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Ο µέσος χρήστης του WWW γνωρίζει τους κινδύνους που απειλούν την ιδιωτική του ζωή όταν περιπλανάται στο WWW.
❏
❏
2. Η τεχνολογία των µεικτών αναπτύχθηκε για να προστατεύσει την ιδιωτική ζωή των χρηστών του WWW.
❏
❏
3. Η τεχνολογία των µεικτών µπορεί να χρησιµοποιηθεί επιτυχώς για να υλοποιήσει την υπηρεσία ανώνυµου ταχυδροµείου.
❏
❏
4. Η τεχνολογία πληρεξουσίου εξασφαλίζει απόλυτα την ανωνυµία του αποστολέα ενός µηνύµατος.
❏
❏
5. Το σύστηµα crowds παρέχει φορµαλιστικές εγγυήσεις ανωνυµίας.
❏
❏
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.12 Αντιστοιχίστε τις τεχνικές προστασίας λογισµικού της αριστερής στήλης µε τον τύπο προστασίας της δεξιάς στήλης: 1. Λογική προστασία
1. Προστασία αντιγραφής
2. Έλεγχος ταυτότητας µηχανής
2. Περιορισµός χρήσης
3. Μη κανονικές µορφοποιήσεις µαγνητικών µέσων 4. Πρόσθετο εξειδικευµένο υλικό 5. ∆ακτυλικά αποτυπώµατα δίσκων
4.3 ™À¡∞§§∞°∂™ WWW
125
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.13 Πώς µπορεί να παρακαµφθεί η προστασία αντιγραφής λογισµικού, ανεξάρτητα από το ποια συγκεκριµένη τεχνική προστασίας χρησιµοποιείται;
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.14 Πώς µπορεί να παρακαµφθεί η προστασία λογισµικού µε περιορισµό της χρήσης του;
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.15 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Το πρόβληµα της προστασίας λογισµικού έχει λυθεί πλήρως.
❏
❏
2. Η εµφάνιση ισχυρότερων µηχανισµών προστασίας οδηγεί στην ανακάλυψη ισχυρότερων µηχανισµών παράκαµψης της προστασίας.
❏
❏
3. Η µέθοδος προστασίας λογισµικού µέσω προστασίας αντιγραφής δεν εµποδίζει τη δηµιουργία αντιγράφων ασφάλειας.
❏
❏
4. Η βασική υπόθεση πάνω στην οποία βασίζεται η προστασία λογισµικού µέσω περιορισµού χρήσης είναι ότι το λογισµικό µπορεί να ελέγξει την ταυτότητα της µηχανής πάνω στην οποία εκτελείται.
❏
❏
5. Όταν το λογισµικό προστατεύεται µέσω ελέγχου της ταυτότητας της µηχανής στην οποία εκτελείται, απαιτείται συχνή προσφυγή στον κατασκευαστή.
❏
❏
6. Όταν το λογισµικό προστατεύεται µε επιπλέον εξειδικευµένο υλικό, η δηµιουργία αντιγράφων ασφάλειας δεν αποτελεί πρόβληµα.
❏
❏
7. Όταν το λογισµικό προστατεύεται µε επιπλέον
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
126
εξειδικευµένο υλικό, η ταυτόχρονη εκτέλεση διαφορετικών προγραµµάτων δεν αποτελεί πρόβληµα. 8. Τα απαιτούµενα από τις υδατογραφίες και τα δακτυλικά αποτυπώµατα χαρακτηριστικά είναι αντιφατικά.
❏
❏
❏
❏
¢Ú·ÛÙËÚÈfiÙËÙ· 4.5 Η βιοµηχανία λογισµικού προσπάθησε να προστατεύσει τα προϊόντα της από αντιγραφή κατά τη δεκαετία του ’90, αλλά εγκατέλειψε την προσπάθεια. Νοµίζετε ότι η τεχνολογική πρόοδος που σηµειώθηκε στο µεταξύ δικαιολογεί την αισιοδοξία ότι η λύση αυτή θα βρει µεγαλύτερη επιτυχία τώρα που επιχειρείται η χρησιµοποίησή της για την προστασία της πνευµατικής ιδιοκτησίας; Αναπτύξτε τα επιχειρήµατά σας σε µια έκθεση όχι µεγαλύτερη από µια σελίδα.
¢Ú·ÛÙËÚÈfiÙËÙ· 4.6 Η προστασία λογισµικού αυξάνει τα κέρδη της βιοµηχανίας λογισµικού; Για να είναι πλήρης η απάντησή σας, θα πρέπει να εξετάσετε διάφορα είδη λογισµικού (π.χ. επεξεργαστές κειµένου, εργαλεία σχεδίασης VLSI, παιχνίδια). Αναπτύξτε τα επιχειρήµατά σας σε µια έκθεση όχι µεγαλύτερη από µια σελίδα.
4.4 ™˘ÛÙ‹Ì·Ù· ËÏÂÎÙÚÔÓÈÎÒÓ ÏËÚˆÌÒÓ
Το ηλεκτρονικό εµπόριο γενικά, και ειδικότερα µέσω του Internet, εξαρτάται από τη διαθεσιµότητα και την ευρεία διάδοση συστηµάτων ηλεκτρονικών πληρωµών. Τα συστήµατα αυτά µπορεί να εµπλέκουν διάφορους εταίρους και µεθόδους πληρωµής. Στην ενότητα αυτή συζητάµε σύντοµα µερικά συστήµατα ηλεκτρονικής πληρωµής. Ειδικότερα, εστιάζουµε σε συστήµατα ηλεκτρονικού χρήµατος, ηλεκτρονικών επιταγών, πληρωµών µε πιστωτικές κάρτες και µικροπληρωµών. Πέρα όµως απ’ αυτές, υπάρχουν και κάποιες άλλες µορφές ηλεκτρονικών πληρωµών, όπως εντολές πληρωµής, τραπεζικές επιταγές, πληρωµές µε κάρτες ανάληψης, εντολές αγοράς και ταξιδιωτικές επιταγές. Επιπλέον, υπάρχουν και κάποια συστήµατα ηλεκτρονικών πληρωµών που δε χρησιµοποιούν καθόλου κρυπτογραφία. Πιθανόν το πιο γνωστό σύστηµα αυτής της κατηγορίας είναι το σύστηµα της First Virtual Holdings Inc., στο
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
οποίο οι χρήστες εγγράφονται δίνοντας πληροφορίες σχετικές µε την ταυτότητά τους και την πιστωτική τους κάρτα. Η εταιρεία, στη συνέχεια, τους δίνει ένα µοναδικό αριθµό αναγνώρισης. Όταν ο χρήστης θελήσει να κάνει µια πληρωµή, στέλνει το µοναδικό του αριθµό αναγνώρισης στον έµπορο. Ο έµπορος, µε τη σειρά του, επιβεβαιώνει τον αριθµό αναγνώρισης µε το σύστηµα και το σύστηµα επιβεβαιώνει την πληρωµή µε τον πελάτη. Με τη λήψη της επιβεβαίωσης, τα χρήµατα µεταφέρονται off–line. Η εταιρεία χρησιµοποιεί ηλεκτρονικό ταχυδροµείο για την τοποθέτηση και επιβεβαίωση εντολών πληρωµής, ενώ η µεταφορά χρηµάτων γίνεται off–line, µέσω ιδιωτικών δικτύων. Στον πυρήνα οποιουδήποτε συστήµατος ηλεκτρονικών πληρωµών βρίσκεται ένα ή περισσότερα πρωτόκολλα πληρωµής. Αυτά είναι γενικής φύσης και δεν πρέπει να εξαρτώνται από τα χρησιµοποιούµενα µέσα µεταφοράς. Στην πραγµατικότητα ένα πρωτόκολλο πληρωµής µπορεί να υλοποιηθεί µέσα σε WWW browsers που χρησιµοποιούν HTTP, µέσα σε πράκτορες ηλεκτρονικού ταχυδροµείου που χρησιµοποιούν SMTP, ή µέσα σε κάποιο άλλο πρόγραµµα που χρησιµοποιεί ένα συγκεκριµένο πρωτόκολλο εφαρµογής. Σε κάθε περίπτωση πρέπει να είναι βέβαιο ότι τα δεδοµένα που εµπλέκονται στην εκτέλεση ενός πρωτοκόλλου ηλεκτρονικής πληρωµής είναι ασφαλή ακόµη και αν το µέσο δεν είναι. Στην περίπτωση που το ανασφαλές µέσο δεχτεί επίθεση, ο επιτιθέµενος πρέπει να µη µπορεί να κερδίσει τίποτε περισσότερο από δεδοµένα χωρίς νόηµα. Είναι δυνατό και πολύ πιθανό να δούµε πολλά συστήµατα ηλεκτρονικών πληρωµών να συνυπάρχουν στο µέλλον. Εποµένως, πρέπει να υπάρχει ένα στρώµα διαπραγµάτευσης πάνω από τα αντίστοιχα συστήµατα. Το ∆εκέµβριο του 1995 το WWW Consortium και το CommerceNet Consortium συγχρηµατοδότησαν την Κοινή Πρωτοβουλία Ηλεκτρονικού Εµπορίου (Joint Electronic Payment Initiative – JEPI), µε σκοπό τη συνεργασία των βασικών παικτών της βιοµηχανίας στην κατεύθυνση της εξασφάλισης ότι διαφορετικά συστήµατα πληρωµής, πρωτόκολλα και µηχανισµοί µεταφοράς θα µπορούν να συνεργαστούν µέσω του Internet. Συνοπτικά, η JEPI έχει ως σκοπό την πραγµατοποίηση της έννοιας της αυτόµατης διαπραγµάτευσης πληρωµής, όπου οι υπολογιστές κάνουν τις διαπραγµατεύσεις και οι χρήστες παίρνουν τις τελικές αποφάσεις. Τεχνικά, η JEPI προδιαγράφει ένα ζεύγος πρωτοκόλλων διαπραγµάτευσης: • Ένα πρωτόκολλο διαπραγµάτευσης γενικού σκοπού, που βασίζεται στο πρωτόκολλο επέκτασης πρωτοκόλλων Protocol Extension Protocol – PEP, το οποίο επεκτείνει το HTTP, έτσι ώστε να µπορεί δυναµικά να αναπτύσσει εφαρµογές που απαιτούν περισσότερες λειτουργίες απ’ αυτές που µπορεί να υποστηρίξει το ΗΤΤΡ.
127
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
128
• Ένα συγκεκριµένο υποσύστηµα επέκτασης, που ονοµάζεται Universal Payment Preamble (UPP), και τοποθετείται πάνω από το ΡΕΡ. Το UPP επιτρέπει στους πελάτες να χρησιµοποιήσουν ένα πορτοφόλι πολυ–πληρωµών και να µετακινούνται εύκολα από πληρωµή σε πληρωµή. Οι διαπραγµατεύσεις UPP γίνονται µέσω ανταλλαγής επικεφαλίδων ΡΕΡ, πριν ή κατά τη διάρκεια των αγορών, και µπορούν να χρησιµοποιηθούν για να συµφωνηθεί η µέθοδος πληρωµής, το πρωτόκολλο και κάποιες άλλες παράµετροι, όπως, για παράδειγµα, ο τύπος της πιστωτικής κάρτας (Visa, Diners, Mastercard, Amex κτλ.) στην περίπτωση πληρωµής µε πιστωτική κάρτα. 4.4.1 HÏÂÎÙÚÔÓÈÎfi ¯Ú‹Ì·
Το ψηφιακό ή ηλεκτρονικό χρήµα είναι το ηλεκτρονικό ανάλογο του φυσικού χρήµατος. Εκδίδεται από τράπεζες και οι πελάτες µπορούν να το χρησιµοποιήσουν για να αγοράσουν αγαθά ή υπηρεσίες από εµπόρους που αποδέχονται αυτήν τη µορφή ηλεκτρονικής πληρωµής. Τρία µέρη εµπλέκονται σε ένα σύστηµα ηλεκτρονικού χρήµατος: • Μια Τράπεζα, που εκδίδει το ηλεκτρονικό χρήµα • Ένας Πελάτης • Ένας Έµπορος Ο Πελάτης και ο Έµπορος µπορεί να έχουν λογαριασµούς και σε άλλες τράπεζες. Στην περίπτωση αυτή, οι τράπεζες αυτές αναφέρονται ως Τράπεζα Πελάτη και Τράπεζα Εµπόρου, αντίστοιχα. Μια συναλλαγή ηλεκτρονικού χρήµατος ολοκληρώνεται σε τρεις διακριτές και ανεξάρτητες φάσεις, οι οποίες φαίνονται σχηµατικά στο Σχήµα 4.2: • Στην πρώτη φάση, ο Πελάτης αποκτάει ηλεκτρονικό χρήµα. Ζητάει από την Τράπεζα Πελάτη να µεταφέρει χρήµατα από το λογαριασµό του στην Τράπεζα (Βήµα 1). Μετά τη µεταφορά αυτή (Βήµατα 2 και 3), η Τράπεζα Πελάτη στέλνει το αντίστοιχο ποσό ηλεκτρονικού χρήµατος στον Πελάτη (Βήµα 4) και αυτός αποθηκεύει το ηλεκτρονικό χρήµα τοπικά στο δίσκο του ή στην έξυπνη κάρτα του. • Στη δεύτερη φάση, ο Πελάτης χρησιµοποιεί το ηλεκτρονικό χρήµα για να κάνει κάποιες αγορές. Ειδικότερα, επιλέγει αγαθά ή υπηρεσίες και µεταφέρει τα αντίστοιχα ποσά ηλεκτρονικού χρήµατος στον Έµπορο (Βήµα 5). Ο Έµπορος, µε τη σειρά του, προµηθεύει τα αγαθά ή τις υπηρεσίες στον Πελάτη (Βήµα 6). • Στην τρίτη φάση, ο Έµπορος εξαργυρώνει το ηλεκτρονικό χρήµα που εισέπραξε από τον Πελάτη, µεταφέροντας το ηλεκτρονικό χρήµα στην Τράπεζα (Βήµα 7). Εναλλακτικά, ο Έµπορος µπορεί να µεταφέρει το ηλεκτρονικό χρήµα στην Τρά-
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
129
πεζα Εµπόρου (Βήµα 8) και αυτή, µε τη σειρά της, να το εξαργυρώσει από την Τράπεζα (Βήµα 9). Στην περίπτωση αυτή η Τράπεζα µεταφέρει χρήµατα στην Τράπεζα Εµπόρου, προς πίστωση του λογαριασµού του Εµπόρου (Βήµα 10).
5 Πελάτης 1
Έµπορος 6
4
8 7
Tράπεζα πελάτη
3 2
10 Tράπεζα
Tράπεζα εµπόρου
9
Είναι κοινά αποδεκτό ότι το ηλεκτρονικό χρήµα πρέπει να έχει ορισµένες ιδιότητες. Για παράδειγµα, το ηλεκτρονικό χρήµα πρέπει να είναι ανεξάρτητο, µε την έννοια ότι η ύπαρξή του δεν πρέπει να εξαρτάται από συγκεκριµένες πλατφόρµες ή συστήµατα. Πιθανόν ένα από τα ξεχωριστά χαρακτηριστικά του πραγµατικού χρήµατος είναι η ανωνυµία του, µε την έννοια ότι το χρήµα δεν πρέπει να παρέχει πληροφορίες που να επιτρέπουν την αναγνώριση των προηγούµενων ιδιοκτητών του. Είναι λογικό, λοιπόν, να απαιτούµε και από το ηλεκτρονικό χρήµα να έχει την ιδιότητα αυτή. Συνεπώς, το ηλεκτρονικό χρήµα πρέπει να µπορεί να µεταφέρεται από άτοµο σε άτοµο, και µάλιστα µε τέτοιον τρόπο ώστε να µην είναι δυνατόν να ανακαλυφθεί ποιος το κατείχε προηγουµένως. Στην περίπτωση αυτή όµως πρέπει να είναι βέβαιο ότι κάθε ηλεκτρονικό νόµισµα χρησιµοποιείται µόνο µία φορά και ότι κάθε απόπειρα διπλής χρήσης είναι ανιχνεύσιµη. Επίσης, το ηλεκτρονικό χρήµα πρέπει να είναι διαθέσιµο σε διάφορα ποσά και να είναι διαιρετό, όπως και το πραγµατικό. Τέλος, το ηλεκτρονικό χρήµα πρέπει να είναι δυνατόν να αποθηκευτεί µε ασφάλεια σε σκληρό δίσκο ή σε έξυπνη κάρτα. Μερικά µόνο από τα συστήµατα ηλεκτρονικού χρήµατος που προτάθηκαν στο παρελθόν ικανοποιούσαν όλες αυτές τις ιδιότητες. Για παράδειγµα, η ιδιότητα της ανωνυµίας αποτελεί ακόµη αντικείµενο συζήτησης, αφού η εκπλήρωσή της οδηγεί στη δυνατότητα ξεπλύµατος παράνοµου χρήµατος ή στην απόκρυψη χρήµατος που προήλθε από παράνοµες ενέργειες. Η διαπίστωση αυτή οδήγησε στην ανάπτυξη σχεδόν ανώνυµων συστηµάτων ηλεκτρονικού χρήµατος, στα οποία η ταυτότητα του πελάτη είναι δυνατόν να αποκαλυφθεί, υπό συγκεκριµένους όρους.
™¯‹Ì· 4.2
Φάσεις συναλλαγής µε ηλεκτρονικό χρήµα
130
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
Ο David Chaum ανέπτυξε ένα µηχανισµό τυφλής υπογραφής RSA και έκδοσης ηλεκτρονικού χρήµατος, το 1982, και ίδρυσε την εταιρεία DigiCash Inc., µε σκοπό την προώθηση στην αγορά του συστήµατος ανώνυµου ηλεκτρονικού χρήµατος, που ονόµασε Ecash. Τον Οκτώβριο του 1985 η Mark Twain Bank στο St. Louis, Missouri ήταν η πρώτη τράπεζα που άρχισε να προσφέρει υπηρεσίες Ecash στο Internet. Σήµερα υπάρχουν αρκετές ακόµη. Στο σύστηµα Ecash τα ψηφιακά νοµίσµατα αποθηκεύονται τοπικά στο σύστηµα του Πελάτη. Ένας τρόπος να γίνει αυτό είναι να κρυπτογραφηθούν τα ψηφιακά νοµίσµατα µε ένα µυστικό κλειδί παραγόµενο από το συνθηµατικό. Ένας άλλος τρόπος είναι να χρησιµοποιηθούν έξυπνες κάρτες. Σε κάθε περίπτωση, ο Πελάτης πρέπει να µεταφέρει τα ψηφιακά νοµίσµατα στον Έµπορο µέσω του Internet. Πριν αποδεχτεί ένα νόµισµα, ο Έµπορος πρέπει να εξετάσει την αυθεντικότητά του και την ακεραιότητά του µε το αντίστοιχο δηµόσιο κλειδί της Τράπεζας και να βεβαιωθεί, επικοινωνώντας σε πραγµατικό χρόνο µε την Τράπεζα, ότι το νόµισµα δεν έχει ξαναχρησιµοποιηθεί. Κάθε νόµισµα µπορεί να χρησιµοποιηθεί µόνο µια φορά και η Τράπεζα σηµειώνει όλους τους σειριακούς αριθµούς των νοµισµάτων που χρησιµοποιούνται. Έτσι, είναι σε θέση να αναγνωρίζει και να αρνείται να επιβεβαιώσει νοµίσµατα που χρησιµοποιούνται για δεύτερη φορά. Εκτός από το Ecash, η ιδέα του ανώνυµου ηλεκτρονικού χρήµατος έχει εξεταστεί και στα πλαίσια του Ευρωπαϊκού έργου Conditional Access For Europe (CAFÉ). Η υπόθεση που γίνεται στο έργο αυτό είναι ότι η σε πραγµατικό χρόνο εξέταση ενός ψηφιακού νοµίσµατος δεν είναι πάντα εφικτή και ότι τα offline συστήµατα προσφέρουν πλεονεκτήµατα στην προσπάθεια ευρείας διάδοσης συστηµάτων ηλεκτρονικού χρήµατος µέσω Internet. Ωστόσο, ένα πρόβληµα που εγείρεται αµέσως σε οποιοδήποτε offline σύστηµα είναι το πρόβληµα της διπλής χρήσης. Πώς µπορούµε να σιγουρευτούµε ότι το ψηφιακό νόµισµα δεν έχει ξαναχρησιµοποιηθεί; Σηµειώστε ότι στο µοντέλο offline δεν υπάρχει τρόπος επιβεβαίωσης του νοµίσµατος από τον Έµπορο µε την Τράπεζα. Υπάρχουν δύο λύσεις για την επίλυση του προβλήµατος αυτού: • Η πρώτη είναι να χρησιµοποιήσουµε κάποια ειδικά µαθηµατικά ώστε να σιγουρευτούµε ότι η ταυτότητα του Πελάτη που χρησιµοποίησε δύο φορές το ίδιο νόµισµα µπορεί να αποκαλυφθεί. Στην περίπτωση αυτή ο ιδιοκτήτης ενός νοµίσµατος παρέχει τµήµα των πληροφοριών της ταυτότητάς του κατά τη διαδικασία πληρωµής, που από µόνο του δεν είναι αρκετό για τον καθορισµό της ταυτότητάς του. Μόνο σε συνδυασµό µε ένα άλλο τµήµα των πληροφοριών της ταυτότητάς του µπορεί να αποκαλυφθεί πλήρως η ταυτότητα του Πελάτη.
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
• Η δεύτερη λύση είναι να χρησιµοποιηθούν ειδικές συσκευές υλικού που αποθηκεύουν τα νοµίσµατα και εγγυώνται ότι τα νοµίσµατα χρησιµοποιούνται µόνο µια φορά. Οι συσκευές αυτές µερικές φορές ονοµάζονται ηλεκτρονικά πορτοφόλια ή παρατηρητές. Το έργο CAFÉ ακολούθησε τη δεύτερη προσέγγιση, µε ειδικά σχεδιασµένα ηλεκτρονικά πορτοφόλια. Ένα άλλο offline σύστηµα ανώνυµου ηλεκτρονικού χρήµατος µε υποστήριξη υλικού είναι το Mondex, το οποίο αναπτύσσεται κυρίως στο Ηνωµένο Βασίλειο. Το NetCash είναι ένα σύστηµα ηλεκτρονικού χρήµατος που παρέχει αδύναµη ανωνυµία. Ο όρος αυτός σηµαίνει ότι, αν ένας Πελάτης δώσει το νόµισµα NetCash σ’ έναν Έµπορο, δεν υπάρχει τρόπος µόνος του ο Έµπορος να διαπιστώσει την ταυτότητα του Πελάτη. Ωστόσο, αν ο Έµπορος συνεργαστεί µε την Τράπεζα, είναι δυνατόν από κοινού να ανακαλύψουν την ταυτότητα του Πελάτη. Τέλος, το CyberCash είναι παράδειγµα συστήµατος ηλεκτρονικού χρήµατος που δεν ενδιαφέρεται καθόλου για την ανωνυµία του Πελάτη. 4.4.2 HÏÂÎÙÚÔÓÈΤ˜ ÂÈÙ·Á¤˜
Επειδή οι επιταγές αποτελούν ένα αρκετά διαδεδοµένο µέσο πληρωµής στον πραγµατικό κόσµο, οι ηλεκτρονικές επιταγές µπορούν να αποτελέσουν ένα ενδιαφέρον σχήµα πληρωµής για το ηλεκτρονικό εµπόριο. Ένα σύστηµα πληρωµής ηλεκτρονικών επιταγών λειτουργεί συνοπτικά ως εξής: Ο Πελάτης εκδίδει µια ηλεκτρονική επιταγή στο όνοµα του Εµπόρου και ο Έµπορος καταθέτει την επιταγή στην Τράπεζα προκειµένου να την εξαργυρώσει. Το σύστηµα, λοιπόν, αποτελείται από τα εξής µέρη: • Έναν Πελάτη και την Τράπεζά του • Έναν Έµπορο και την Τράπεζά του • Ένα ∆ιατραπεζικό Οργανισµό για την επεξεργασία των επιταγών ανάµεσα στις τράπεζες Σ’ ένα τέτοιο σύστηµα µια συναλλαγή ηλεκτρονικής επιταγής εκτελείται σε τρεις διακριτές φάσεις, που φαίνονται σχηµατικά στο Σχήµα 4.3. • Στην πρώτη φάση, ο Πελάτης αγοράζει κάποια αγαθά ή υπηρεσίες και στέλνει την αντίστοιχη ηλεκτρονική επιταγή στον Έµπορο (Βήµα 1). Ο Έµπορος, µε τη σειρά του, εξετάζει την εγκυρότητα της επιταγής µε την Τράπεζά του (Βήµατα 2 και 3). Αν η επιταγή είναι έγκυρη, ο Έµπορος ολοκληρώνει τη συναλλαγή µε τον Πελάτη (Βήµα 4).
131
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
132
• Στη δεύτερη φάση, ο Έµπορος προωθεί την ηλεκτρονική επιταγή στην Τράπεζά του για κατάθεση (Βήµα 5). Η πράξη αυτή γίνεται σε χρόνο που ανήκει στη διακριτική ευχέρεια του Εµπόρου. • Στην τρίτη φάση, η Τράπεζα του Εµπόρου προωθεί την ηλεκτρονική επιταγή στο ∆ιατραπεζικό Οργανισµό για εξαργύρωση (Βήµα 6). Ο ∆ιατραπεζικός Οργανισµός, µε τη σειρά του, συνεργάζεται µε την Τράπεζα του Πελάτη, εκκαθαρίζει την επιταγή (Βήµατα 7 και 8) και µεταφέρει τα χρήµατα στην Τράπεζα του Εµπόρου (Βήµα 9), η οποία ενηµερώνει αναλόγως το λογαριασµό του Εµπόρου. Η Τράπεζα του Πελάτη, επίσης, ενηµερώνει τον Πελάτη µε πληροφορίες σχετικές µε την ανάληψη (Βήµα 10). 1 Πελάτης
Έµπορος 4
10
™¯‹Ì· 4.3
Φάσεις συναλλαγής µε ηλεκτρονική επιταγή
Tράπεζα πελάτη
7
8
5 9
∆ιατραπεζικός Oργανισµός
3
2
Tράπεζα εµπόρου
6
Από τεχνική σκοπιά, οι ηλεκτρονικές επιταγές είναι σχετικά απλές. Μια ηλεκτρονική επιταγή µπορεί απλώς να αποτελείται από ένα έγγραφο που είναι ψηφιακά υπογραµµένο µε το ιδιωτικό κλειδί του Πελάτη. Ο παραλήπτης (ο Έµπορος ή η Τράπεζά του) µπορούν να χρησιµοποιήσουν το δηµόσιο κλειδί του Πελάτη προκειµένου να επιβεβαιώσουν την ψηφιακή υπογραφή. Σε σύγκριση µε τις συµβατικές επιταγές και κάποιες άλλες µορφές συµβατικών πληρωµών, οι ηλεκτρονικές επιταγές έχουν αρκετά πλεονεκτήµατα. Για παράδειγµα, ηλεκτρονικές επιταγές µπορούν να εκδοθούν χωρίς να χρειάζεται να συµπληρωθούν, να ταχυδροµηθούν ή να παραδοθούν χαρτιά. Επίσης, ο χρόνος επεξεργασίας τους είναι µικρότερος. Ο Έµπορος, όταν έχει να κάνει µε συµβατικές επιταγές, συνήθως τις συγκεντρώνει και µετά τις καταθέτει στην Τράπεζά του. Αντίθετα, όταν έχει να κάνει µε ηλεκτρονικές επιταγές, µπορεί να τις προωθεί µία–µία στην Τράπεζά του και να πιστώνει ανάλογα το λογαριασµό του. Επιπλέον, τα συστήµατα ηλεκτρονικών επιταγών µπορούν να σχεδιαστούν έτσι ώστε ο Έµπορος να λαµβάνει κατάλληλη εξουσιοδότηση από την Τράπεζα του Πελάτη πριν αποδεχτεί µια επιταγή. Η δυνατότητα αυτή µοιάζει πολύ µε τη λύση των τραπεζικών επιταγών.
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
Παραδείγµατα συστηµάτων ηλεκτρονικών επιταγών αποτελούν τα PayNow και NetCheque. 4.4.3 ¶ÏËڈ̤˜ Ì ÈÛÙˆÙÈΤ˜ οÚÙ˜
Τελευταία, τα ηλεκτρονικά συστήµατα πληρωµής µε πιστωτικές κάρτες κυριαρχούν ανάµεσα στους χρήστες του Internet. Υπάρχουν διάφορες απαιτήσεις ασφάλειας που αυτά τα συστήµατα πρέπει να πληρούν. Για παράδειγµα, πρέπει να υπάρχει ένας µηχανισµός που θα αυθεντικοποιεί τα διάφορα εµπλεκόµενα µέρη, δηλαδή τους πελάτες, τους εµπόρους και τις συµµετέχουσες τράπεζες. Πρέπει, επίσης, να υπάρχει ένας άλλος µηχανισµός που θα προστατεύει τις πληροφορίες της κάρτας και της πληρωµής καθώς αυτές µεταδίδονται µέσω του Internet. Τέλος, πρέπει να συµφωνηθεί µια διαδικασία επίλυσης διαφορών µεταξύ των εµπλεκόµενων µερών. Έχουν σχεδιαστεί αρκετά συστήµατα ηλεκτρονικών πληρωµών µε πιστωτικές κάρτες που αντιµετωπίζουν αυτές τις απαιτήσεις. Τα περισσότερα απ’ αυτά έχουν και επιπλέον πλεονεκτήµατα. Για παράδειγµα, σε κάποια απ’ αυτά τα συστήµατα οι πληροφορίες της πιστωτικής κάρτας δεν αποκαλύπτονται στον έµπορο. Το χαρακτηριστικό αυτό δεν υπάρχει στα συµβατικά συστήµατα πληρωµής µε πιστωτικές κάρτες. Εποµένως, ένα ηλεκτρονικό σύστηµα πληρωµής µε πιστωτικές κάρτες µπορεί να παρέχει µεγαλύτερη ασφάλεια απ’ ό,τι το συµβατικό σύστηµα. Επίσης, ένα ηλεκτρονικό σύστηµα πληρωµής µε πιστωτικές κάρτες µπορεί να σχεδιαστεί έτσι ώστε να κάνει σχεδόν άµεσα την πληρωµή στον έµπορο. Στο συµβατικό σύστηµα απαιτείται αρκετός χρόνος µέχρι ο έµπορος να πάει τις αποδείξεις στην τράπεζα και η τράπεζα να εκκαθαρίσει το προς πληρωµή ποσό. Πέντε οντότητες συµµετέχουν στα ηλεκτρονικά συστήµατα πληρωµής µε πιστωτικές κάρτες: • Ο Πελάτης (κάτοχος της κάρτας) • Ο Έµπορος • Η Τράπεζα Εµπόρου • Ένα Κέντρο ∆ιαχείρισης Πιστοποιητικών (Κ∆Π) • Η Tράπεζα που εκδίδει την κάρτα (Eκδότρια Tράπεζα) Ο Πελάτης χρησιµοποιεί την κάρτα του για να αγοράσει αγαθά ή υπηρεσίες από τον Έµπορο. Ο Έµπορος συναλλάσσεται µε την Τράπεζα Εµπόρου. Μια πολύ σηµαντική οντότητα στα ηλεκτρονικά συστήµατα πληρωµής µε πιστωτικές κάρτες είναι το Κέντρο ∆ιαχείρισης Πιστοποιητικών (Κ∆Π), που παρέχει υπηρεσίες δηµόσιου κλειδιού και
133
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
134
εκδίδει πιστοποιητικά δηµόσιου κλειδιού στα εµπλεκόµενα µέρη. Επιπλέον, υπάρχουν συνήθως δύο δίκτυα που εµπλέκονται σε ένα ηλεκτρονικό σύστηµα πληρωµής µε πιστωτικές κάρτες: ένα δηµόσιο δίκτυο (συνήθως το Internet) και ένα ιδιωτικό, που ανήκει στις τράπεζες, οι οποίες και το διαχειρίζονται. Το δίκτυο αυτό αναφέρεται ως Banknet. Η βασική υπόθεση είναι ότι οι επικοινωνίες µέσω του Banknet είναι αρκετά ασφαλείς, ενώ οι επικοινωνίες µέσω του Internet είναι εγγενώς ανασφαλείς και πρέπει να προστατευτούν κρυπτογραφικά. Συνεπώς, ένα πρωτόκολλο ηλεκτρονικού συστήµατος πληρωµής µε πιστωτικές κάρτες κυρίως εστιάζει στις επικοινωνίες που γίνονται µέσω του Internet και δεν ασχολείται µε επικοινωνίες µέσω του Banknet. Μια ηλεκτρονική συναλλαγή πληρωµής µε πιστωτική κάρτα εκτελείται σε τρεις κύριες φάσεις, που φαίνονται σχηµατικά στο Σχήµα 4.4: • Στην πρώτη φάση, ο Πελάτης εξετάζει τι προσφέρει ο Έµπορος και αγοράζει κάποια αγαθά ή υπηρεσίες (Βήµα 1). ∆ηλώνει ότι προτίθεται να πληρώσει µε πιστωτική κάρτα και ο Έµπορος επικοινωνεί µε την Τράπεζά του προκειµένου να πάρει την εξουσιοδότηση πίστωσης για τον Πελάτη και το ποσό που αντιστοιχεί στην αγορά (Βήµατα 2 και 3). Γενικά, η εξουσιοδότηση αυτή απαιτείται µόνο όταν το ποσό της αγοράς υπερβαίνει κάποιο προκαθορισµένο όριο. Στην περίπτωση αυτή η Τράπεζα Εµπόρου ολοκληρώνει την εξουσιοδότηση και ενηµερώνει τον Έµπορο αν πρέπει να προχωρήσει ή όχι. Τέλος, ο Έµπορος ειδοποιεί τον Πελάτη ότι η συναλλαγή έκλεισε (Βήµα 4). • Στη δεύτερη φάση, ο Έµπορος επικοινωνεί µε την Τράπεζά του και της δίνει όσες αποδείξεις ηλεκτρονικών πληρωµών µε πιστωτικές κάρτες έχει συγκεντρώσει (Βήµα 5). Η Τράπεζα Εµπόρου επικοινωνεί µε την Eκδότρια Τράπεζα ώστε να λάβει τα χρήµατα για λογαριασµό του Εµπόρου (Βήµατα 6 και 7). • Στην τρίτη φάση, η Εκδότρια Τράπεζα ενηµερώνει τον Πελάτη για το ποσό των χρηµάτων που µεταφέρθηκαν σε άλλα µέρη ως αποτέλεσµα των αγορών του (Βήµα 8). Ο Πελάτης µπορεί να ενηµερώνεται µια φορά το µήνα µε κανονικό ή (ασφαλές) ηλεκτρονικό ταχυδροµείο. 1 Πελάτης 8 ™¯‹Ì· 4.4
Φάσεις συναλλαγής µε πιστωτική κάρτα
Έµπορος 5
4
3
6 Eκδότρια Tράπεζα
Tράπεζα Eµπόρου 7 K∆Π
2
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
Στο πρόσφατο παρελθόν σχεδιάστηκαν και προτάθηκαν διάφορα πρωτόκολλα για ηλεκτρονικά συστήµατα πληρωµής µε πιστωτικές κάρτες. Τα πιο γνωστά είναι τα iKP, SEPP και SET, για τα οποία θα µιλήσουµε αµέσως µετά. ¶ƒø∆√∫√§§∞ IKP
Το σύστηµα αυτό και τα σχετικά πρωτόκολλα σχεδιάστηκαν από την IBM Research Division. Το πιο σηµαντικό χαρακτηριστικό του συστήµατος είναι ότι παρέχει πλήρη κρυπτογραφική προστασία των δεδοµένων και επίσης ίχνος ελέγχου, που µπορεί να χρησιµοποιηθεί για την επίλυση διαφορών. Στο σύστηµα εµπλέκονται τρία µέρη: • Ο Πελάτης • Ο Έµπορος • Η Τράπεζα Ο όρος iKP είναι τα αρχικά των λέξεων Internet Keyed Payments Protocol ή i–key–protocol, όπου i = 1, 2 ή 3. Η τιµή του i καθορίζει το πλήθος των µερών που κατέχουν ζεύγος δηµόσιου–ιδιωτικού κλειδιού και το αντίστοιχο πιστοποιητικό. Έτσι, το απλούστερο πρωτόκολλο είναι το 1ΚΡ, όπου µόνο η Τράπεζα έχει ζεύγος δηµόσιου–ιδιωτικού κλειδιού. Για το 2ΚΡ ζεύγος κλειδιών έχει επιπλέον και ο Έµπορος. Το πρωτόκολλο 3ΚΡ, όπου και τα τρία µέρη έχουν ζεύγος κλειδιών, είναι και το πιο ασφαλές της οικογένειας. Στο 1ΚΡ ο Πελάτης και ο Έµπορος δε χρειάζεται να έχουν ζεύγος κλειδιών. Ωστόσο, πρέπει να µπορούν να επαληθεύσουν την αυθεντικότητα των µηνυµάτων που προέρχονται από την Τράπεζα. Εποµένως, πρέπει να έχουν το δηµόσιο κλειδί της αρχής πιστοποίησης που εκδίδει τα πιστοποιητικά των τραπεζών. Έτσι, όταν ο Πελάτης ή ο Έµπορος λάβουν ένα πιστοποιητικό από µια Τράπεζα, µπορούν να χρησιµοποιήσουν το δηµόσιο κλειδί της αρχής πιστοποίησης για να επαληθεύσουν τη γνησιότητα του πιστοποιητικού. Επειδή δεν υπάρχουν πολλές τράπεζες, µια εταιρεία πιστωτικών καρτών µπορεί να εκδίδει τα πιστοποιητικά αυτά µόνη της. Ο Πελάτης αυθεντικοποιείται µέσω του αριθµού της κάρτας του και πιθανόν ενός αριθµού ΡΙΝ. Αν και το σύστηµα αυτό είναι απλό, δεν παρέχει υπηρεσίες µη αµφισβήτησης για µηνύµατα που στέλνονται είτε από τον Πελάτη είτε από τον Έµπορο. Συνεπώς, το σύστηµα 1ΚΡ δεν υποστηρίζει τα απαραίτητα προκειµένου να επιλυθούν διαφωνίες σχετικές µε τα µηνύµατα πληρωµής. Το πρόβληµα αυτό λύνεται µερικά στο πρωτόκολλο 2ΚΡ (µόνο για τα µηνύµατα του Εµπόρου) και ολικά στο 3ΚΡ, το οποίο όµως απαιτεί την ύπαρξη και λειτουργία µιας πλήρους υποδοµής δηµόσιου κλειδιού.
135
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
136
¶ƒø∆√∫√§§√ SET
Μια κοινοπραξία µε επικεφαλής τη MasterCard επέκτεινε τα πρωτόκολλα iKP και τα ενέταξε σε µια εφαρµογή µε διαχείριση κλειδιών και καλύτερη διαδικασία εκκαθάρισης. Η εφαρµογή αυτή είναι γνωστή µε το όνοµα Secure Electronic Payment Protocol (SEPP). Εκτός από την IBM και τη MasterCard, στην ανάπτυξη του SEPP συµµετείχαν επίσης η Netscape Communications, η GTE και η CyberCash. Την ίδια εποχή της ανάπτυξης του SEPP, µια άλλη κοινοπραξία της Microsoft µε τη Visa και ακόµη κάποιες εταιρείες σχεδίαζε ένα παρόµοιο µε το SEPP σύστηµα, µε το όνοµα Secure Transaction Technology (STT). Υπήρχαν, λοιπόν, δύο κοινοπραξίες και τα αντίστοιχα συστήµατα που ανταγωνίζονταν για την ίδια αγορά. Το Φεβρουάριο του 1996 ανακοινώθηκε ότι οι Visa και MasterCard, όλες οι εταιρείες που συµµετείχαν στις κοινοπραξίες SEPP και STT και, επιπλέον, οι SAIC, Terisa και Verisign και άλλες συµφώνησαν να αναπτύξουν από κοινού ένα ανοικτό πρότυπο για ασφαλείς πληρωµές µέσω πιστωτικών καρτών µέσω του Internet. Το πρότυπο αυτό ονοµάστηκε Secure Electronic Transactions (SET). Η προδιαγραφή SET αποτελείται από τρία µέρη (ή βιβλία, όπως ονοµάζονται στην ορολογία SET): • Βιβλίο 1: Επιχειρηµατική Περιγραφή • Βιβλίο 2: Οδηγός Προγραµµατιστή • Βιβλίο 3: Τυπικός Ορισµός Πρωτοκόλλου Όπως και τα πρωτόκολλα iKP, έτσι και το SET αναφέρεται σε συναλλαγές µεταξύ τριών µερών, δηλαδή του Πελάτη, του Εµπόρου και της Τράπεζας. Στο SET και τα τρία µέρη απαιτείται να έχουν ζεύγος δηµόσιου–ιδιωτικού κλειδιού. Στην πραγµατικότητα τα περισσότερα µέρη έχουν δύο ζεύγη κλειδιών, ένα για ανταλλαγή κλειδιών και ένα για ψηφιακές υπογραφές. Ο Πελάτης και ο Έµπορος αποκτούν τα πιστοποιητικά δηµόσιου κλειδιού, όταν εγγράφονται και πριν αρχίσουν τις συναλλαγές. Σε κάθε περίπτωση, το SET απαιτεί την ύπαρξη και λειτουργία µιας πλήρους ιεραρχίας πιστοποίησης Χ509. Επιπλέον, το πρωτόκολλο µπορεί να χειριστεί και ανάκληση πιστοποιητικών, είτε ανακαλώντας τις πιστωτικές κάρτες είτε χρησιµοποιώντας καταλόγους ανάκλησης πιστοποιητικών Χ509 (Certificate Revocation Lists – CRLs). Είναι κοινά αποδεκτό ότι ένα πρωτόκολλο ηλεκτρονικής πληρωµής µε πιστωτική κάρτα πρέπει να δίνει στον Έµπορο µόνο τις πληροφορίες της παραγγελίας, όπως τα αγορασθέντα είδη και τις αντίστοιχες τιµές, και στην Τράπεζα µόνο τις πληροφορίες
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
137
της πιστωτικής κάρτας. Ειδικότερα, ο Έµπορος δεν πρέπει να απαιτεί πληροφορίες για την πιστωτική κάρτα του Πελάτη, εφόσον η Τράπεζα εξουσιοδοτεί την πληρωµή. Οµοίως, δεν υπάρχει κανένας λόγος η Τράπεζα να γνωρίζει τα αγορασθέντα είδη, εκτός από µερικές πολύ ειδικές περιπτώσεις αγοράς αντικειµένων ιδιαίτερα µεγάλης αξίας, όπως, π.χ., στην περίπτωση αγοράς αυτοκινήτων πολυτελείας ή σπιτιών. Στις περιπτώσεις αυτές είναι πιθανόν η Τράπεζα να θέλει να σιγουρευτεί ότι ο πελάτης είναι σε θέση να αποπληρώσει την αγορά του. Ο χωρισµός αυτός της διαθέσιµης πληροφορίας υλοποιείται µε έναν πολύ απλό αλλά αποτελεσµατικό κρυπτογραφικό µηχανισµό, που είναι γνωστός ως διπλή υπογραφή. Στην ουσία δύο τµήµατα ενός µηνύµατος υπογράφονται διπλά υπολογίζοντας χωριστές τιµές σύνοψης, συνενώνοντάς τες, και υπογράφοντας ψηφιακά το αποτέλεσµα. Ο ένας παραλήπτης λαµβάνει τη µη κρυπτογραφηµένη µορφή του πρώτου τµήµατος του µηνύµατος και την τιµή σύνοψης του δεύτερου τµήµατος και ο άλλος τα αντίθετα. Έτσι, ο κάθε παραλήπτης µπορεί να επιβεβαιώσει την αυθεντικότητα και ακεραιότητα ολόκληρου του µηνύµατος, αλλά µπορεί µόνο να διαβάσει τη µη κρυπτογραφηµένη µορφή του τµήµατος του µηνύµατος που προορίζεται ειδικά γι’ αυτόν. Το άλλο τµήµα παραµένει µόνο ως τιµή σύνοψης, η οποία αποκρύπτει το πραγµατικό περιεχόµενο. Ας υποθέσουµε ότι ο Πελάτης έχει επιλέξει κάποια είδη για αγορά και θέλει να ξεκινήσει τη διαδικασία πληρωµής του Εµπόρου µε πιστωτική κάρτα. Ο Πελάτης κατασκευάζει δύο σύνολα πληροφοριών: • Τις Πληροφορίες Παραγγελίας (ΠΠ) • Τις Οδηγίες Πληρωµής (ΟΠ) Οι πληροφορίες παραγγελίας περιέχουν πληροφορίες σχετικές µε τα είδη που αγοράστηκαν, όπως τα αγαθά ή τις υπηρεσίες, και τις αντίστοιχες τιµές, ενώ οι οδηγίες πληρωµής περιέχουν πληροφορίες σχετικές µε την πληρωµή µέσω πιστωτικής κάρτας, όπως τον αριθµό της κάρτας και την ηµεροµηνία λήξης της.
1 Πελάτης
Έµπορος 4
3 2
Tράπεζα
™¯‹Ì· 4.5
Φάσεις συναλλαγής µε το πρωτόκολλο SET
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
138
Στη συνέχεια, ο Πελάτης δηµιουργεί δύο τυχαία κλειδιά συνόδου. Κρυπτογραφεί τις ΠΠ µε το πρώτο κλειδί συνόδου και το δηµόσιο κλειδί ανταλλαγής κλειδιών του Εµπόρου, και τις ΟΠ µε το δεύτερο κλειδί συνόδου και το δηµόσιο κλειδί ανταλλαγής κλειδιών της Τράπεζας. Επίσης, υπολογίζει τις τιµές σύνοψης h(ΠΠ) και h(ΟΠ) και χρησιµοποιεί το ιδιωτικό του κλειδί υπογραφής για να δηµιουργήσει µια διπλή υπογραφή για τη συνένωση των δύο τιµών σύνοψης (h(ΠΠ), h(ΟΠ)). Στη συνέχεια, ο Πελάτης στέλνει τις κρυπτογραφηµένες ΠΠ και ΟΠ, h(ΠΠ) και h(ΟΠ), όπως και τη διπλή υπογραφή στον Έµπορο (Βήµα 1 στο Σχήµα 4.5). Ο Έµπορος µπορεί µόνο να αποκρυπτογραφήσει τις ΠΠ µε το δικό του ιδιωτικό κλειδί ανταλλαγής κλειδιών. Προωθεί όµως τις κρυπτογραφηµένες ΟΠ, h(ΟΠ), h(ΠΠ) και τη διπλή υπογραφή στην Τράπεζα (Βήµα 2). Η Τράπεζα, µε τη σειρά της, µπορεί µόνο να αποκρυπτογραφήσει τις ΟΠ µε το δικό της ιδιωτικό κλειδί ανταλλαγής κλειδιών. Ελέγχει κατά πόσο η πληρωµή είναι εξουσιοδοτηµένη. Η επικοινωνία αυτή µπορεί να γίνει µέσω του Banknet και δε χρειάζεται περαιτέρω εξασφάλιση. Σε κάθε περίπτωση, η Τράπεζα ανακοινώνει την εξουσιοδότηση ή µη της πληρωµής στον Έµπορο (Βήµα 3) και αυτός ειδοποιεί τον Πελάτη αν θα δεχτεί ή όχι τη συναλλαγή (Βήµα 4). 4.4.4 MÈÎÚÔÏËڈ̤˜
Ένας σηµαντικός παράγοντας στην αξιολόγηση ενός συστήµατος πληρωµής είναι το κόστος της πραγµατοποίησης των πληρωµών σε σχέση µε το πραγµατικό ποσό της πληρωµής. Εκτός από το κόστος που δηµιουργείται λόγω των επιπλέον συναλλαγών που απαιτούνται για να υλοποιηθεί ένα σύστηµα πληρωµής, οι τράπεζες µπορεί να χρεώσουν και τις προσφερόµενες απ’ αυτές υπηρεσίες. Οι υπηρεσίες αυτές ή τέλη συναλλαγής µπορεί να χρεώνονται κάθε φορά που προσπελάζεται ένας λογαριασµός ή πιστωτική κάρτα και µπορεί να αποτελούν ένα σηµαντικό τµήµα του συνολικού κόστους υλοποίησης του συστήµατος πληρωµής. Στα συστήµατα µικροπληρωµών, όπου η συνολική πληρωµή συνήθως δεν ξεπερνάει τις µερικές εκατοντάδες δραχµές, το λειτουργικό κόστος δεν πρέπει να ξεπερνάει τις µερικές δραχµές. Η σχεδίαση αποτελεσµατικών τέτοιων συστηµάτων είναι ακόµη στο στάδιο της έρευνας. Η βασική ιδέα είναι να αντικατασταθούν οι υπηρεσίες δηµόσιου κλειδιού από µονόδροµες συναρτήσεις σύνοψης µε κλειδί. Το κύριο πλεονέκτηµα της αντικατάστασης αυτής είναι η αποτελεσµατικότητα, ενώ το κύριο µειονέκτηµα είναι η πλήρης αδυναµία παροχής υπηρεσιών µη αµφισβήτησης. Τα διαθέσιµα σήµερα συστήµατα µικροπληρωµών συµπεριλαµβάνουν τα Millicent PayWord, MicroMint, CyberCoin και NetBill.
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
139
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.16 Ποια πρωτόκολλα προδιαγράφει η JEPI;
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.17 Αντιστοιχίστε τα συστήµατα ηλεκτρονικής συναλλαγής της αριστερής στήλης µε τα εµπλεκόµενα µέρη της δεξιάς στήλης: 1. Ηλεκτρονικό χρήµα
1. Τράπεζα Πελάτη
2. Ηλεκτρονική επιταγή
2. Πελάτης
3. Πληρωµή µέσω πιστωτικής κάρτας
3. Έµπορος 4. ∆ιατραπεζικός Οργανισµός 5. Κάτοχος κάρτας 6. Κέντρο ∆ιαχείρισης Πιστοποιητικών 7. Εκδούσα Τράπεζα 8. Τράπεζα Εµπόρου
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.18 Αντιστοιχίστε τις κύριες φάσεις µιας ηλεκτρονικής συναλλαγής της αριστερής στήλης µε τα είδη ηλεκτρονικών συναλλαγών της δεξιάς στήλης: 1. Απόκτηση
1. Ηλεκτρονικό χρήµα
2. Αγορά αγαθών
2. Ηλεκτρονική επιταγή
3. Κατάθεση αξιογράφου στην Τράπεζα Εµπόρου για εξαργύρωση
3. Πληρωµή µέσω πιστωτικής κάρτας
4. Ενηµέρωση Πελάτη από Τράπεζα για δαπάνη 5. Είσπραξη αξιογράφου µέσω ∆ιατραπεζικού Οργανισµού
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
140
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.19 Ποια χαρακτηριστικά πρέπει να ικανοποιεί κάθε σύστηµα ηλεκτρονικού χρήµατος;
¢Ú·ÛÙËÚÈfiÙËÙ· 4.7 Eντοπίστε κόµβους στο WWW που περιγράφουν συστήµατα ηλεκτρονικού χρήµατος. Στη συνέχεια καταρτίστε ένα συγκριτικό πίνακα µεταξύ αυτών των συστηµάτων, στον οποίο να φαίνονται συγκεντρωτικά οι οµοιότητες και οι διαφορές τους. Τα κριτήρια που µπορείτε να χρησιµοποιήσετε για τη σύγκριση µπορούν να περιλαµβάνουν τη χρησιµοποιούµενη τεχνολογία, τα χαρακτηριστικά του συστήµατος σε σχέση µε τα χαρακτηριστικά του φυσικού χρήµατος, τη διάδοση που έχει το σύστηµα, τους περιορισµούς στη χρήση του κτλ.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.20 Ποιες εναλλακτικές λύσεις έχουµε προκειµένου να επιβεβαιώσουµε ότι ένα νόµισµα δεν έχει ξαναχρησιµοποιηθεί σε συστήµατα ηλεκτρονικού χρήµατος τύπου offline;
¢Ú·ÛÙËÚÈfiÙËÙ· 4.8 Eντοπίστε κόµβους στο WWW που περιγράφουν συστήµατα ηλεκτρονικών επιταγών. Στη συνέχεια καταρτίστε ένα συγκριτικό πίνακα µεταξύ αυτών των συστηµάτων στον οποίο να φαίνονται συγκεντρωτικά οι οµοιότητες και οι διαφορές τους. Τα κριτήρια που µπορείτε να χρησιµοποιήσετε για τη σύγκριση µπορούν να περιλαµβάνουν τη χρησιµοποιούµενη τεχνολογία, τα χαρακτηριστικά του συστήµατος σε σχέση µε τα χαρακτηριστικά των φυσικών επιταγών, τη διάδοση που έχει το σύστηµα, τους περιορισµούς στη χρήση του κτλ.
4 . 4 ™ À ™ ∆ ∏ ª ∞∆∞ ∏ § ∂ ∫ ∆ ƒ √ ¡ π ∫ ø ¡ ¶ § ∏ ƒ ø ª ø ¡
141
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.21 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Τα πρωτόκολλα iKP παρέχουν, εκτός από κρυπτογραφική προστασία, και ίχνος ελέγχου.
❏
❏
2. Υπάρχουν δύο πρωτόκολλα iKP.
❏
❏
3. Σε όλα τα πρωτόκολλα iKP απαιτείται όλα τα µέρη να έχουν στην κατοχή τους ζεύγος δηµόσιου–ιδιωτικού κλειδιού.
❏
❏
4. Τα απαιτούµενα από τα πρωτόκολλα iKP πιστοποιητικά µπορούν να εκδίδονται από την εταιρεία πιστωτικής κάρτας.
❏
❏
5. Το πρωτόκολλο SET παρέχει, εκτός από κρυπτογραφική προστασία, και ίχνος ελέγχου.
❏
❏
6. Στο πρωτόκολλο SET απαιτείται όλα τα µέρη να έχουν στην κατοχή τους ζεύγος δηµόσιου – ιδιωτικού κλειδιού.
❏
❏
7. Τα απαιτούµενα από τo πρωτόκολλo SET πιστοποιητικά µπορούν να εκδίδονται από την εταιρεία πιστωτικής κάρτας.
❏
❏
8. Το πρωτόκολλο SET υποστηρίζει το µηχανισµό διπλής υπογραφής.
❏
❏
9. Τα συστήµατα µικροπληρωµών υποστηρίζουν την υπηρεσία µη αµφισβήτησης.
❏
❏
¢Ú·ÛÙËÚÈfiÙËÙ· 4.9 Eντοπίστε κόµβους στο WWW που περιγράφουν συστήµατα µικροπληρωµών. Στη συνέχεια καταρτίστε ένα συγκριτικό πίνακα µεταξύ αυτών των συστηµάτων στον οποίο να φαίνονται συγκεντρωτικά οι οµοιότητες και οι διαφορές τους. Τα κριτήρια που µπορείτε να χρησιµοποιήσετε για τη σύγκριση µπορούν να περιλαµβάνουν τη χρησιµοποιούµενη τεχνολογία, τα χαρακτηριστικά του συστήµατος σε σχέση µε τα χαρακτηριστικά των φυσικών µικροπληρωµών, τη διάδοση που έχει το σύστηµα, τους περιορισµούς στη χρήση του κτλ.
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
142
4.5 AÛÊ¿ÏÂÈ· EDI
Ο όρος Electronic Data Interchange (EDI) σηµαίνει την ηλεκτρονική ανταλλαγή τυποποιηµένων εµπορικών εγγράφων σε δοµηµένη και –κατά συνέπεια– αυτόµατα επεξεργάσιµη µορφή. Ο σκοπός του είναι, βέβαια, η ταχεία επεξεργασία εµπορικών εγγράφων και η, µέσω αυτής, διευκόλυνση των εµπορικών συναλλαγών. Η χρήση της τεχνολογίας EDI µπορεί να ελαττώσει το χρόνο ολοκλήρωσης εµπορικών συναλλαγών, τις ανάγκες αποθήκευσης, τις µη αυτοµατοποιηµένες λειτουργίες και το ™¯‹Ì· 4.6 κόστος, ενώ µπορεί να αυξήσει τα έσοδα της επιχείρησης αλλά και την ικανοποίη∆οµή µηνύµατος ση των πελατών. Τα συστήµατα EDI µπορούν να χειριστούν ποικιλία εµπορικών EDIFACT εγγράφων, όπως εντολές αγοράς, χρονοδιαγράµµατα, επιβεβαιώσεις, τιµολόγια, φορτωτικές, αποδείξεις, πληρωµές. Interchange Control Header (UNB) Functional Group Header (UNG) Message Header (UNH) Data Segment …. Data Segment Message Trailer (UNT) Functional Group Trailer (UNE) … Functional Group Header (UNG) Message Header (UNH) Data Segment …. Data Segment Message Trailer (UNT) Functional Group Trailer (UNE) Interchange Control Trailer (UNZ)
Για να διευκολυνθεί η χρήση της τεχνολογίας µεταξύ εµπορικών επιχειρήσεων, αναπτύχθηκαν δύο σειρές σχετικών προτύπων: τα αµερικανικά πρότυπα ANSI X12 EDI και τα διεθνή πρότυπα EDIFACT (EDI For Administration, Commerce and Transport). Επειδή οι διαφορές µεταξύ των δύο προτύπων περιορίζονται στην ονοµατολογία, θα περιοριστούµε στη συζήτηση των προτύπων EDIFACT, λόγω της πολύ ευρύτερης διάδοσής τους. Στο πρότυπο EDIFACT ένα ή περισσότερα µηνύµατα, καθένα από τα οποία σχετίζεται µε µια συγκεκριµένη συναλλαγή, π.χ. µε την τοποθέτηση µιας εντολής αγοράς ή την έκδοση ενός τιµολογίου, οµαδοποιούνται και σχηµατίζουν µια ανταλλαγή (interchange). Το πρότυπο ορίζει µια δοµή φακέλου ανταλλαγής µηνυµάτων, που αποτελείται από µια επικεφαλίδα ελέγχου ανταλλαγής (interchange control header), µια κατακλείδα ελέγχου ανταλλαγής (interchange control trailer) και µία ή περισσότερες λειτουργικές οµάδες (functional groups), που περιέχουν ένα ή περισσότερα µηνύµατα. Κάθε µήνυµα έχει µια επικεφαλίδα, µια κατακλείδα και ένα ή περισσότερα τµήµατα δεδοµένων. Έτσι, µια ανταλλαγή µπορεί να παροµοιαστεί µε έναν εξωτερικό φάκελο που περιέχει έναν ή περισσότερους εσωτερικούς υποφακέλους (µηνύµατα). Η δοµή ενός τέτοιου µηνύµατος φαίνεται στο Σχήµα 4.6.
4.5 A™º∞§∂π∞ EDI
Αντίστοιχα, στο EDIFACT καθορίζονται δύο επίπεδα ασφάλειας: ασφάλεια στο επίπεδο της ανταλλαγής και ασφάλεια στο επίπεδο του µηνύµατος. Για να υλοποιηθεί αυτό, τοποθετούνται επιπρόσθετες επικεφαλίδες και κατακλείδες ασφάλειας µέσα στους φακέλους ανταλλαγής και µηνυµάτων. Στην πράξη όµως η επιλογή της ασφάλειας στο επίπεδο µηνύµατος είναι προτιµότερη, αφού κάποιο πρόβληµα ασφάλειας στο επίπεδο αυτό δεν οδηγεί σε απόρριψη ολόκληρης της ανταλλαγής, αλλά µόνο του συγκεκριµένου προβληµατικού µηνύµατος. Τα χαρακτηριστικά της δοµής ασφάλειας EDIFACT επιπέδου µηνύµατος είναι τα ακόλουθα: • Παροχή υπηρεσιών ασφάλειας απ’ άκρη σ’ άκρη µεταξύ συναλλασσόµενων εταίρων, υπηρεσίες που είναι διαφανείς στα υποκείµενα πρωτόκολλα επικοινωνίας. • Ανεξαρτησία από και διαφάνεια προς τα χρησιµοποιούµενα µέσα επικοινωνίας. • Ανοικτή φιλοσοφία, που υποστηρίζει τη χρήση όλων των υπαρχόντων µηχανισµών ασφάλειας που είναι συµβατοί µε τις υπηρεσίες ασφάλειας. Σφαιρική προσέγγιση, εφαρµόσιµη σε οποιοδήποτε µήνυµα, ανεξάρτητα από εµπορική εφαρµογή. Οι υπηρεσίες ασφάλειας που παρέχονται από το EDIFACT είναι οι εξής: • Έλεγχος πρόσβασης. Όλα τα δεδοµένα EDI συγκεντρώνονται στο γραµµατοκιβώτιο EDI και δροµολογούνται µέσω των κωδικών αναγνώρισης παραλήπτη στους εξωτερικούς φακέλους EDI. Οι κωδικοί αυτοί προσδιορίζουν τις διευθύνσεις αποστολέα και παραλήπτη, καθώς και τα ηλεκτρονικά έγγραφα που στέλνονται και περιέχονται στην επικεφαλίδα ανταλλαγής. Η πρόσβαση στο γραµµατοκιβώτιο ελέγχεται µέσω ενός κωδικού αναγνώρισης και ενός συνθηµατικού. • Ακεραιότητα δεδοµένων. Αυτή παρέχεται µέσω της δοµής ασφάλειας EDIFACT. Στην επικεφαλίδα ασφάλειας υπάρχει ένα πεδίο που προσδιορίζει τον αλγόριθµο που χρησιµοποιείται για ακεραιότητα δεδοµένων. • Ψηφιακές υπογραφές. Η δοµή ασφάλειας του EDIFACT παρέχει την υποδοµή ψηφιακών υπογραφών, που επιτρέπει στους συναλλασσόµενους εταίρους να υπογράφουν ψηφιακά τα µηνύµατά τους. • Μη αµφισβήτηση. Το πρότυπο EDIFACT ορίζει το µήνυµα AUTACK, µέσω του οποίου είναι δυνατόν να παρασχεθεί η υπηρεσία µη αµφισβήτησης αποστολέα και παραλήπτη. • Ακεραιότητα σειράς µηνυµάτων. Μέσω της αρίθµησης µηνυµάτων, το πρότυπο
143
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
144
EDIFACT παρέχει την υπηρεσία αυτή, που µπορεί να χρησιµοποιηθεί για να αποτρέψει την αναπαραγωγή, πρόσθεση, διαγραφή, απώλεια ή επανάληψη µηνυµάτων.
™¯‹Ì· 4.7
∆οµή ενός ασφαλούς µηνύµατος EDIFACT
Υπάρχουν τρεις οµάδες τµηµάτων στη δοµή ασφάλειας επιπέδου µηνύµατος του EDIFACT. Η οµάδα τµηµάτων 1 (SGMTG1) περιέχει το τµήµα µε την επικεφαλίδα ασφάλειας (USH) και το τµήµα µε τον αλγόριθµο ασφάλειας (USA), καθώς επίσης, προαιρετικά, και την οµάδα τµηµάτων 2 (SGMTG2), αν χρησιµοποιούνται ασύµµετροι αλγόριθµοι. Η οµάδα τµηµάτων 2 περιλαµβάνει τα τµήµατα µε τα πιστοποιητικά (USC), τον αλγόριθµο ασφάλειας (USA) και το αποτέλεσµα ασφάλειας (USR). Τέλος, η οµάδα τµηµάτων 3 (SGMTG3) περιλαµβάνει το τµήµα µε την κατακλείδα ασφάλειας (UST) και το τµήµα µε το αποτέλεσµα ασφάλειας (USR). Η δοµή, λοιπόν, ενός ασφαλούς µηνύµατος EDIFACT είναι όπως φαίνεται στο Σχήµα 4.7.
Interchange Control Header (UNB) Functional Group Header (UNG) Message Header (UNH) Security Segment Group 1 (SGMTG1) Security Header (USH) Security Algorithm (USA) Security Segment Group 2 (SGMTG2) Certificate (USC) Security Algorithm (USA) Security Result (USR) Security Segment Group 3 (SGMTG3) Security Trailer (UST) Security Result (USR) Message Trailer (UNT)
Το τµήµα µε την επικεφαλίδα ασφάλειας είναι σχεδιασµένο έτσι ώστε να καθορίζει τις µεθόδους ασφάλειας που θα εφαρµοστούν στο µήνυµα και έτσι ώστε να κρατάει τα δεδοµένα που είναι απαραίτητα για τους υπολογισµούς επαλήθευσης. Κάθε επικεφαλίδα σχετίζεται µε µια κατακλείδα. Το τµήµα µε την κατακλείδα είναι σχεδιασµένο να κρατάει το αποτέλεσµα ασφάλειας που αντιστοιχεί στις λειτουργίες ασφάλειας που καθορίζονται στην κατακλείδα. Το τµήµα µε τον αλγόριθµο ασφάλειας καθορίζει τον αλγόριθµο ασφάλειας και τις τεχνικές παραµέτρους που θα εφαρµοστούν στο µήνυµα. Το τµήµα µε τα πιστοποιητικά περιέχει τις πληροφορίες των διαπιστευτηρίων του κατόχου του πιστοποιητικού και τις πληροφορίες της αρχής πιστοποίησης που εξέδωσε το πιστοποιητικό. Το τµήµα µε το αποτέλεσµα ασφάλειας περιέχει το αποτέλεσµα της λειτουργίας ασφάλειας που εφαρµόστηκε στο µήνυµα ή στο πιστοποιητικό από την αρχή πιστοποίησης.
Functional Group Trailer (UNE) Interchange Control Trailer (UNZ)
Εκτός από τη δοµή ασφάλειας, το πρότυπο EDIFACT ορίζει το µήνυµα AUTACK για
4.5 A™º∞§∂π∞ EDI
145
την παροχή υπηρεσιών ασφάλειας σε µηνύµατα που στέλνονται χωριστά. Το µήνυµα αυτό µπορεί να χρησιµοποιηθεί ως µήνυµα αυθεντικοποίησης ή ως µήνυµα επιβεβαίωσης. Όταν χρησιµοποιείται ως µήνυµα αυθεντικοποίησης που στέλνεται από τον αποστολέα ή από κάποιον που λειτουργεί ως εκπρόσωπος του αποστολέα, διευκολύνει την αυθεντικοποίηση προέλευσης, την επαλήθευση της ακεραιότητας των περιεχοµένων, την επαλήθευση της ακεραιότητας της σειράς και τη µη αµφισβήτηση της αποστολής των µηνυµάτων. Όταν χρησιµοποιείται ως µήνυµα επιβεβαίωσης που στέλνεται από τον παραλήπτη ή από κάποιον που λειτουργεί ως εκπρόσωπος του παραλήπτη, διευκολύνει την επιβεβαίωση της παραλαβής, την επαλήθευση της ακεραιότητας των περιεχοµένων, την επαλήθευση της πληρότητας και τη µη αµφισβήτηση της παραλαβής των µηνυµάτων. Το µήνυµα AUTACK µπορεί να εφαρµοστεί σε ένα ή περισσότερα µηνύµατα, τα οποία µπορούν να ανήκουν σε µία ή περισσότερες ανταλλαγές. Σε σχέση µε τη δοµή ασφάλειας EDIFACT, στο AUTACK υπάρχει µια επιπλέον οµάδα τµηµάτων, η οµάδα τµηµάτων 3 (SGMTG3), η οποία περιέχει τα τµήµατα USX και USY. Το τµήµα USX χρησιµοποιείται για αναφορές στην οντότητα που ασφαλίζεται και στην ηµεροµηνία και στο χρόνο δηµιουργίας της. Το τµήµα USY χρησιµοποιείται για τον προσδιορισµό της εφαρµοστέας επικεφαλίδας, για την αποθήκευση του αποτελέσµατος ασφάλειας και για την ένδειξη της πιθανής αιτίας απόρριψης λόγω παραβίασης ασφάλειας της ασφαλιζόµενης οντότητας.
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.22 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Οι υπηρεσίες που παρέχονται από τη δοµή ασφάλειας επιπέδου µηνύµατος EDIFACT είναι διαφανείς στα υποκείµενα πρωτόκολλα επικοινωνίας.
❏
❏
2. Οι υπηρεσίες που παρέχονται από τη δοµή ασφάλειας επιπέδου µηνύµατος EDIFACT εξαρτώνται από τα χρησιµοποιούµενα µέσα επικοινωνίας.
❏
❏
3. Οι υπηρεσίες που παρέχονται από τη δοµή ασφάλειας επιπέδου µηνύµατος EDIFACT επιτρέπουν τη χρήση ήδη υπαρχόντων συµβατών µηχανισµών ασφάλειας.
❏
❏
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
146
4. Οι υπηρεσίες που παρέχονται από τη δοµή ασφάλειας επιπέδου µηνύµατος EDIFACT µπορούν να εφαρµοστούν σε οποιοδήποτε µήνυµα.
❏
❏
5. Το EDIFACT δεν παρέχει δυνατότητα ελέγχου πρόσβασης.
❏
❏
6. Το EDIFACT υποστηρίζει ψηφιακές υπογραφές.
❏
❏
7. Το EDIFACT παρέχει υπηρεσία µη αµφισβήτησης.
❏
❏
8. Το EDIFACT παρέχει την υπηρεσία ακεραιότητας δεδοµένων, αλλά όχι την υπηρεσία ακεραιότητας σειράς µηνυµάτων.
❏
❏
9. Υπάρχουν 3 οµάδες τµηµάτων στη δοµή ασφάλειας επιπέδου µηνύµατος του EDIFACT.
❏
❏
10.Το µήνυµα AUTACK χρησιµοποιείται µόνο ως µήνυµα αυθεντικοποίησης.
❏
❏
4.6 ¢È·¯Â›ÚÈÛË ‰ÈÎÙ‡ˆÓ
Τα πρωτόκολλα διαχείρισης δικτύων επιτρέπουν τη διαχείριση συστηµάτων, δικτύων και στοιχείων δικτύων, υποστηρίζουν διαχειριστικές λειτουργίες και παρέχουν εργαλεία που βοηθούν στη διάγνωση προβληµάτων στα δίκτυα. Υπάρχουν δύο µεγάλες οικογένειες προτύπων διαχείρισης δικτύων ανοικτών συστηµάτων: τα πρότυπα διαχείρισης OSI, που ορίζουν το πρωτόκολλο Common Management Information Protocol (CMIP), και τα πρότυπα διαχείρισης Internet, που ορίζουν το Simple Network Management Protocol (SNMP). Από τις δύο αυτές οικογένειες, η δεύτερη γνωρίζει πολύ µεγαλύτερη διάδοση. Για το λόγο αυτό, λοιπόν, θα περιοριστούµε σε µια πολύ περιληπτική παρουσίαση της πρώτης οικογένειας, ενώ θα συζητήσουµε τη δεύτερη µε µεγαλύτερη λεπτοµέρεια. 4.6.1 ¶ÚfiÙ˘· ‰È·¯Â›ÚÈÛ˘ OSI
Τα πρότυπα διαχείρισης OSI ορίζουν δύο σηµαντικές λειτουργίες ασφάλειας, τη λειτουργία Αναφοράς Συναγερµών Ασφάλειας (Security Alarm Reporting Function) και τη λειτουργία Ίχνους Ελέγχου Ασφάλειας (Security Audit Trail Function). Οι συναγερµοί ασφάλειας χρησιµοποιούνται για τη γνωστοποίηση παραβιάσεων ασφάλειας ή ύποπτων περιστατικών στους χειριστές συστηµάτων ή στους διαχειριστές δικτύων.
4.6 ¢π∞Ã∂πƒπ™∏ ¢π∫∆Àø¡
Τα ίχνη ελέγχου ασφάλειας καταγράφουν όχι µόνο τα ύποπτα περιστατικά, αλλά και συνηθισµένα γεγονότα που µπορεί αργότερα να αποδειχθεί ότι έχουν σχέση µε παραβιάσεις ή απόπειρες παραβιάσεων ασφάλειας. Η λειτουργία ίχνους ελέγχου υποστηρίζει τη µετάδοση πληροφοριών σε κάποιο σύστηµα που κρατάει ένα ηµερολόγιο ίχνους ελέγχου. Και οι δύο λειτουργίες χρησιµοποιούν το CMIP για τη µετάδοση πληροφοριών, σε τυποποιηµένη µορφή, µεταξύ του συστήµατος–διαχειριστή και του συστήµατος–διαχειριζόµενου. Τα πρότυπα διαχείρισης OSI περιλαµβάνουν επίσης ένα µοντέλο και τους συνακόλουθους ορισµούς αντικειµένων για την υποστήριξη ελέγχου πρόσβασης σε λειτουργίες διαχείρισης OSI. Το πρωτόκολλο CMIP έχει ελάχιστη ενσωµατωµένη ασφάλεια, αλλά ο βαθµός προστασίας που παρέχει µπορεί να αυξηθεί χρησιµοποιώντας πρωτόκολλα ασφάλειας χαµηλότερων επιπέδων. 4.6.2 ¶ÚfiÙ˘· ‰È·¯Â›ÚÈÛ˘ Internet
Το πρωτόκολλο SNMP αποτελεί τµήµα µιας οµάδας προτύπων Internet που υποστηρίζει τη διαχείριση συστηµάτων TCP/IP. ∞ƒÃπ∆∂∫∆√¡π∫√ ª√¡∆∂§√
Το αρχιτεκτονικό µοντέλο του SNMP περιλαµβάνει τουλάχιστον ένα σταθµό διαχείρισης δικτύου και έναν αριθµό στοιχείων δικτύου. Ο σταθµός διαχείρισης δικτύου είναι ένα σύστηµα που τρέχει το SNMP και εφαρµογές διαχείρισης δικτύου. Τα στοιχεία δικτύου είναι διαχειριζόµενα αντικείµενα, όπως υπολογιστές, δροµολογητές, πύλες ή εξυπηρετητές. Κάθε στοιχείο δικτύου περιέχει έναν πράκτορα διαχείρισης, ο οποίος υλοποιεί το SNMP και παρέχει πρόσβαση σε πληροφορίες διαχείρισης που αποτελούν την όψη της βάσης πληροφοριών διαχείρισης (Management Information Base – MIB) που βλέπει το στοιχείο δικτύου. Οι οντότητες που υλοποιούν το SNMP σε επικοινωνούντες σταθµούς διαχείρισης και στοιχεία δικτύου ονοµάζονται οντότητες πρωτοκόλλου SNMP ή, απλούστερα, οντότητες SNMP. Κάθε οντότητα SNMP λειτουργεί σε ρόλο διαχειριστή ή πράκτορα. Το SNMP, επίσης, επιτρέπει τη διαχείριση ενός αντικειµένου µέσω πληρεξούσιου πράκτορα. Αυτός λειτουργεί σε ρόλο πράκτορα σε σχέση µε κάποιο σταθµό διαχείρισης, αλλά προκειµένου να επεξεργαστεί µια αίτηση διαχείρισης πρέπει να επικοινωνήσει µε κάποιο απόµακρο διαχειριζόµενο σύστηµα. Η επικοινωνία αυτή µπορεί να βασίζεται είτε στο SNMP, οπότε µιλάµε για διαµόρφωση ηµεδαπού (native) πληρεξούσιου, είτε σε κάποιο άλλο πρωτόκολλο, οπότε µιλάµε για διαµόρφωση αλλο-
147
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
148
δαπού (foreign) πληρεξούσιου. Η τελευταία επιτρέπει σε διαχειριστές SNMP να διαχειρίζονται συσκευές που δεν υποστηρίζουν SNMP. ª√¡∆∂§√ ¶§∏ƒ√º√ƒπø¡
Οι πληροφορίες διαχείρισης σε κάθε στοιχείο δικτύου αντιπροσωπεύονται από ένα σύνολο διαχειριζόµενων αντικειµένων, που αποτελούν µέρος της βάσης ΜΙΒ. Κάθε διαχειριζόµενο αντικείµενο Internet είναι στην ουσία µια ειδική µορφή µεταβλητής δεδοµένων. Τα βασικά στοιχεία του ορισµού ενός στοιχείου είναι η σύνταξή του (τύπος ASN.1) και το όνοµά του (προσδιοριστής αντικειµένου ASN.1). Είναι δυνατόν ένας πράκτορας να αναγνωρίζει πολλά στιγµιότυπα του ίδιου αντικειµένου. Ένα στιγµιότυπο διαχειριζόµενου αντικειµένου ορίζεται από το όνοµα µεταβλητής του, που παράγεται προσθέτοντας έναν προσδιοριστή στιγµιότυπου στο τέλος του ονόµατος του αντικειµένου. Μια συλλογή σχετιζόµενων διαχειριζόµενων αντικειµένων αποτελεί ένα σπόνδυλο ΜΙΒ. Τα πρότυπα Internet ορίζουν διάφορους σπονδύλους ΜΙΒ. Κάθε χρήστης που εκτελεί µια λειτουργία σε ένα στοιχείο δικτύου µπορεί γενικά να δει µόνο ένα υποσύνολο µεταβλητών (δηλαδή στιγµιότυπων διαχειριζόµενων αντικειµένων) της ΜΙΒ. Το υποσύνολο αυτό ονοµάζεται SNMP όψη της ΜΙΒ. Κάθε πράκτορας SNMP µπορεί να διαµερίσει τη ΜΙΒ του σε διάφορες (πιθανόν επικαλυπτόµενες) όψεις. Η πολιτική προσπέλασης καθορίζει ποια όψη επιτρέπεται σε κάθε χρήστη και για κάθε λειτουργία. ¶ƒø∆√∫√§§√
Το SNMP θεωρεί όλες τις λειτουργίες των πρακτόρων διαχείρισης είτε ως αλλαγές είτε ως επιθεωρήσεις της τιµής µεταβλητών. Κατά συνέπεια, οι πρωταρχικές λειτουργίες του πρωτοκόλλου είναι εντολές εγγραφής και ανάγνωσης που δίνονται από κάποιο σταθµό διαχείρισης. Οι µόνες επιπλέον λειτουργίες είναι η επιθεώρηση, που επιτρέπει στο σταθµό διαχείρισης να προσδιορίσει ποιες µεταβλητές υποστηρίζει ένα στοιχείο δικτύου, και οι παγίδες, που επιτρέπουν την αναφορά έκτακτων περιστατικών από στοιχεία δικτύου προς το σταθµό διαχείρισης. Οι παγίδες δε µεταδίδουν οι ίδιες ουσιαστικές πληροφορίες στο σταθµό διαχείρισης, αλλά ειδοποιούν το σταθµό διαχείρισης ότι πρέπει να επικοινωνήσει µε το διαχειριζόµενο αντικείµενο για να διαβάσει πληροφορίες. Υπάρχουν έξι βασικές αλληλεπιδράσεις στο πρωτόκολλο SNMP, που εµπλέκουν επτά τύπους µονάδων δεδοµένων πρωτοκόλλου. Οι µονάδες αυτές περιέχουν προσ-
4.6 ¢π∞Ã∂πƒπ™∏ ¢π∫∆Àø¡
διοριστές αιτήσεων, που χρησιµοποιούνται για να συσχετίσουν τις απαντήσεις µε τις αιτήσεις. Έτσι, είναι δυνατόν να εκκρεµούν περισσότερες από µία αιτήσεις ταυτόχρονα. Το πρωτόκολλο, επίσης, επιτρέπει την εκτίµηση του χρόνου που απαιτείται για την ολοκλήρωση της διαδικασίας υποβολής αίτησης – λήψης απάντησης. Κάθε µονάδα δεδοµένων πρωτοκόλλου SNMP µεταδίδεται µέσα σε ένα µήνυµα SNMP. Ο τρόπος µε τον οποίο η µονάδα ενσωµατώνεται στο µήνυµα εξαρτάται από το διαχειριστικό µοντέλο που χρησιµοποιείται. ¢π∞Ã∂πƒπ™∆π∫√ ª√¡∆∂§√
Η έκδοση 1 του SNMP χρησιµοποιούσε ένα διαχειριστικό µοντέλο βασισµένο στην έννοια της κοινότητας, δηλαδή µιας σχέσης µεταξύ ενός πράκτορα SNMP και ενός ή περισσότερων σταθµών διαχείρισης. Κάθε κοινότητα αναγνωρίζεται από το όνοµά της. Η έννοια του τρόπου προσπέλασης SNMP ορίζεται ως µια δίτιµη µεταβλητή, που µπορεί να πάρει την τιµή read–only ή την τιµή read–write. Ένας τρόπος προσπέλασης SNMP µαζί µε µια SNMP όψη ΜΙΒ ορίζουν ένα προφίλ κοινότητας SNMP. Έτσι, κάθε προφίλ κοινότητας αντιπροσωπεύει συγκεκριµένα δικαιώµατα προσπέλασης στις µεταβλητές µιας συγκεκριµένης όψης ΜΙΒ. Χρησιµοποιώντας το µοντέλο αυτό, κάθε µήνυµα SNMP αποτελείται από έναν αριθµό έκδοσης, ένα όνοµα κοινότητας και µια απροστάτευτη µονάδα δεδοµένων πρωτοκόλλου. Ένας πράκτορας που θα λάβει το µήνυµα αυτό θα χρησιµοποιήσει το όνοµα κοινότητας για να διαπιστώσει τη νοµιµότητα της αίτησης και τα εφαρµοστέα δικαιώµατα προσπέλασης. Ο όρος τετριµµένο πρωτόκολλο αυθεντικοποίησης χρησιµοποιείται µερικές φορές για να περιγράψει τη λύση αυτή. Η έκδοση 2 του SNMP χρησιµοποιεί ένα ενισχυµένο διαχειριστικό µοντέλο, που εισάγει την έννοια του µέρους SNMP. Κάθε µήνυµα SNMP έχει ένα µέρος SNMP ως προέλευση και ένα άλλο µέρος SNMP ως προορισµό. Ένα µέρος SNMP αντιστοιχεί σε µια οντότητα SNMP που λειτουργεί κάτω από ένα συγκεκριµένο σύνολο περιορισµών, οι οποίοι είναι απόλυτα κατανοητοί από κάποια άλλη οντότητα SNMP µε την οποία υπάρχει επικοινωνία. Κάθε οντότητα SNMP µπορεί να χρειάζεται να γνωρίζει πολλά µέρη SNMP µε τα οποία επικοινωνεί. Για καθένα απ’ αυτά αναγνωρίζει µια ξεχωριστή ταυτότητα και διατηρεί πληροφορίες για την κατάστασή του και τα χαρακτηριστικά του. Επιπλέον, κάθε µοναδική οντότητα SNMP µπορεί να φαίνεται ως πολλά, διαφορετικά, µέρη SNMP από άλλες οντότητες SNMP. Κάθε µήνυµα SNMP έκδοσης 2 είναι µια κατασκευή που ονοµάζεται επικοινωνία διαχείρισης SNMP και αποτελείται από τα εξής συστατικά:
149
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
150
• Μέρος προορισµού. Ένας προσδιοριστής αντικειµένου ASN.1 που προσδιορίζει το SNMP µέρος προορισµού. • Μέρος προέλευσης. Ένας προσδιοριστής αντικειµένου ASN.1 που προσδιορίζει το SNMP µέρος προέλευσης. • Πλαίσιο αναφοράς. Ένας προσδιοριστής αντικειµένου ASN.1 που προσδιορίζει το σύνολο των πόρων διαχειριζόµενων αντικειµένων στο οποίο αναφέρεται η επικοινωνία. • Μονάδα δεδοµένων πρωτοκόλλου. Η µονάδα δεδοµένων πρωτοκόλλου SNMP που µεταφέρεται. Ο τρόπος µε τον οποίο η επικοινωνία διαχείρισης ενσωµατώνεται στα µηνύµατα SNMP εξαρτάται από τις χρησιµοποιούµενες επιλογές ασφάλειας. À¶∏ƒ∂™π∂™ ∞™º∞§∂π∞™
Οι δύο βασικές απειλές εναντίον του περιβάλλοντος SNMP θεωρούνται ότι είναι οι εξής: • Η µη εξουσιοδοτηµένη τροποποίηση δεδοµένων, κατά την οποία κάποιος µπορεί να τροποποιήσει ένα µήνυµα SNMP προκειµένου να προκαλέσει την εκτέλεση µιας µη εξουσιοδοτηµένης λειτουργίας διαχείρισης. • Η πλαστοπροσωπία, κατά την οποία ένα µη εξουσιοδοτηµένο µέρος προσποιείται ότι είναι κάποιο άλλο και δηµιουργεί ένα µήνυµα SNMP που προκαλεί την εκτέλεση µιας µη εξουσιοδοτηµένης λειτουργίας διαχείρισης. ∆ύο δευτερεύουσες απειλές είναι οι ακόλουθες: • Η τροποποίηση της ροής µηνυµάτων, κατά την οποία κάποια µηνύµατα SNMP µπορούν να αναδιαταχθούν, να καθυστερήσουν ή να επαναληφθούν, έτσι ώστε να προκαλέσουν την εκτέλεση µιας µη εξουσιοδοτηµένης λειτουργίας διαχείρισης. • Η ωτακοή, αφού µερικές φορές αποτελεί πρόβληµα η διαρροή πληροφοριών διαχείρισης. Εποµένως, οι απαιτούµενες υπηρεσίες ασφάλειας είναι οι επόµενες: • Ένας συνδυασµός των υπηρεσιών ακεραιότητας δεδοµένων και αυθεντικοποίησης προέλευσης δεδοµένων. • Ακεραιότητα σειράς µηνυµάτων. • Εµπιστευτικότητα δεδοµένων.
4.6 ¢π∞Ã∂πƒπ™∏ ¢π∫∆Àø¡
Η ανάλυση αυτή οδηγεί στον ορισµό δύο πρωτοκόλλων ασφάλειας SNMP. Το πρωτόκολλο Digest Authentication Protocol παρέχει τις υπηρεσίες ακεραιότητας δεδοµένων, αυθεντικοποίησης προέλευσης δεδοµένων και προστασίας ακεραιότητας σειράς µηνυµάτων. Το πρωτόκολλο Symmetric Privacy Protocol παρέχει την υπηρεσία προστασίας εµπιστευτικότητας δεδοµένων. Όταν χρησιµοποιείται αυτό το τελευταίο, είναι υποχρεωτική και η χρήση του πρώτου. ∆√ ¶ƒø∆√∫√§§√ DIGEST AUTHENTICATION PROTOCOL
Το πρωτόκολλο αυτό χρησιµοποιεί ένα τµήµα δεδοµένων, που ονοµάζεται πληροφορίες αυθεντικοποίησης και ενσωµατώνεται σε κάθε αυθεντικοποιηµένο µήνυµα SNMP, µαζί µε την κανονική µονάδα δεδοµένων πρωτοκόλλου SNMP. Το τµήµα αυτό αποτελείται από τέσσερα πεδία: • Χρονοσφραγίδα αυθεντικοποίησης προέλευσης (Source authentication time–stamp), που περιέχει το χρόνο δηµιουργίας του µηνύµατος, σύµφωνα µε το ρολόι του µέρους προέλευσης. Ο βασικός σκοπός του πεδίου αυτού είναι η προστασία από αναδιάταξη ή επανάληψη µηνυµάτων, δηλαδή η παροχή της υπηρεσίας ακεραιότητας σειράς µηνυµάτων. • Χρονοσφραγίδα αυθεντικοποίησης προορισµού (Destination authentication time–stamp), που περιέχει το χρόνο δηµιουργίας του µηνύµατος, σύµφωνα µε το ρολόι του µέρους προορισµού. Το πεδίο αυτό χρησιµοποιείται κυρίως για τη διευκόλυνση του συγχρονισµού των ρολογιών. • Περίληψη αυθεντικοποίησης (Authentication Digest), που περιέχει µια σφραγίδα η οποία υπολογίζεται στο σύνολο του µηνύµατος. Η διαδικασία υπολογισµού της σφραγίδας ουσιαστικά γίνεται εφαρµόζοντας µια συνάρτηση σύνοψης στη συνένωση του µηνύµατος και ενός µυστικού κλειδιού. Η συνιστώµενη συνάρτηση σύνοψης είναι ο αλγόριθµος MD5. Το µήκος τόσο της περίληψης όσο και του µυστικού κλειδιού είναι 128 bits. ∆√ ¶ƒø∆√∫√§§√ SYMMETRIC PRIVACY PROTOCOL
Το πρωτόκολλο αυτό παρέχει προστασία εµπιστευτικότητας κρυπτογραφώντας ένα αυθεντικοποιηµένο µήνυµα SNMP, που παράχθηκε από το πρωτόκολλο Digest Authentication Protocol. Η κρυπτογράφηση γίνεται µε συµµετρικό αλγόριθµο, που χρησιµοποιεί προσυµφωνηµένο µυστικό κλειδί. Ο συνιστώµενος αλγόριθµος είναι ο DES σε λειτουργία CBC. Το κλειδί έχει µήκος 128 bits και αποτελείται από το κλειδί DES (µήκους 56 bits συν 8 bits ισοτιµίας) και ένα διάνυσµα αρχικοποίησης µήκους 64 bits.
151
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
152
¢π∞Ã∂πƒπ™∏ ∞™º∞§∂π∞™ SNMP
Η χρήση των παραπάνω πρωτοκόλλων εξαρτάται από την ύπαρξη των εξής λειτουργιών διαχείρισης: • ∆ιαχείριση κλειδιών, τόσο των κλειδιών αυθεντικοποίησης όσο και των κλειδιών εµπιστευτικότητας. • Χαλαρός συγχρονισµός όλων των ρολογιών. • Εγκατάσταση και συντήρηση, σε κάθε σύστηµα, πληροφοριών που αφορούν τα µέρη SNMP µε τα οποία επικοινωνεί το σύστηµα. Το RFC που ορίζει το SNMP περιγράφει διαδικασίες µε τις οποίες ένας κεντρικός σταθµός διαχείρισης µπορεί να εκτελέσει τόσο τις λειτουργίες διαχείρισης κλειδιών όσο και το συγχρονισµό των ρολογιών πάνω από ένα άλλο σύνολο υλοποιήσεων SNMP. Φυσικά, τίποτε δεν αποκλείει τη χρήση ισχυρότερων συστηµάτων διαχείρισης κλειδιών, µε χρήση άλλων πρωτοκόλλων. Για να γίνει δυνατή η εγκατάσταση και συντήρηση πληροφοριών για µέρη SNMP, είναι απαραίτητη η χειροκίνητη διαµόρφωση ενός µικρού αριθµού µερών σε κάθε οντότητα SNMP, κατά τη στιγµή της αρχικής της εγκατάστασης. Απο εκεί και µετά, οι πληροφορίες οι σχετικές µε τα µέρη µπορούν να συντηρούνται από τον κεντρικό σταθµό διαχείρισης χρησιµοποιώντας το ίδιο το SNMP. ∂§∂°Ã√™ ¶ƒ√™¶∂§∞™∏™
Το διαχειριστικό µοντέλο της έκδοσης 2 του SNMP περιλαµβάνει ένα µοντέλο ελέγχου προσπέλασης που καθορίζει ποιες µονάδες δεδοµένων πρωτοκόλλου SNMP µπορούν νόµιµα να ανταλλαγούν µεταξύ µερών και αναφέρεται σε ένα συγκεκριµένο σύνολο πόρων διαχειριζόµενων αντικειµένων. Οι πληροφορίες ελέγχου προσπέλασης αποθηκεύονται στη µορφή λίστας ελέγχου προσπέλασης. Μόλις ληφθεί µια µονάδα δεδοµένων πρωτοκόλλου, το σύστηµα λήψης ελέγχει την εφαρµοστέα (τοπικά αποθηκευµένη) λίστα ελέγχου προσπέλασης για να διαπιστώσει αν επιτρέπεται η επικοινωνία.
4.6 ¢π∞Ã∂πƒπ™∏ ¢π∫∆Àø¡
153
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 4.23 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. ∆εν είναι δυνατή η διαχείριση στοιχείων δικτύου που δεν υποστηρίζουν το SNMP από σταθµό διαχείρισης SNMP.
❏
❏
2. Κάθε αντικείµενο αντιπροσωπεύεται από ένα και µόνο στιγµιότυπο.
❏
❏
3. Οι διάφορες όψεις στις οποίες ένας πράκτορας SNMP διαµερίζει τη ΜΙΒ του µπορεί να αλληλοκαλύπτονται.
❏
❏
4. Οι λειτουργίες του πρωτοκόλλου SNMP είναι εγγραφή, ανάγνωση, επιθεώρηση και παγίδες.
❏
❏
5. Στην έκδοση 1 του SNMP ο καθορισµός των δικαιωµάτων προσπέλασης βασιζόταν στην έννοια της κοινότητας.
❏
❏
6. Στην έκδοση 2 του SNMP το διαχειριστικό µοντέλο βασίζεται στην έννοια του µέρους SNMP.
❏
❏
7. Οι απειλές που λήφθηκαν υπόψη για τη σχεδίαση ασφάλειας της έκδοσης 2 του SNMP είναι η µη εξουσιοδοτηµένη τροποποίηση δεδοµένων, η ωτακοή και η τροποποίηση της ροής µηνυµάτων.
❏
❏
8. Το πρωτόκολλο Symmetric Privacy Protocol µπορεί να χρησιµοποιηθεί ανεξάρτητα από το Digest Authentication Ρrotocol.
❏
❏
9. Το SNMP καθορίζει µοναδικά το σύστηµα διαχείρισης κλειδιών που πρέπει να χρησιµοποιηθεί.
❏
❏
10. Το πρότυπο OSI ορίζει δύο βασικές λειτουργίες ασφάλειας.
❏
❏
11. Το SNMP παρέχει δύο υπηρεσίες ασφάλειας.
❏
❏
12. Κάθε οντότητα SNMP λειτουργεί πάντα σε ρόλο διαχειριστή ή σε ρόλο πράκτορα.
❏
❏
13. Η επικοινωνία διαχείρισης SNMP είναι ένα µήνυµα SNMPv2.
❏
❏
K E º A § A I O 4 : ∏ A ¡ ∞ ° ∫ ∏ ¶ ƒ √ ™ ∆∞ ™ π ∞ ™ ∆ ø ¡ ¶ § ∏ ƒ √ º √ ƒ π ø ¡
154
14. Η πλαστοπροσωπία δε θεωρείται απειλή κατά του SNMP.
❏
❏
15. Οι υπηρεσίες ασφάλειας SNMP παρέχονται από ένα µόνο πρωτόκολλο.
❏
❏
16. Για να υποστηριχτούν οι υπηρεσίες ασφάλειας SNMP, τα ρολόγια των σταθµών του δικτύου πρέπει να είναι τουλάχιστον χαλαρά συγχρονισµένα.
❏
❏
17. Το πρωτόκολλο SNMPv2 περιλαµβάνει ένα µοντέλο ελέγχου προσπέλασης.
❏
❏
¢Ú·ÛÙËÚÈfiÙËÙ· 4.10 Γιατί είναι σηµαντικός ο συγχρονισµός των ρολογιών όταν χρησιµοποιείται το πρωτόκολλο Digest Authentication Protocol; Αν το ρολόι ενός πράκτορα SNMP καθυστερεί (εκούσια ή ακούσια), ποια επίθεση µπορεί να εκδηλωθεί εύκολα; Περιγράψτε ένα σενάριο µιας τέτοιας επίθεσης σε έκταση όχι µεγαλύτερη από µια σελίδα.
™‡ÓÔ„Ë Στο κεφάλαιο αυτό ασχοληθήκαµε µε την ασφάλεια δικτύων στο επίπεδο εφαρµογής, και πιο συγκεκριµένα µε τη µία από τις δύο λύσεις που υπάρχουν στο πρόβληµα αυτό, δηλαδή την ενσωµάτωση υπηρεσιών ασφάλειας σε κάθε πρωτόκολλο επιπέδου εφαρµογής. Είδαµε αναλυτικά διάφορες οµάδες πρωτοκόλλων επιπέδου εφαρµογής µε ενσωµατωµένες υπηρεσίες ασφάλειας στις περιοχές εφαρµογών προσπέλασης τερµατικού από απόσταση, ηλεκτρονικού ταχυδροµείου, συναλλαγών WWW, ηλεκτρονικών πληρωµών, EDI και διαχείρισης δικτύων. Για καθεµιά περιοχή αναφέραµε τα κυριότερα πρωτόκολλα, συστήµατα ή πακέτα λογισµικού και συζητήσαµε τις υποστηριζόµενες απ’ αυτά υπηρεσίες ασφάλειας.
B I B § I O ° PA º I A
BÈ‚ÏÈÔÁÚ·Ê›· 1. Denning D. E., Denning P. J., Internet Besieged, ACM Press, 1998. 2. Ford W., Computer Communications Security, Prentice Hall, 1994. 3. Ghosh A. K., E–Commerce Security, John Wiley & Sons, 1998. 4. Gollmann D., Computer Security, John Wiley & Sons, 1999. 5. Kaufman C., Perlman R., Speciner M., Network Security, Prentice Hall, 1995. 6. Kou W., Networking Security and Standards, Kluwer Academic Publishers, 1997. 7. Loeb L., Secure Electronic Transactions, Artech House, 1998. 8. Rubin A. D. and Geer D. E., «A Survey of Web Security», IEEE Computer, 1998, pp. 34–42. 9. Segev A., Porra J. and Roldan M., «Internet Security and the Case of Bank of America», Communications of the ACM, Vol. 41, 1998, pp. 81–87. 10. Stallings W., Cryptography and Network Security, Prentice Hall, 1999. 11. Stallings W., Network and Internetwork Security, IEEE Press, 1995.
155
∫
∂
°ÂÓÈÎÂ˘Ì¤Ó· ™˘ÛÙ‹Ì·Ù· AÛÊ¿ÏÂÈ·˜ EÊ·ÚÌÔÁÒÓ ™ÎÔfi˜
5 º
Στο κεφάλαιο αυτό θα ασχοληθούµε µε τη δεύτερη επιλογή παροχής υπηρεσιών ασφάλειας στο επίπεδο εφαρµογής, δηλαδή µε τη χρήση γενικευµένων συστηµάτων ασφάλειας. Θα γνωρίσουµε τρεις κατηγορίες τέτοιων γενικευµένων συστηµάτων, τα συστήµατα αυθεντικοποίησης σε κατανεµηµένα υπολογιστικά περιβάλλοντα, τα δικτυακά ηλεκτρονικά αναχώµατα και τα συστήµατα ανίχνευσης εισβολών.
¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù· Όταν θα έχετε τελειώσει τη µελέτη του κεφαλαίου αυτού, θα µπορείτε να: • Περιγράψετε τη λειτουργία των συστηµάτων αυθεντικοποίησης Kerberos, NetSP, SPX, TESS και SESAME, • Αναφέρετε 3 στόχους σχεδίασης ηλεκτρονικών αναχωµάτων, • Περιγράψετε 4 γενικές τεχνικές ελέγχου που χρησιµοποιούνται στα αναχώµατα, • Περιγράψετε 4 τύπους αναχωµάτων, • Περιγράψετε 3 διαµορφώσεις αναχωµάτων, • Αναφέρετε 3 λόγους για τους οποίους κανένα ανάχωµα δεν είναι απόλυτα ασφαλές, • Περιγράψετε 2 µοντέλα συστηµάτων ανίχνευσης εισβολών, • Περιγράψετε 6 τεχνικές ανίχνευσης ανώµαλης συµπεριφοράς, • Περιγράψετε 5 τεχνικές ανίχνευσης κατάχρησης πόρων, • Αναφέρετε 9 χαρακτηριστικά ενός καλού συστήµατος ανίχνευσης εισβολών.
ŒÓÓÔȘ ÎÏÂȉȿ • συστήµατα αυθεντικοποίησης, • κατανεµηµένα υπολογιστικά περιβάλλοντα, • ηλεκτρονικά αναχώµατα, εσωτερικό δίκτυο, • διαδίκτυο
∞
§
∞
π
√
158
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Είπαµε στο προηγούµενο κεφάλαιο ότι από τη στιγµή που θα επιλέξουµε την παροχή υπηρεσιών ασφάλειας στο επίπεδο εφαρµογής έχουµε δύο εναλλακτικές λύσεις: ή θα ενσωµατώσουµε τις υπηρεσίες αυτές µέσα σε κάθε πρωτόκολλο επιπέδου εφαρµογής, δηµιουργώντας ένα ασφαλές πρωτόκολλο, ή θα αναπτύξουµε ένα γενικευµένο σύστηµα ασφάλειας που θα µπορεί να χρησιµοποιηθεί για να προσφέρει τις υπηρεσίες ασφάλειας σε οποιαδήποτε εφαρµογή. Στην πρώτη περίπτωση είναι απαραίτητο να τροποποιηθούν τα πρωτόκολλα ώστε να συµπεριλάβουν τα χαρακτηριστικά ασφάλειας, ενώ στη δεύτερη τροποποιείται η σύνταξη και η σηµασιολογία των µηνυµάτων, ενώ τα βασικά πρωτόκολλα παραµένουν αναλλοίωτα. Στο προηγούµενο κεφάλαιο συζητήσαµε την πρώτη λύση, ενώ στο κεφάλαιο αυτό θα εξετάσουµε τη δεύτερη. Γενικευµένα συστήµατα ασφάλειας είναι τα συστήµατα κατανεµηµένης αυθεντικοποίησης και διανοµής κλειδιών, τα ηλεκτρονικά αναχώµατα και τα συστήµατα ανίχνευσης εισβολής. Ανάλογη είναι και η οργάνωση του κεφαλαίου αυτού σε τρεις ενότητες, καθεµιά από τις οποίες είναι αφιερωµένη σε καθεµιά από τις κατηγορίες αυτές. Έτσι, η Ενότητα 5.1 αφορά συστήµατα αυθεντικοποίησης και διανοµής κλειδιών σε κατανεµηµένα υπολογιστικά περιβάλλοντα, η Ενότητα 5.2 πραγµατεύεται τα δικτυακά ηλεκτρονικά αναχώµατα και, τέλος, η Ενότητα 5.3 ασχολείται µε τα συστήµατα ανίχνευσης εισβολών.
5 . 1 ™ À ™ ∆ ∏ ª ∞ ∆ ∞ ∞ À £ ∂ ¡ ∆ π ∫ √ ¶ √ π ∏ ™ ∏ ™ ™ ∂ ∫ ∞ ∆ ∞ ¡ ∂ ª ∏ ª ∂ ¡ ∞ À ¶ √ § √ ° π ™ ∆ π ∫ ∞ ¶ ∂ ƒ π µ ∞ § § √ ¡ ∆∞
5.1 ™˘ÛÙ‹Ì·Ù· ·˘ıÂÓÙÈÎÔÔ›ËÛ˘ Û ηٷÓÂÌË̤ӷ ˘ÔÏÔÁÈÛÙÈο ÂÚÈ‚¿ÏÏÔÓÙ·
Τα συστήµατα αυθεντικοποίησης και διανοµής κλειδιών χρησιµοποιούνται σε δίκτυα και κατανεµηµένα συστήµατα προκειµένου να παράσχουν υπηρεσίες ασφάλειας στο επίπεδο εφαρµογής. Υπάρχουν διάφορα τέτοια συστήµατα διαθέσιµα σήµερα, αλλά εµείς θα επικεντρωθούµε στη µελέτη των συστηµάτων Kerberos (OSF, DCE), NetSP, SPX, TESS και SESAME. Θα περιγράψουµε τα συστήµατα αυτά σε αδρές γραµµές, κάνοντας ειδική αναφορά στις υπηρεσίες ασφάλειας που παρέχουν, τις κρυπτογραφικές τεχνικές που χρησιµοποιούν, τη συµµόρφωσή τους µε διεθνή πρότυπα και τη διαθεσιµότητα και εξαγωγιµότητά τους. Χρησιµοποιούµε τους παρακάτω συµβολισµούς: • Κεφαλαία γράµµατα αναφέρονται σε συµµετέχοντες (χρήστες, πελάτες, εξυπηρετητές). Τα ονόµατα χρηστών αρχίζουν από U, ενώ τα γράµµατα C και S χρησιµοποιούνται για να δηλώσουν τον πελάτη και τον εξυπηρετητή, αντίστοιχα. • Το σύµβολο Κ δηλώνει κλειδί συµµετρικού κρυπτοσυστήµατος. Οι συµµετέχοντες µπορούν να εµφανίζονται ως δείκτες. Έτσι, το κλειδί Κp είναι γνωστό µόνο στον Ρ (και πιθανόν και σε κάποιον κεντρικό εξυπηρετητή αυθεντικοποίησης), ενώ το κλειδί Κpq είναι γνωστό στους Ρ και Q. • Το σύµβολο (k, k–1) αναφέρεται σε ζεύγος κλειδιών ασύµµετρου κρυπτοσυστήµατος. Το δηµόσιο κλειδί είναι το k, ενώ το k–1 είναι το αντίστοιχο ιδιωτικό κλειδί. Και πάλι, οι συµµετέχοντες µπορούν να εµφανίζονται ως δείκτες. • Η έκφραση {Μ}Κ υποδηλώνει ένα µήνυµα Μ κρυπτογραφηµένο µε το κλειδί Κ. Αφού το ίδιο κλειδί χρησιµοποιείται και για την αποκρυπτογράφηση, {{Μ}Κ}Κ = Μ. Παροµοίως, η έκφραση {Μ}k υποδηλώνει ένα µήνυµα Μ κρυπτογραφηµένο µε το δηµόσιο κλειδί k. Το µήνυµα αυτό µπορεί να αποκρυπτογραφηθεί µόνο µε το αντίστοιχο ιδιωτικό κλειδί k–1. Όταν χρησιµοποιούµε κρυπτοσυστήµατα δηµόσιου κλειδιού για την ψηφιακή υπογραφή µηνυµάτων, το ιδιωτικό κλειδί χρησιµοποιείται για την υπογραφή και το δηµόσιο για την επαλήθευσή της. Στην περίπτωση αυτή η έκφραση {Μ}k–1 υποδηλώνει µια ψηφιακή υπογραφή που επιτρέπει την ανάκτηση µηνύµατος, ενώ η έκφραση [Μ]k–1 µια ψηφιακή υπογραφή µε παράρτηµα. Και στις δύο περιπτώσεις η ψηφιακή υπογραφή µπορεί να επαληθευτεί µόνο µε το αντίστοιχο δηµόσιο κλειδί k. • Το σύµβολο t υποδηλώνει χρονοσφραγίδα. ∆είκτες στο t υποδηλώνουν χρονικές διατάξεις.
159
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
160
• Το σύµβολο T υποδηλώνει εισιτήριο. Οι δείκτες στο Τ υποδηλώνουν το συµµετέχοντα που το χρησιµοποιεί και το συµµετέχοντα για τον οποίο προορίζεται. • Το σύµβολο Ν χρησιµοποιείται για να υποδηλώσει έναν τυχαίο και µη προβλέψιµο αριθµό (nonce). ∆είκτες του Ν καθορίζουν κάποιο συµµετέχοντα. Κάθε σύστηµα αυθεντικοποίησης και διανοµής κλειδιών υλοποιεί κρυπτογραφικά πρωτόκολλα. Γενικά, ένα πρωτόκολλο καθορίζει τη µορφή και το σχετικό χρονισµό πληροφοριών που ανταλλάσσονται µεταξύ των επικοινωνούντων µερών. Η έκφραση i: PÆQ: M υποδηλώνει το i–στο βήµα, κατά το οποίο ο P µεταδίδει το µήνυµα Μ στον Q. Προσέξτε! Το σύµβολο Æπρέπει να ερµηνευτεί µε προσοχή, επειδή όλα τα µηνύµατα αποστέλλονται σε περιβάλλοντα όπου µπορούν να συµβούν αλλοιώσεις, λάθη, απώλειες και καθυστερήσεις. ∆εν υπάρχει καµιά εγγύηση από το περιβάλλον ότι τα µηνύµατα πραγµατικά δηµιουργούνται σε αύξουσα σειρά από τους ενδεικνυόµενους συµµετέχοντες ούτε ότι παραλαµβάνονται σε αύξουσα σειρά ούτε ότι λαµβάνονται καν από τους ενδεικνυόµενους συµµετέχοντες ούτε ότι λαµβάνονται µόνο απ’ αυτούς. 5.1.1 Kerberos
Το σύστηµα αυθεντικοποίησης και διανοµής κλειδιών KERBEROS κατασκευάστηκε στο ΜΙΤ για να προστατεύσει τις υπηρεσίες δικτύου που αναπτύσσονταν στα πλαίσια του προγράµµατος Athena. Οι εκδόσεις 1 έως και 3 του KERBEROS χρησιµοποιούνταν µόνο εσωτερικά στο ΜΙΤ. Η έκδοση 4 (V4) διατέθηκε δηµόσια και χρησιµοποιήθηκε ευρύτατα. Η ανάπτυξη της έκδοσης 5 (V5) ξεκίνησε το 1989, ως αποτέλεσµα συζητήσεων µεταξύ διαχειριστών συστηµάτων, χρηστών και της οµάδας ανάπτυξης, και προδιαγράφηκε για χρήση στο Internet το Σεπτέµβριο του 1993. Σήµερα, τόσο η έκδοση 4 όσο και η έκδοση 5 του KERBEROS διανέµονται από διάφορους κατασκευαστές. Το σύστηµα είναι οργανωµένο σε βασίλεια (realms). Σε κάθε βασίλειο υπάρχει ένας κεντρικός και, φυσικά, ασφαλής εξυπηρετητής αυθεντικοποίησης (Authentication Server – AS), που έχει κοινό µε κάθε συµµετέχοντα P ένα µυστικό κλειδί Κp. Αν ο Ρ είναι χρήστης, τότε το Κp παράγεται από το συνθηµατικό του, χρησιµοποιώντας µια µονόδροµη συνάρτηση σύνοψης. Αν όχι, το Κp παρέχεται. Το σύστηµα λειτουργεί παρέχοντας στους συµµετέχοντες εισιτήρια, τα οποία οι συµµετέχοντες µπορούν να χρησιµοποιήσουν για να αποδείξουν την ταυτότητά τους, και µυστικά κλειδιά για ασφαλείς επικοινωνίες µεταξύ των συµµετεχόντων. Ο AS αυθεντικοποιεί τους χρήστες κατά τη σύνδεσή τους και τους εφοδιάζει µε ένα εισιτήριο
5 . 1 ™ À ™ ∆ ∏ ª ∞ ∆ ∞ ∞ À £ ∂ ¡ ∆ π ∫ √ ¶ √ π ∏ ™ ∏ ™ ™ ∂ ∫ ∞ ∆ ∞ ¡ ∂ ª ∏ ª ∂ ¡ ∞ À ¶ √ § √ ° π ™ ∆ π ∫ ∞ ¶ ∂ ƒ π µ ∞ § § √ ¡ ∆∞
έκδοσης εισιτηρίων (Ticket Granting Ticket – TGT). Το εισιτήριο αυτό µπορεί να χρησιµοποιηθεί για την έκδοση εισιτηρίων από έναν εξυπηρετητή έκδοσης εισιτηρίων (Ticket Granting Server – TGS), τα οποία στη συνέχεια µπορούν να χρησιµοποιηθούν ως διαπιστευτήρια για την επαφή µε άλλους εξυπηρετητές. Η έκφραση ΤC,S = {U, C, S, K, tstart, texpire}Ks υποδηλώνει ένα εισιτήριο που ο πελάτης C µπορεί να χρησιµοποιήσει για να επικοινωνήσει µε τον εξυπηρετητή S για λογαριασµό του χρήστη U. Το εισιτήριο περιέχει τα ονόµατα των συµµετεχόντων U και S, τη διεύθυνση δικτύου του C, ένα κλειδί συνόδου Κ, ένα χρόνο έναρξης t start και ένα χρόνο λήξης texpire. Το εισιτήριο είναι κρυπτογραφηµένο µε το ΚS, το µυστικό κλειδί του S, έτσι ώστε ο C να µην µπορεί να το διαβάσει ή να το τροποποιήσει. Για να το προστατεύσει από επιθέσεις επανάληψης, ο C δηµιουργεί και στέλνει επιπλέον έναν αυθεντικοποιητή ΑC,S = {C, t}K, που περιέχει τη διεύθυνση δικτύου του C και µια χρονοσφραγίδα t. Ο αυθεντικοποιητής αυτός είναι επίσης κρυπτογραφηµένος µε το κλειδί συνόδου. Το πρωτόκολλο KERBEROS βασίζεται σε πρωτόκολλα διανοµής κλειδιών, που αρχικά αναπτύχθηκαν από τους Needham και Schroeder και αργότερα τροποποιήθηκαν για να περιλάβουν και χρονοσφραγίδες. Το πρωτόκολλο µπορεί να συνοψιστεί ως εξής: 1: C
Æ
AS
: U, TGS
2: AS
Æ
C
: Tc,tgs, {TGS, K, tstart, texpire}Ku
3: C
Æ
TGS : S, Tc,tgs, Ac,tgs
4: TGS
Æ
C
: Tc,s, {S, K΄, t΄start, t΄expire}Κ
5: C
Æ
S
: Tc,s, Ac,s
6: S
Æ
C
: {t΄}Κ΄
Στο βήµα 1, ο πελάτης στέλνει τα ονόµατα του χρήστη και ενός εξυπηρετητή έκδοσης εισιτηρίων στον εξυπηρετητή αυθεντικοποίησης. Ο εξυπηρετητής αυθεντικοποίησης δηµιουργεί το εισιτήριο έκδοσης εισιτηρίων Tc,tgs = {U, C, TGS, K, tstart, texpire}Ktgs και το επιστρέφει µαζί µε τo {TGS, K, tstart, texpire}Ku στον πελάτη, στο βήµα 2. Ο πελάτης ζητάει από τον χρήστη να δώσει το συνθηµατικό του, και, αν ο χρήστης δώσει το σωστό συνθηµατικό, ο πελάτης δηµιουργεί το κλειδί Ku και µπορεί να αποκρυπτογραφήσει το εισιτήριο έκδοσης εισιτηρίων. Στο βήµα 3, ο πελάτης δηµιουργεί τον αυθεντικοποιητή Ac,tgs = {C, t}K και τον προωθεί, µαζί µε το όνοµα του επιθυµητού εξυπηρετητή S και τo εισιτήριο Tc,tgs, στον εξυπηρετητή έκδοσης εισιτηρίων. Ο εξυπηρετητής αυτός αποκρυπτογραφεί το Tc,tgs, χρησιµοποιώντας το κλειδί Ktgs, ανακτά το κλειδί Κ, αποκρυπτογραφεί τον αυθεντικοποιητή Ac,tgs µ’ αυτό
161
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
162
και ελέγχει την εγκυρότητα της χρονοσφραγίδας t. Αν τόσο το εισιτήριο όσο και ο αυθεντικοποιητής είναι έγκυρα, ο εξυπηρετητής έκδοσης εισιτηρίων εκδίδει το εισιτήριο Tc,s = {U, C, S, K΄, t΄start, t΄expire}Κs και το επιστρέφει µαζί µε το {S, K΄, t΄start, t΄expire}Κ στον πελάτη, στο βήµα 4. Ο πελάτης µπορεί τώρα να αποκρυπτογραφήσει το µήνυµα µε το κλειδί Κ και να ανακτήσει το νέο κλειδί συνόδου Κ΄. ∆ηµιουργεί, λοιπόν, ένα νέο αυθεντικοποιητή, τον Ac,s = {C, t΄}Κ΄, και τον προωθεί, µαζί µε το Tc,s, στον εξυπηρετητή, στο βήµα 5. Ο εξυπηρετητής αποκρυπτογραφεί το Tc,s µε το κλειδί Κs, ανακτά το Κ΄, αποκρυπτογραφεί τον Ac,s και ελέγχει την εγκυρότητα του t΄. Και πάλι, αν τόσο το εισιτήριο όσο και ο αυθεντικοποιητής είναι έγκυρα, ο εξυπηρετητής υποθέτει ότι ο πελάτης πράγµατι λειτουργεί για λογαριασµό του χρήστη. Αν απαιτούνταν αµοιβαία αυθεντικοποίηση, ο εξυπηρετητής θα επέστρεφε το {t΄}Κ΄ στον πελάτη, στο βήµα 6. Μετά το βήµα 5, το Κ΄ είναι κοινό µεταξύ του πελάτη και του εξυπηρετητή και µπορεί να χρησιµοποιηθεί ως κλειδί συνόδου. Μ’ αυτό το κλειδί ο πελάτης και ο εξυπηρετητής µπορούν να παράγουν υπηρεσίες αυθεντικοποίησης δεδοµένων, εµπιστευτικότητας και ακεραιότητας. Όλες οι τρέχουσες υλοποιήσεις του KERBEROS χρησιµοποιούν το DES ως κρυπτοσύστηµα µυστικού κλειδιού και τις DES–CBC, MD4 και MD5 ως µονόδροµες συναρτήσεις σύνοψης. 5.1.2 NetSP
Επειδή οι περιορισµοί εξαγωγής κρυπτογραφικών αλγόριθµων από τις Η.Π.Α. κυρίως αφορούν αυτούς που χρησιµοποιούνται για µαζική κρυπτογράφηση δεδοµένων, η ΙΒΜ ανέπτυξε µια οικογένεια πρωτοκόλλων αυθεντικοποίησης και διανοµής κλειδιών που χρησιµοποιούν µονόδροµες συναρτήσεις σύνοψης µε κλειδί για τη δηµιουργία κωδίκων αυθεντικοποίησης µηνυµάτων (Message Authentication Codes – MAC). Τα πρωτόκολλα αυτά χρησιµοποιήθηκαν αρχικά στο σύστηµα KryptoKnight και µετέπειτα στο πρόγραµµα Network Security Program (NetSP) της ΙΒΜ. Ο πυρήνας της οικογένειας είναι ένα πρωτόκολλο αυθεντικοποίησης 2 µερών (2ΡΑΡ), που έχει αποδειχθεί ότι ανθίσταται σε διάφορους τύπους επιθέσεων. Το πρωτόκολλο συνοψίζεται ως εξής: 1: Α
Æ
Β: Να
2: Β
Æ
Α: Νb, MACba(Na, Nb, B)
3: A
Æ
B: MACab(Na, Nb)
5 . 1 ™ À ™ ∆ ∏ ª ∞ ∆ ∞ ∞ À £ ∂ ¡ ∆ π ∫ √ ¶ √ π ∏ ™ ∏ ™ ™ ∂ ∫ ∞ ∆ ∞ ¡ ∂ ª ∏ ª ∂ ¡ ∞ À ¶ √ § √ ° π ™ ∆ π ∫ ∞ ¶ ∂ ƒ π µ ∞ § § √ ¡ ∆∞
Στο βήµα 1, ο Α προκαλεί τον Β µε τον τυχαίο αριθµό Να και στο βήµα 2 ο Β απαντάει µε έναν άλλο τυχαίο αριθµό, τον Νb, και τον κώδικα αυθεντικοποίησης µηνύµατος MACba(Na, Nb, B). Ο κώδικας αυτός δηµιουργείται εφαρµόζοντας µια µονόδροµη συνάρτηση σύνοψης µε κλειδί στα Na, Nb και B. Ο Α µπορεί να επαληθεύσει τον κώδικα και συνακόλουθα να αυθεντικοποιήσει τον Β. Για να αυθεντικοποιηθεί ο ίδιος στον Β, ο Α δηµιουργεί τον κώδικα MACab(Na, Nb) και τον στέλνει στον Β, στο βήµα 3. Σηµειώστε ότι το βήµα 3 είναι απαραίτητο µόνο όταν απαιτείται αµοιβαία αυθεντικοποίηση, καθώς επίσης και ότι τα κλειδιά που χρησιµοποιούνται για τη δηµιουργία των κωδίκων αυθεντικοποίησης µηνύµατος στα βήµατα 2 και 3 δεν είναι απαραίτητα τα ίδια, εκτός όταν οι Α και Β χρησιµοποιούν κρυπτοσύστηµα µυστικού κλειδιού και έχουν κοινό ένα κλειδί συνόδου. Αλλά το 2ΡΑΡ µπορεί επίσης να χρησιµοποιηθεί µε κρυπτοσύστηµα δηµόσιου κλειδιού, οπότε η έκφραση MACba υποδηλώνει έναν κώδικα αυθεντικοποίησης µηνύµατος που δηµιουργείται από τον Β και µπορεί να επαληθευτεί από τον Α. Το πρωτόκολλο διανοµής κλειδιών δύο µερών 2PKDP παράγεται από το 2ΡΑΡ αντικαθιστώντας τον Β µε ένα κέντρο διανοµής κλειδιών (KDC). Το πρωτόκολλο συνοψίζεται ως εξής: 1: Α
Æ
KDC: Na
2: KDC
Æ
Α: Νk, MACa(Na, Nk, KDC)≈K΄a
3: A
Æ
KDC: MACa(Na, Nk)
Το βήµα 1 είναι ταυτόσηµο µε το βήµα 1 του 2ΡΑΡ. Στο βήµα 2, το κέντρο διανοµής κλειδιών διαλέγει ένα νέο τυχαίο αριθµό και ένα νέο κλειδί για τον Α, το K΄a.. Ο Νk επιστρέφεται χωρίς να κρυπτογραφηθεί, ενώ το K΄a προστίθεται κατά bit modulo 2 στο MACa(Na, Nk, KDC). Αφού λάβει το µήνυµα 2, ο Α δηµιουργεί τον κώδικα αυθεντικοποίησης µηνύµατος και ανακτά το K΄a. Αν ο Α ήθελε να επιβεβαιώσει τη λήψη του νέου κλειδιού, θα επέστρεφε το MACa(Na, Nk) σε ένα συµπληρωµατικό βήµα 3, το οποίο είναι πάλι προαιρετικό. Σηµειώστε ότι µετά τη λήψη του Nk και του MACa(Na, Nk, KDC)≈K΄a στο βήµα 2, ο Α δεν είναι σε θέση να επαληθεύσει την αυθεντικότητα του µηνύµατος. Για να απαλειφθεί το µειονέκτηµα αυτό, σχεδιάστηκε το αυθεντικοποιηµένο πρωτόκολλο διανοµής κλειδιών 2 µερών 2PAKDP, το οποίο συνοψίζεται ως εξής: 1: Α
Æ
KDC: Na
2: KDC
Æ
Α: MACa(Na, Nk, KDC), Ea(MACa(Na, Nk, KDC))≈Nk
3: A
Æ
KDC: MACa(Na, Nk)
163
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
164
Θα προσέξατε ήδη ότι µόνο το βήµα 2 αλλάζει: αντί να απαντήσει µε το Ν k, MACa(Na, Nk, KDC)≈K΄a, το κέντρο διανοµής κλειδιών επιστρέφει το MACa(Na, Nk, KDC), Ea(MACa(Na, Nk, KDC))≈Nk. Μόλις λάβει το µήνυµα αυτό, ο Α κρυπτογραφεί το MACa(Na, Nk, KDC) και χρησιµοποιεί το Ea(MACa(Na, Nk, KDC)) για να ανακτήσει το νέο κλειδί Nk από το Ea(MACa(Na, Nk, KDC))≈Nk. Στη συνέχεια, ο Α υπολογίζει το MACa(Na, Nk, KDC) και ελέγχει αν αυτό ταιριάζει µε εκείνο που δόθηκε από το κέντρο διανοµής κλειδιών. Συνδυάζοντας τα πρωτόκολλα 2ΡΑΡ και 2PKDP (ή 2PAKDP), µπορούµε να κατασκευάσουµε διάφορα πρωτόκολλα διανοµής κλειδιών τριών µερών. Το παρακάτω πρωτόκολλο 3PKDP είναι συνδυασµός δύο 2PAKDP (A–KDC και B–KDC) και ενός 2ΡΑΡ (Α–Β): 1: Α
Æ
Β
2: B
Æ
KDC : Νa, Νb, A
3: KDC
Æ
B
: MACa(Na, Kab, B), Ea(MACa(Na, Kab, B))≈Kab
3: KDC
Æ
B
: MACb(Na, Kab, A), Eb(MACa(Na, Kab, A))≈Kab
4: B
Æ
A
: MACa(Na, Kab, B), Ea(MACa(Na, Kab, B))≈Kab
4: B
Æ
A
: Nb, MACab(Na, Nb, B)
5: A
Æ
B
: MACab(Na, Nb), MACa(Na, Kab)
6: B
Æ
KDC : MACa(Na, Kab), MACb(Nb, Kab)
: Νa
Μετά το βήµα 3, ο Β µπορεί να ανακτήσει το K ab από το MACb(Na, Kab, A), Eb(MACb(Na, Kab, A))≈Kab και, µετά το βήµα 4, ο Α µπορεί να κάνει κι αυτός το ίδιο µε το MACa(Na, Kab, B), Ea(MACa(Na, Kab, B))≈Kab. Προφανώς, το πρωτόκολλο 2PAKDP µπορεί επίσης να χρησιµοποιηθεί και για σύνδεση µοναδικoύ σηµείου (single–sign–on). Ο χρήστης αλλάζει το αδύναµο κλειδί µακράς χρήσης που παράγεται από το συνθηµατικό του µε ένα δυνατό κλειδί συνόδου. Αλλά επειδή το 2PAKDP δεν παρέχει αυθεντικότητα στο βήµα 1, κάθε εισβολέας µπορεί να ξεκινήσει µια εκτέλεση πρωτοκόλλου που µπορεί να χρησιµοποιηθεί για επίθεση λεξικού. Το παρακάτω πρωτόκολλο µοναδικής σύνδεσης παρέχει προ–αυθεντικοποίηση στο βήµα 1: 1: U
Æ
KDC :Nu, T, MACu(Nu, T, U)
2: KDC
Æ
U
:MACu(Nu, T, U), Eu(MACu(Nu, T, U))≈Nk
Σηµειώστε ότι, παρά την προ–αυθεντικοποίησή του, το πρωτόκολλο είναι ακόµη
5 . 1 ™ À ™ ∆ ∏ ª ∞ ∆ ∞ ∞ À £ ∂ ¡ ∆ π ∫ √ ¶ √ π ∏ ™ ∏ ™ ™ ∂ ∫ ∞ ∆ ∞ ¡ ∂ ª ∏ ª ∂ ¡ ∞ À ¶ √ § √ ° π ™ ∆ π ∫ ∞ ¶ ∂ ƒ π µ ∞ § § √ ¡ ∆∞
ευάλωτο σε επιθέσεις «επαληθεύσιµου συνθηµατικού». Ένας επιτιθέµενος που µπορεί να συλλάβει το µήνυµα στο βήµα 1 γνωρίζει τα Nu, T και U. Μπορεί να δοκιµάσει υποψήφια συνθηµατικά, µέχρις ότου βρει ένα που να ταιριάζει µε το MACu(Nu, T, U). Οι ίδιοι µηχανισµοί που µπορούν να χρησιµοποιηθούν στο KERBEROS για να αποκρούσουν τέτοιες επιθέσεις µπορούν να χρησιµοποιηθούν και εδώ. Σε περιβάλλοντα µε υψηλές απαιτήσεις ασφάλειας, η µοναδική σύνδεση δεν είναι γενικά καλή ιδέα και θα πρέπει να αντικαθίσταται µε συνθηµατικά µιας χρήσης. Το σύστηµα NetSP παρέχει υπηρεσίες αυθεντικοποίησης και ακεραιότητας δεδοµένων. Μπορεί όµως να ενισχυθεί, έτσιούτως ώστε να παρέχει και υπηρεσίες εµπιστευτικότητας δεδοµένων. Οι υπηρεσίες αυτές βασίζονται στο σύστηµα Commercial Data Masking Facility (CDMF) της ΙΒΜ, που είναι µια τροποποιηµένη µορφή του DES µε µήκος κλειδιού 40 bits. 5.1.3 SPX
H DEC έχει προδιαγράψει µια κατανεµηµένη υπηρεσία αυθεντικοποίησης (Distributed Authentication Security Service – DASS) ως τµήµα της κατανεµηµένης αρχιτεκτονικής ασφάλειας συστήµατος (Distributed System Security Architecture – DSSA). Η υπηρεσία αυτή χρησιµοποιήθηκε για πρώτη φορά σε ένα σύστηµα αυθεντικοποίησης και διανοµής κλειδιών, που ονοµάστηκε SPX. Το σύστηµα SPX ακολουθεί µια υβριδική προσέγγιση. Χρησιµοποιεί κρυπτογραφία µυστικού κλειδιού (DES) και δηµόσιου κλειδιού (RSA). Η αρχιτεκτονική του SPX επηρεάζεται ισχυρά από τη σύσταση Χ.509 της ITU–T. Υπάρχουν κέντρα διανοµής πιστοποιητικών (Certificate Disribution Centers – CDC), που πιστοποιούν και διανέµουν ιδιωτικά και δηµόσια κλειδιά, καθώς και πράκτορες εγγραφής συνδέσεων (Login Enrollment Agent Facilities – LEAF), που αυθεντικοποιούν τους χρήστες, καθώς αυτοί συνδέονται µε το σύστηµα. Το πρωτόκολλο αρχικοποίησης χρήστη του SPX συνοψίζεται ως εξής: 1: U
Æ
C
2: C
Æ
LEAF : {U, T, N, h1(P΄)}kleaf
3: LEAF
Æ
CDC
4: CDC
Æ
LEAF : {{ku–1}h2(P), h1(P), U}K, {K} kleaf
5: LEAF
Æ
C
: {{ku–1}h2(P), U}N
6: C
Æ
CDC
:U
7: CDC
Æ
C
: {U, TAu, L, kTΑu}ku–1
: U, P΄
:U
165
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
166
Στο βήµα 1, ο χρήστης U συνδέεται µε τον πελάτη C δίνοντας το όνοµά του και το συνθηµατικό P΄. Ο πελάτης χρησιµοποιεί µια µονόδροµη συνάρτηση σύνοψης h1 για να υπολογίσει τη σύνοψη του Ρ΄. Κρυπτογραφεί το U, µια χρονοσφραγίδα Τa, έναν τυχαίο αριθµό Ν και τη σύνοψη h1(P΄) µε το κλειδί kleaf και στέλνει το αποτέλεσµα στο LEAF, στο βήµα 2. Στο βήµα 3, ο LEAF επικοινωνεί µε το CDC και στο βήµα 4 το CDC επιστρέφει τα {{ku–1}h2(P), h1(P), U}K και {K}kleaf. Με το ιδιωτικό του κλειδί, ο LEAF µπορεί να αποκρυπτογραφήσει το {K}kleaf και να ανακτήσει το Κ. Στη συνέχεια µπορεί να αποκρυπτογραφήσει το {{ku–1}h2(P), h1(P), U}K και να ανακτήσει τα {{ku–1}h2(P), h1(P) και U. Αν το h1(P) συµπίπτει µε το h1(P΄), ο LEAF υποθέτει ότι ο πελάτης ενεργεί πράγµατι για λογαριασµό του χρήστη U. Στο βήµα 5, ο LEAF παρέχει στον πελάτη τα {ku–1}h2(P) και U. Το όλο µήνυµα είναι κρυπτογραφηµένο µε το κλειδί Ν. Ο πελάτης γνωρίζει το Ν και µπορεί συνεπώς να αποκρυπτογραφήσει το {{ku–1}h2(P), U}Ν. Το {ku–1}h2(P) µπορεί µετά να αποκρυπτογραφηθεί εφαρµόζοντας τη συνάρτηση h2 στο Ρ΄ και χρησιµοποιώντας το αποτέλεσµα ως κλειδί αποκρυπτογράφησης. Επιπλέον, ο πελάτης χρειάζεται το δηµόσιο κλειδί kTΑu µιας έµπιστης αρχής για τον U (TAu). Εποµένως, επικοινωνεί µε το CDC, στο βήµα 6, και, στο βήµα 7 το CDC επιστρέφει ένα µήνυµα που είναι κρυπτογραφηµένο µε το ιδιωτικό κλειδί του U. Στη συνέχεια, ο πελάτης µπορεί να επαληθεύσει την υπογραφή και να ανακτήσει το kTΑu. Το πρωτόκολλο αυθεντικοποίησης SPX συνοψίζεται ως εξής: 1: C
Æ
CDC
:S
2: CDC
Æ
C
–1 : {TAu, S, L1, ks}kTΑ u
3: C
Æ
S
: {T}K, {U, L2, kd}ku–1, {K}ks, {kd–1}K
4: S
Æ
CDC
:U
5: CDC
Æ
S
–1 : {TAs, U, L3, ku}kTΑ s
6: S
Æ
C
: {T+1}K
Στο βήµα 1 ο πελάτης επικοινωνεί µε το CDC για να λάβει το δηµόσιο κλειδί ks του εξυπηρετητή. Στο βήµα 2 το CDC επιστρέφει ένα πιστοποιητικό για το ks. Το πιστοποιητικό είναι κρυπτογραφηµένο µε το ιδιωτικό κλειδί του TAu και µπορεί να αποκρυπτογραφηθεί µε το kTΑu. Ο χρόνος ζωής του πιστοποιητικού περιορίζεται από την ποσότητα L1. Ο πελάτης τώρα δηµιουργεί ένα κλειδί συνόδου Κ και ένα ζεύγος κλειδιών RSA, το {kd, kd–1}. Στο βήµα 3 στέλνει τα {T}K, {U, L2, kd}ku–1, {K}ks και {kd–1}K στον εξυπηρετητή. Ο εξυπηρετητής µπορεί να αποκρυπτογραφήσει το {K}ks και να χρησιµοποιήσει το Κ για να αποκρυπτογραφήσει τόσο το {T}K όσο και το {kd–1}K. Για την αποκρυπτογράφηση του {U, L2, kd}ku–1 ο εξυπηρετητής χρειάζεται
5 . 1 ™ À ™ ∆ ∏ ª ∞ ∆ ∞ ∞ À £ ∂ ¡ ∆ π ∫ √ ¶ √ π ∏ ™ ∏ ™ ™ ∂ ∫ ∞ ∆ ∞ ¡ ∂ ª ∏ ª ∂ ¡ ∞ À ¶ √ § √ ° π ™ ∆ π ∫ ∞ ¶ ∂ ƒ π µ ∞ § § √ ¡ ∆∞
το δηµόσιο κλειδί του χρήστη. Στο βήµα 4, ο εξυπηρετητής επικοινωνεί µε το CDC και, στο βήµα 5, το CDC επιστρέφει ένα πιστοποιητικό για το ku. Το πιστοποιητικό –1 αυτό είναι κρυπτογραφηµένο µε το kTΑ s , το ιδιωτικό κλειδί της έµπιστης οντότητας για τον εξυπηρετητή (TΑs). Υποτίθεται ότι ο εξυπηρετητής έχει αυτό το κλειδί και –1 συνεπώς µπορεί να αποκρυπτογραφήσει το {TAs, U, L3, ku}kTΑ s. Έχοντας τώρα το ku, ο εξυπηρετητής µπορεί να αποκρυπτογραφήσει το {U, L 2, kd}ku–1 και να ανακτήσει το kd. Για αµοιβαία αυθεντικοποίηση, ο εξυπηρετητής πρέπει να στείλει το {Τ+1}Κ στον πελάτη, στο προαιρετικό βήµα 6. Το σύστηµα SPX ήταν το πρώτο που ακολούθησε υβριδική προσέγγιση. ∆υστυχώς, η DEC ακύρωσε το πρόγραµµα πριν το SPX γίνει εµπορικό προϊόν. Σήµερα, το SPX είναι δηµόσια διαθέσιµο, ενώ µια απλοποιηµένη έκδοσή του έχει προδιαγραφεί ως Simple Public–key GSS–API Mechanisms (SPKM). 5.1.4 TESS
Το σύστηµα Exponential Security System (TESS) αναπτύχθηκε στο Ευρωπαϊκό Ινστιτούτο Ασφάλειας Συστηµάτων του Πανεπιστηµίου της Καρλσρούης. Το TESS περιλαµβάνει τόσο ένα σύστηµα αυθεντικοποίησης και διανοµής κλειδιών, που ονοµάζεται SELANE (Secure Local Area Network Environment), όσο και ένα σύστηµα ψηφιακής υπογραφής, που ονοµάζεται EES (Exponential Electronic Signature). O πυρήνας του TESS είναι µια οικογένεια πρωτοκόλλων µε το όνοµα KATHY (Key exchange with embedded authentication). Μια ασφαλής αρχή έκδοσης κλειδιών (Secure Key Issuing Authority – SKIA) εγγράφει τους χρήστες και δηµιουργεί, πιστοποιεί και διανέµει προσωπικά αντικείµενα (έξυπνες κάρτες ή κάρτες PCMCIA). Κατά τη φάση αρχικοποίησης της SKIA, επιλέγεται ένας µεγάλος πρώτος αριθµός p, µια γεννήτρια α και ένα ιδιωτικό κλειδί Χ. Το δηµόσιο κλειδί της SKIA υπολογίζεται ως Υ = αΧ mod p. Οι παράµετροι συστήµατος p, α και Υ γίνονται δηµόσια γνωστοί, ενώ το Χ κρατιέται µυστικό. Για να εγγραφεί ο χρήστης Ui, η SKIA δηµιουργεί µια συµβολοσειρά ταυτότητας mi. Στη συνέχεια, η SKIA επιλέγει ένα ki, υπολογίζει το ri = aki mod p και λύνει την εξίσωση Xri + siki = mi (modp–1) ως προς si. Έτσι, το ζεύγος (ri, si) αποτελεί µια ψηφιακή υπογραφή ElGamal για το mi. Κάθε χρήστης Ui είναι εφοδιασµένος µε ένα προσωπικό αντικείµενο στο οποίο είναι αποθηκευµένα τα mi, ri και si. Οι χρήστες UA και UΒ µπορούν να χρησιµοποιήσουν το ακόλουθο πρωτόκολλο για να πραγµατοποιήσουν µια αυθεντικοποιηµένη ανταλλαγή κλειδιών: 1: UΑ
Æ
UΒ
: mA, rA
2: UB
Æ
UA
: vB = rAZB mod p
167
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
168
Στο βήµα 1 ο UΑ παρέχει στον UΒ τα mA και rA. Στη συνέχεια, o UΒ, επιλέγει ένα ΖΒ Œ GF*(p) και επιστρέφει το vB = rAZB mod p στον UΑ, στο βήµα 2. Αν ο UΑ υπολοzB γίσει το vBSA mod p και ο UΒ το (αmAY–rA) mod p, καταλήγουν στο ίδιο κλειδί συνόδου. Αν ο UΑ και ο UΒ πρέπει να παίξουν ισότιµους ρόλους στη διαδικασία δηµιουργίας κλειδιού, το πρωτόκολλο επαναλαµβάνεται άλλη µια φορά (σε αντίστροφη κατεύθυνση): 1: UB
Æ
UA
: mB, rB
2: UA
Æ
UB
: vA = rBZA mod p
Και πάλι, ο UΑ και ο UΒ καταλήγουν στο ίδιο κλειδί συνόδου. Μπορούν να χρησιµοποιήσουν οποιαδήποτε γνωστή συνάρτηση σύνοψης για να συνενώσουν τα δύο αυτά κλειδιά σε ένα. Αν η SKIA αποθηκεύει όλες τις τιµές που δηµιουργεί κατά τη φάση εγγραφής χρηστών, µπορεί να ανακατασκευάσει όλα τα κλειδιά συνόδου που ανταλλάσσονται εφεξής. Αν οι χρήστες δεν εµπιστεύονται τη SKIA, µπορεί να θέλουν η SKIA να πιστοποιεί τις συµβολοσειρές ταυτότητάς τους χρησιµοποιώντας καλυµµένες υπογραφές. 5.1.5 SESAME
Το σύστηµα SESAME (Secure European System for Application in a Multivendor Environment) αναπτύχθηκε στα πλαίσια του οµώνυµου έργου που εκτελέστηκε ως τµήµα του προγράµµατος έρευνας και ανάπτυξης RACE (Research for Advanced Communications in Europe) της Γενικής ∆ιεύθυνσης ΧΙΙΙ της Ευρωπαϊκής Ένωσης. Στο SESAME πιστοποιητικά υποβάλλονται στις εφαρµογές–στόχους µέσω µιας επικοινωνιακής σύνδεσης ή δικτύου από έναν αντιπρόσωπο υποκειµένου ή χρήστη (subject sponsor –– SS, user agent), προκειµένου το υποκείµενο ή ο χρήστης να αποκτήσει δικαιώµατα προσπέλασης. Το πιστοποιητικό περιέχει πληροφορίες σχετικές µε το υποκείµενο, όπως την ταυτότητα του αντικειµένου και τα προσωπικά χαρακτηριστικά του, και σφραγίζεται ή υπογράφεται από µια έµπιστη υπηρεσία διανοµής κλειδιών (Key Distribution Service – KDS). Το πιστοποιητικό συνδέεται µε άλλα δεδοµένα ή/και εντολές και σφραγίζεται µε κάποιο βασικό κλειδί συνόδου πριν µεταδοθεί στον αντιπρόσωπο. Το βασικό κλειδί δηµιουργείται από µια υπηρεσία διανοµής κλειδιών γι’ αυτή τη σύνοδο αντιπροσώπου–εφαρµογής, έτσι ώστε, αν η εφαρµογή αυθεντικοποιήσει επιτυχώς το πιστοποιητικό (και άλλα δεδοµένα), να είναι βέβαιη ότι αυτά προήλθαν από το υποκείµενο που περιγράφει το πιστοποιητικό και από τον αντιπρόσωπο του υποκειµένου, στον οποίο το υποκείµενο εµπιστεύτηκε το βασικό κλειδί. Υπάρχουν δύο κλάσεις πιστοποιητικών:
5 . 1 ™ À ™ ∆ ∏ ª ∞ ∆ ∞ ∞ À £ ∂ ¡ ∆ π ∫ √ ¶ √ π ∏ ™ ∏ ™ ™ ∂ ∫ ∞ ∆ ∞ ¡ ∂ ª ∏ ª ∂ ¡ ∞ À ¶ √ § √ ° π ™ ∆ π ∫ ∞ ¶ ∂ ƒ π µ ∞ § § √ ¡ ∆∞
Το πιστοποιητικό αυθεντικοποίησης (Authentication Certificate –– AUC) παρέχεται από έναν εξυπηρετητή αυθεντικοποίησης (Authentication Server –– AS) σε κάποιο υποκείµενο µετά από επιτυχή αυθεντικοποίηση, για παράδειγµα από την ανταλλαγή δεδοµένων που έχουν κρυπτογραφηθεί µε ένα µυστικό κλειδί που γνωρίζουν το υποκείµενο και ο εξυπηρετητής. Το AUC έχει καθορισµένο διάστηµα ζωής, σφραγίζεται ή υπογράφεται από τον εξυπηρετητή και περιέχει ως κύρια δεδοµένα την ταυτότητα του υποκειµένου και πληροφορίες σχετικές µε τον αντιπρόσωπό του. Ο σκοπός του AUC είναι να δώσει τη δυνατότητα στο υποκείµενο να αποκτήσει ένα πιστοποιητικό χαρακτηριστικών προνοµίων (Privilege Attribute Certificate –– PAC) από έναν εξυπηρετητή χαρακτηριστικών προνοµίων (Privilege Attribute Server –– PAS), µε τρόπο παρόµοιο µε εκείνο που το Kerberos µπορεί να εκδώσει ένα εισιτήριο σ’ έναν πελάτη, ο οποίος στη συνέχεια θα αποκτήσει εισιτήρια για άλλες εφαρµογές από την υπηρεσία έκδοσης εισιτηρίων. Εποµένως, η εφαρµογή–στόχος για το AUC είναι ο PAS. Η εφαρµογή–στόχος του PAC µπορεί να είναι οποιαδήποτε εφαρµογή διαθέσιµη µέσω του δικτύου. Τα PACs υπογράφονται από τον PAS και περιέχουν ως κύρια πληροφορία τα χαρακτηριστικά προνόµια του υποκειµένου. Άλλες πληροφορίες που περιέχονται στο PAC περιλαµβάνουν τη διάρκεια ζωής του και την ταυτότητα του υποκειµένου που θα χρεωθεί για τη χρήση της εφαρµογής, που δεν είναι απαραίτητα το ίδιο µ’ εκείνο που θα χρησιµοποιήσει την εφαρµογή. Τόσο τα AUCs όσο και τα PACs µεταφέρουν τη δική τους ταυτότητα, ως πιστοποιητικά, ώστε να είναι δυνατός ο κατασταλτικός έλεγχος. Οι έλεγχοι οι σχετικοί µε τη διάρκεια ζωής δεν περιλαµβάνουν µόνο ηµεροµηνίες λήξης, αλλά και ένα µέγιστο «µετρητή χρήσης», τον οποίο µπορεί να χρησιµοποιήσει µια εφαρµογή προκειµένου να απορρίψει επανειληµµένες υποβολές του ίδιου πιστοποιητικού. Ας δούµε τώρα σύντοµα τη διαδικασία διανοµής κλειδιού που χρησιµοποιεί το SESAME. Ένα υποκείµενο λαµβάνει ένα πιστοποιητικό (AUC ή AUC/PAC) για µια εφαρµογή (PAS ή εφαρµογή, αντίστοιχα). Η διαδικασία αρχίζει µε την αίτηση του υποκειµένου για λήψη πιστοποιητικού. Στο δεύτερο βήµα, ο αντιπρόσωπος του υποκειµένου και ο εξυπηρετητής έκδοσης πιστοποιητικών (Certificate Issuing Server – CIS) δηµιουργούν ένα κοινό κλειδί KSS,CIS = f(P,t), όπου P είναι το συνθηµατικό του υποκειµένου, t είναι ο χρόνος και η f() είναι µια µονόδροµη συνάρτηση. Στη συνέχεια, ο CIS στέλνει στον SS ένα νέο κλειδί ΚCIS, κρυπτογραφηµένο µε το KSS,CIS, ένα µήνυµα Μ1, που περιλαµβάνει, µεταξύ άλλων, το ΚCIS και την ταυτότητα του SS και που προορίζεται για την KDS, κρυπτογραφη-
169
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
170
µένο µε το κλειδί KCIS,KDS, και το πιστοποιητικό, που συµπεριλαµβάνει την ταυτότητα του SS. Στο βήµα 4 ο αντιπρόσωπος αποκρυπτογραφεί και κρατάει το ΚCIS, µεταφέρει το Μ1 στην KDS µαζί µε µια αίτηση για ένα βασικό κλειδί και κρατάει το πιστοποιητικό. Στο βήµα 5, η KDS αποκρυπτογραφεί το ΚCIS, χρησιµοποιώντας το KCIS,KDS, που είναι κοινό µεταξύ των KDS και των CIS, και στέλνει στον αντιπρόσωπο το ΚCIS κρυπτογραφηµένο µε το ΚSS,TA, όπου ΚSS,TA είναι το βασικό κλειδί για τη σύνοδο αντιπροσώπου–εφαρµογής, που δηµιουργείται από την KDS. Επίσης, στέλνει στον αντιπρόσωπο το µήνυµα Μ2, που περιλαµβάνει, µεταξύ άλλων, το ΚSS,TA και την ταυτότητα του SS και που προορίζεται για την εφαρµογή, κρυπτογραφηµένο µε το κλειδί ΚKDS,TA. Στο βήµα 6 ο αντιπρόσωπος αποκρυπτογραφεί και κρατάει το ΚSS,TA. Μεταδίδει το Μ2 στην εφαρµογή και αιτείται κάποια ενέργεια απ’ αυτήν, αποστέλλοντας την ενέργεια και το πιστοποιητικό σφραγισµένα µε το ΚSS,TA. Στο τελευταίο βήµα η εφαρµογή αποκρυπτογραφεί το ΚSS,TA χρησιµοποιώντας το ΚKDS,TA, που είναι κοινό µεταξύ των KDS και της εφαρµογής. Αυθεντικοποιεί την αίτηση ενέργειας χρησιµοποιώντας το ΚSS,TA, επαληθεύει το πιστοποιητικό, συγκρίνει την ταυτότητα του αντιπροσώπου που περιέχεται στο Μ2 και στο πιστοποιητικό και, τελικά, εκτελεί την ενέργεια αν αυτή είναι σύµφωνη µε τα χαρακτηριστικά προνόµια του υποκειµένου που περιέχονται στο πιστοποιητικό. ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 5.1 Αντιστοιχίστε τις έννοιες της αριστερής στήλης µε στα συστήµατα αυθεντικοποίησης της δεξιάς στήλης. Προσοχή! Η αντιστοίχιση δεν είναι απαραίτητα ένα –προς –ένα. 1. Κατανεµηµένη υπηρεσία αυθεντικοποίησης
1. Kerberos
2. Αρχή έκδοσης κλειδιών
2. NetSP
3. Αντιπρόσωπος
3. SPX
4. Τυχαίος αριθµός
4. TESS
5. Βασίλειο
5. SESAME
6. Εξυπηρετητής έκδοσης πιστοποιητικών 7. Εξυπηρετητής αυθεντικοποίησης 8. Κέντρο διανοµής πιστοποιητικών 9. Πιστοποιητικό αυθεντικοποίησης 10. Εισιτήριο
5 . 2 ¢ π ∫ ∆ À∞ ∫ ∞ ∞ ¡ ∞ à ø ª ∞ ∆ ∞
171
11. Υπηρεσία διανοµής κλειδιών 12. Πιστοποιητικό χαρακτηριστικών προνοµίων 13. Εξυπηρετητής έκδοσης εισιτηρίων 14. Πράκτορες εγγραφής συνδέσεων 15. Εξυπηρετητής χαρακτηριστικών προνοµίων
¢Ú·ÛÙËÚÈfiÙËÙ· 5.1 ∆ώστε µια συνοπτική περιγραφή του πρωτοκόλλου διανοµής κλειδιών του συστήµατος SESAME ανάλογη µ’ εκείνες των άλλων συστηµάτων αυθεντικοποίησης που περιγράψαµε.
¢Ú·ÛÙËÚÈfiÙËÙ· 5.2 Συγκρίνετε τα συστήµατα Kerberos και SESAME ως προς: 1. τους σκοπούς που εξυπηρετεί το εισιτήριο/πιστοποιητικό. 2. τον τρόπο µε τον οποίο εξασφαλίζεται η προσπέλαση ενός εξυπηρετητή/µιας εφαρµογής.
5.2 ¢ÈÎÙ˘·Î¿ ·Ó·¯ÒÌ·Ù·
Η σύνδεση µε το διαδίκτυο δεν αποτελεί πια στις µέρες µας επιλογή, αλλά υποχρέωση των περισσότερων επιχειρήσεων και οργανισµών, αφού τόσο οι πληροφορίες όσο και οι υπηρεσίες που η σύνδεση αυτή θέτει στη διάθεσή τους είναι απολύτως απαραίτητες για τη σωστή τους λειτουργία. Εκτός από τις ανάγκες του ίδιου του οργανισµού ή της επιχείρησης και τα στελέχη της επιθυµούν και χρειάζονται πρόσβαση στο διαδίκτυο και, αν αυτή δεν παρέχεται µέσω του τοπικού τους δικτύου, θα χρησιµοποιήσουν σύνδεση dial–up στον παροχέα διαδικτύου µε τον οποίο συνεργάζονται. Ωστόσο, όσο και αν η σύνδεση στο διαδίκτυο είναι ευεργετική για τον οργανισµό, επιτρέπει στον εξωτερικό κόσµο να επικοινωνήσει µε περιουσιακά στοιχεία του τοπικού δικτύου, γεγονός που αποτελεί απειλή για τον οργανισµό.
172
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
Πώς µπορούµε να αντιµετωπίσουµε την απειλή αυτή; Αν και είναι δυνατόν να προστατεύσουµε κάθε σταθµό εργασίας και εξυπηρετητή του δικτύου µε ισχυρά µέτρα ασφάλειας, όπως, για παράδειγµα, µέτρα προστασίας από παρεισφρήσεις, η προσέγγιση αυτή δεν είναι καθόλου πρακτική. Πράγµατι, φανταστείτε ένα δίκτυο µε εκατοντάδες ή και χιλιάδες συστήµατα, που τρέχουν διάφορες εκδόσεις του Unix, και, επιπλέον, Windows 95, 98 και ΝΤ. Σκεφτείτε ότι, σ’ ένα τέτοιο δίκτυο, όταν ανακαλυφθεί µια ευπάθεια, κάθε σύστηµα το οποίο πιθανόν αυτή αφορά πρέπει να αναβαθµιστεί, προκειµένου να την αναιρέσει. Η εναλλακτική λύση, που βρίσκει αυξανόµενη αποδοχή, είναι το δικτυακό ηλεκτρονικό ανάχωµα (firewall). Το ανάχωµα τοποθετείται µεταξύ του εσωτερικού δικτύου και του διαδικτύου, αποτελεί έναν ελεγχόµενο κρίκο επικοινωνίας και ορθώνει µια εξωτερική περίµετρο ασφάλειας ή τοίχο γύρω από το εσωτερικό δίκτυο. Ο σκοπός της περιµέτρου αυτής είναι να προστατεύει το εσωτερικό δίκτυο από επιθέσεις που εξαπολύονται µέσω του διαδικτύου και να παρέχει ένα µοναδικό σηµείο ελέγχου όπου µπορούν να εφαρµοστούν ισχυροί µηχανισµοί ασφάλειας και ελέγχου. Το ανάχωµα µπορεί να είναι ένα µοναδικό υπολογιστικό σύστηµα ή να αποτελείται από δύο ή περισσότερα συστήµατα που συνεργάζονται προκειµένου να επιτελέσουν την επιθυµητή λειτουργία. Στην ενότητα αυτή θα δούµε πρώτα τα χαρακτηριστικά των αναχωµάτων. Στη συνέχεια θα δούµε τους κυριότερους τύπους αναχωµάτων. Τέλος, εξετάζουµε µερικές από τις πιο διαδεδοµένες διαµορφώσεις αναχωµάτων. 5.2.1 X·Ú·ÎÙËÚÈÛÙÈο ·Ó·¯ˆÌ¿ÙˆÓ
Πριν προχωρήσουµε µε τις λεπτοµέρειες των τύπων και των διαµορφώσεων των αναχωµάτων, καλό είναι να αναφέρουµε περιληπτικά τι µπορεί κανένας να περιµένει από ένα ανάχωµα. Θα ξεκινήσουµε τη συζήτηση στην παράγραφο αυτή εξετάζοντας πρώτα ποιοι είναι οι στόχοι σχεδίασης ενός αναχώµατος. Ο πρώτος µας στόχος είναι να εξασφαλίσουµε ότι όλη η κίνηση, από το εσωτερικό δίκτυο προς τα έξω και αντίστροφα, πρέπει να διέρχεται από το ανάχωµα. Ο στόχος αυτός επιτυγχάνεται απαγορεύοντας κάθε φυσική πρόσβαση στο εσωτερικό δίκτυο, εκτός αν αυτή διέρχεται από το ανάχωµα. Όπως θα δούµε αργότερα, είναι δυνατές διάφορες διαµορφώσεις αναχωµάτων που επιτυγχάνουν το στόχο αυτό. Ο δεύτερος στόχος µας είναι ότι µόνο εξουσιοδοτηµένη κίνηση, όπως αυτή ορίζεται από την τοπική πολιτική ασφάλειας, πρέπει να επιτρέπεται να διέλθει από το ανάχωµα. Όπως θα δούµε αργότερα, υπάρχουν διάφοροι τύποι αναχωµάτων, που επιτρέπουν την υλοποίηση διάφορων πολιτικών.
5 . 2 ¢ π ∫ ∆ À∞ ∫ ∞ ∞ ¡ ∞ à ø ª ∞ ∆ ∞
Τέλος, το ανάχωµα το ίδιο πρέπει να είναι απρόσβλητο από παρεισφρήσεις. Αυτό σηµαίνει ότι ως ανάχωµα πρέπει να χρησιµοποιηθεί ένα έµπιστο σύστηµα, µ’ ένα έµπιστο λειτουργικό σύστηµα. Υπάρχουν τέσσερις γενικές τεχνικές που χρησιµοποιούν τα αναχώµατα για να ελέγχουν την πρόσβαση και για να επιβάλλουν την πολιτική ασφάλειας του δικτύου που προστατεύουν: 1. Έλεγχος υπηρεσιών: Καθορίζει τους τύπους των υπηρεσιών του διαδικτύου που µπορούν να προσπελαστούν προς τα µέσα ή προς τα έξω. Το ανάχωµα µπορεί να φιλτράρει την κίνηση µε βάση τη διεύθυνση ΙΡ και τον αριθµό θύρας TCP. Μπορεί επίσης να έχει λογισµικό πληρεξουσίου που δέχεται και ερµηνεύει κάθε αίτηση παροχής υπηρεσίας πριν την µεταβιβάσει. Μπορεί επίσης να φιλοξενεί το ίδιο το λογισµικό του εξυπηρετητή, π.χ. µια υπηρεσία ταχυδροµείου ή WWW. 2. Έλεγχος κατεύθυνσης: Καθορίζει την κατεύθυνση προς την οποία επιτρέπεται η υποβολή αιτήσεων για παροχή συγκεκριµένων υπηρεσιών µέσω του αναχώµατος. 3. Έλεγχος χρηστών: Ελέγχει την πρόσβαση σε µια υπηρεσία, ανάλογα µε το ποιος χρήστης προσπαθεί να την προσπελάσει. Το χαρακτηριστικό αυτό συνήθως εφαρµόζεται σε χρήστες συστηµάτων που βρίσκονται µέσα στην περίµετρο που προστατεύει το ανάχωµα (τοπικούς χρήστες). Μπορεί όµως να εφαρµοστεί και σε εισερχόµενη κίνηση από εξωτερικούς χρήστες. Η εφαρµογή αυτή απαιτεί κάποια µορφή τεχνολογίας ασφαλούς αυθεντικοποίησης, όπως αυτή που παρέχεται από το IPSec. 4. Έλεγχος συµπεριφοράς: Ελέγχει πώς χρησιµοποιούνται συγκεκριµένες υπηρεσίες. Για παράδειγµα, το ανάχωµα µπορεί να φιλτράρει το ηλεκτρονικό ταχυδροµείο ή µπορεί να επιτρέπει την εξωτερική πρόσβαση µόνο σε ένα τµήµα της πληροφορίας που περιέχει ένας εξυπηρετητής WWW. Μπορούµε τώρα να έρθουµε και στα χαρακτηριστικά των αναχωµάτων. Τα αναχώµατα, λοιπόν, έχουν τις παρακάτω δυνατότητες: 1. Πρώτα –πρώτα, το ανάχωµα αποτελεί ένα µοναδικό σηµείο φραγής που κρατάει τους µη εξουσιοδοτηµένους χρήστες έξω από το προστατευόµενο δίκτυο, απαγορεύει σε δυνητικά ευπαθείς υπηρεσίες να εισέλθουν ή να εξέλθουν από το δίκτυο και παρέχει προστασία από διάφορες επιθέσεις δροµολόγησης και παραποίησης διευθύνσεων ΙΡ. Βέβαια, η χρήση ενός µοναδικού σηµείου φραγής απλοποιεί τη διαχείριση της ασφάλειας, αφού όλες οι λειτουργίες ασφάλειας είναι
173
174
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
συγκεντρωµένες σε ένα σύστηµα ή σε ένα σύνολο συστηµάτων. 2. Επιπλέον, το ανάχωµα αποτελεί ένα µοναδικό σηµείο αναφοράς γεγονότων που σχετίζονται µε την ασφάλεια. Εποµένως, µπορούµε εκεί να υλοποιήσουµε όλους τους ελέγχους και τους συναγερµούς. 3. Ακόµη, το ανάχωµα αποτελεί µια βολική πλατφόρµα για την εκτέλεση διάφορων λειτουργιών του διαδικτύου που δε σχετίζονται µε την ασφάλεια. Αυτές περιλαµβάνουν ένα µεταφραστή διευθύνσεων δικτύου, που αντιστοιχεί τις τοπικές διευθύνσεις σε διευθύνσεις διαδικτύου, και µια λειτουργία διαχείρισης δικτύου, που ελέγχει ή καταγράφει τη χρήση του διαδικτύου. 4. Τέλος, το ανάχωµα µπορεί να χρησιµοποιηθεί ως πλατφόρµα για το IPSec. Επιπλέον, µπορεί να χρησιµοποιηθεί για τη δηµιουργία εικονικών ιδιωτικών δικτύων (Virtual Private Networks – VPN). ∆υστυχώς, παρά τις παραπάνω, σηµαντικές, δυνατότητές τους, τα αναχώµατα έχουν και περιορισµούς, όπως άλλωστε και κάθε τεχνική. Έτσι, κανένα ανάχωµα δεν µπορεί να παρέχει προστασία απέναντι σε επιθέσεις που το παρακάµπτουν. Παράκαµψη του αναχώµατος µπορεί να γίνει από συστήµατα του εσωτερικού δικτύου που µέσω dial–up µπορούν να συνδεθούν µε κάποιον παροχέα διαδικτύου. Επίσης, σ’ ένα εσωτερικό τοπικό δίκτυο µπορούν να υπάρχουν modems, που παρέχουν τη δυνατότητα dial–up σύνδεσης σε υπαλλήλους που µετακινούνται. Ακόµη, κανένα ανάχωµα δεν παρέχει προστασία εναντίον εσωτερικών απειλών. Παραδείγµατα τέτοιων απειλών είναι ένας δυσαρεστηµένος υπάλληλος ή ένας υπάλληλος που αθέλητα συνεργάζεται µε έναν εξωτερικό επιτιθέµενο. Τέλος, κανένα ανάχωµα δεν µπορεί να παρέχει προστασία εναντίον της µεταφοράς προγραµµάτων ή αρχείων µολυσµένων µε ιούς. Λόγω της ποικιλίας των λειτουργικών συστηµάτων και των εφαρµογών που υποστηρίζονται µέσα στην περίµετρο, δεν θα ήταν πρακτικό και –ίσως– ούτε καν δυνατό για το ανάχωµα να σαρώνει όλα τα εισερχόµενα αρχεία, ηλεκτρονικό ταχυδροµείο και µηνύµατα για ιούς.
5 . 2 ¢ π ∫ ∆ À∞ ∫ ∞ ∞ ¡ ∞ à ø ª ∞ ∆ ∞
175
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 5.2 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Ένα ανάχωµα δε µπορεί να φιλτράρει κίνηση µε βάση τη θύρα TCP µόνο.
❏
❏
2. Ένα ανάχωµα µπορεί να ελέγχει την πρόσβαση χρηστών σε υπηρεσίες.
❏
❏
3. Ένα ανάχωµα δε µπορεί να ελέγχει τη χρήση υπηρεσιών.
❏
❏
4. Η ύπαρξη αναχώµατος απλοποιεί τη διαχείριση ασφάλειας.
❏
❏
5. Η ύπαρξη αναχώµατος διευκολύνει την υλοποίηση ελέγχων και συναγερµών.
❏
❏
6. Το ανάχωµα είναι κατάλληλο σηµείο για την υλοποίηση του IPSec.
❏
❏
7. Τα αναχώµατα προστατεύουν από εσωτερικές απειλές.
❏
❏
8. Τα αναχώµατα δεν προστατεύουν από µολύνσεις ιοµορφικού λογισµικού.
❏
❏
9. Όταν υπάρχει δυνατότητα σύνδεσης dial–up από το εσωτερικό δίκτυο, η ύπαρξη του αναχώµατος δεν ωφελεί.
❏
❏
5.2.2 T‡ÔÈ ·Ó·¯ˆÌ¿ÙˆÓ
Υπάρχουν τρεις κύριοι τύποι αναχωµάτων: δροµολογητές φιλτραρίσµατος πακέτων, πύλες επιπέδου εφαρµογής και πύλες επιπέδου κυκλώµατος. Θα εξετάσουµε και τους τρεις αυτούς τύπους ξεχωριστά. ¢ƒ√ª√§√°∏∆∏™ ºπ§∆ƒ∞ƒπ™ª∞∆√™ ¶∞∫∂∆ø¡
Ο δροµολογητής φιλτραρίσµατος πακέτων (Packet Filtering Router) εφαρµόζει ένα σύνολο κανόνων σε κάθε εισερχόµενο πακέτο ΙΡ και στη συνέχεια προωθεί ή απορρίπτει το πακέτο. Ο δροµολογητής συνήθως είναι διαµορφωµένος για να φιλτράρει πακέτα που πηγαίνουν και προς τις δύο διευθύνσεις (από και προς το εσωτερικό δίκτυο). Οι κανόνες
176
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
φιλτραρίσµατος βασίζονται σε πεδία της επικεφαλίδας ΙΡ και της επικεφαλίδας µεταφοράς (TCP ή UDP, ανάλογα), που περιλαµβάνουν τις διευθύνσεις πηγής και προορισµού ΙΡ, το πεδίο πρωτοκόλλου ΙΡ (που ορίζει το πρωτόκολλο µεταφοράς) και τον αριθµό θύρας TCP ή UDP (που ορίζει την εφαρµογή, π.χ. SNMP ή TELNET). Αν τα περιεχόµενα κάποιας επικεφαλίδας αντιστοιχιστούν µ’ αυτά κάποιου κανόνα, ο κανόνας ενεργοποιείται για να καθορίσει αν το πακέτο πρέπει να προωθηθεί ή να απορριφθεί. Αν δεν βρεθεί κανόνας µε κατάλληλα περιεχόµενα, εκτελείται µια προκαθορισµένη ενέργεια. Οι προκαθορισµένες πολιτικές είναι δύο: 1. Ό,τι δεν επιτρέπεται ρητά, απαγορεύεται. 2. Ό,τι δεν απαγορεύεται ρητά, επιτρέπεται. Η πρώτη πολιτική είναι, βέβαια, η πιο συντηρητική. Αρχικά, τα πάντα είναι απαγορευµένα και οι επιτρεπόµενες υπηρεσίες πρέπει να προσθέτονται µία–µία, ανά περίπτωση. Η πολιτική αυτή είναι περισσότερο αντιληπτή από τους χρήστες, που ενδέχεται και να δουν το ανάχωµα ως εµπόδιο στην καθηµερινή τους δουλειά. Αντίθετα, η δεύτερη πολιτική αυξάνει την ευκολία χρήσης, αλλά έχει µειωµένη ασφάλεια. Ο διαχειριστής ασφάλειας πρέπει, βασικά, να αντιδρά σε κάθε νέα απειλή, καθώς αυτή γίνεται γνωστή. Πλεονεκτήµατα αυτού του τύπου αναχώµατος είναι η απλότητά τους, η διαφάνεια που παρέχουν στους χρήστες και η µεγάλη τους ταχύτητα. Τα µειονεκτήµατα περιλαµβάνουν τη δυσκολία της κατασκευής σωστών κανόνων φιλτραρίσµατος πακέτων και την έλλειψη αυθεντικοποίησης. Επιθέσεις που µπορούν να εκδηλωθούν εναντίον τέτοιων αναχωµάτων και τα αντίστοιχα αντίµετρα είναι οι εξής: • Παραποίηση διεύθυνσης ΙΡ: Ο επιτιθέµενος µεταδίδει πακέτα από το εξωτερικό της περιµέτρου µε πεδίο διεύθυνσης ΙΡ που περιέχει τη διεύθυνση ενός εσωτερικού συστήµατος, µε την ελπίδα ότι η χρήση της παραποιηµένης διεύθυνσης θα επιτρέψει την παραβίαση συστηµάτων που χρησιµοποιούν απλά µέτρα ασφάλειας ως προς τη διεύθυνση προέλευσης, δηλαδή στα συστήµατα εκείνα στα οποία πακέτα προερχόµενα από κάποια έµπιστα συστήµατα γίνονται αποδεκτά. Το αντίµετρο είναι να απορρίπτουµε τα πακέτα που έχουν εσωτερική διεύθυνση αποστολέα αλλά φτάνουν σε εξωτερική διεπαφή. • Επιθέσεις δροµολόγησης αποστολέα: Ο σταθµός αποστολής καθορίζει το δροµολόγιο που το κάθε πακέτο θα πάρει στη διαδροµή του µέσα στο διαδίκτυο, ελπίζοντας ότι η πρακτική αυτή θα παρακάµψει µέτρα ασφάλειας που δεν αναλύουν
5 . 2 ¢ π ∫ ∆ À∞ ∫ ∞ ∞ ¡ ∞ à ø ª ∞ ∆ ∞
την πληροφορία δροµολόγησης από τον αποστολέα. Το αντίµετρο είναι να απορρίπτονται όλα τα πακέτα που χρησιµοποιούν την επιλογή αυτή. • Επιθέσεις απειροελάχιστων τµηµάτων: Ο επιτιθέµενος χρησιµοποιεί την επιλογή τµηµατοποίησης ΙΡ για να δηµιουργήσει τµήµατα εξαιρετικά µικρά σε µέγεθος και να επιβάλει έτσι την τοποθέτηση της πληροφορίας που περιέχει η επικεφαλίδα TCP σε ξεχωριστό τµήµα πακέτου. Η επίθεση αυτή στοχεύει στην παράκαµψη κανόνων φιλτραρίσµατος που βασίζονται στην πληροφορία αυτή. Ο επιτιθέµενος ελπίζει ότι ο δροµολογητής φιλτραρίσµατος εξετάζει µόνο το πρώτο τµήµα και ότι τα υπόλοιπα περνούν χωρίς έλεγχο. Η επίθεση αποκρούεται απορρίπτοντας όλα τα πακέτα µε τύπο πρωτοκόλλου TCP και IP Fragment Offset ίσο µε 1. ¶À§∂™ ∂¶π¶∂¢√À Eº∞ƒª√°∏™
Oι πύλες επιπέδου εφαρµογής (Application Level Gateways), που ονοµάζονται επίσης και πληρεξούσιοι εξυπηρετητές (proxy servers), λειτουργούν ως αναµεταδότες κίνησης στο επίπεδο εφαρµογής. Ο χρήστης επικοινωνεί µε την πύλη µέσω µιας εφαρµογής TCP/IP (π.χ. Telnet, FTP) και η πύλη του ζητάει το όνοµα του αποµακρυσµένου συστήµατος που πρέπει να προσπελαστεί. Όταν απαντήσει ο χρήστης και δώσει τις απαραίτητες και έγκυρες πληροφορίες αυθεντικοποίησης που τον αφορούν, η πύλη επικοινωνεί µε την εφαρµογή στο αποµακρυσµένο σύστηµα και αναµεταδίδει όλα τα τµήµατα TCP που περιέχουν τα δεδοµένα της εφαρµογής µεταξύ των δύο άκρων. Αν η πύλη δεν υποστηρίζει τον κώδικα πληρεξουσίου για µια συγκεκριµένη εφαρµογή, η υπηρεσία δεν παρέχεται και δεν µπορεί να διακινηθεί δια µέσου του αναχώµατος. Επιπλέον, η πύλη µπορεί να διαµορφωθεί έτσι ώστε να υποστηρίζει µόνο συγκεκριµένα χαρακτηριστικά µιας εφαρµογής, τα οποία ο διαχειριστής δικτύου κρίνει απαραίτητα, απορρίπτοντας όλα τα υπόλοιπα. Τα αναχώµατα αυτά είναι περισσότερο ασφαλή από τους δροµολογητές φιλτραρίσµατος πακέτων. Αντί να προσπαθούν να χειριστούν τους απειράριθµους πιθανούς συνδυασµούς που πρέπει να επιτρέπονται ή να απαγορεύονται στα επίπεδα TCP και ΙΡ, η πύλη επιπέδου εφαρµογής χρειάζεται µόνο να εξετάζει εξονυχιστικά ένα µικρό αριθµό επιτρεπόµενων εφαρµογών. Επιπλέον, είναι εύκολο να καταγράφεται και να ελέγχεται όλη η εισερχόµενη κίνηση στο επίπεδο εφαρµογής. Ένα βασικό µειονέκτηµα των αναχωµάτων αυτού του τύπου είναι η επιπλέον επιβάρυνση της επεξεργασίας σε κάθε σύνδεση. Στην πραγµατικότητα υπάρχουν δύο τµήµατα σύνδεσης µεταξύ των τελικών χρηστών, µε την πύλη στο σηµείο τοµής τους, και η πύλη πρέ-
177
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
178
πει να εξετάζει και να διακινεί όλη την κίνηση και προς τις δύο κατευθύνσεις. ¶À§∏ E¶π¶∂¢√À ∫À∫§øª∞∆√™
Mια πύλη επιπέδου κυκλώµατος (Circuit Level Gateway) µπορεί να είναι ένα αυτόνοµο σύστηµα ή µπορεί να είναι µια ειδική λειτουργία που εκτελείται από µια πύλη επιπέδου εφαρµογής για συγκεκριµένες εφαρµογές. Μια τέτοια πύλη δεν επιτρέπει συνδέσεις TCP απ’ άκρη σ’ άκρη. Αντίθετα, εγκαθιστά δύο συνδέσεις TCP, µία µεταξύ της ίδιας και ενός χρήστη TCP σε κάποιο εσωτερικό σύστηµα και µια άλλη µεταξύ της ίδιας και ενός χρήστη TCP σε κάποιο εξωτερικό σύστηµα. Από τη στιγµή που θα εγκατασταθούν και οι δύο συνδέσεις, η πύλη συνήθως αναµεταδίδει τµήµατα TCP από τη µια σύνδεση στην άλλη χωρίς να εξετάζει τα περιεχόµενά τους. Η λειτουργία ασφάλειας συνίσταται στον καθορισµό του ποιες συνδέσεις επιτρέπονται. Τυπική χρήση τέτοιων αναχωµάτων είναι µια κατάσταση στην οποία ο διαχειριστής συστήµατος εµπιστεύεται τους εσωτερικούς χρήστες. Η πύλη µπορεί να διαµορφωθεί έτσι ώστε να λειτουργεί ως πύλη επιπέδου εφαρµογής ή ως πληρεξούσιος εξυπηρετητής για τις εισερχόµενες συνδέσεις και ως πύλη επιπέδου κυκλώµατος για τις εξερχόµενες συνδέσεις. Στη διαµόρφωση αυτή, η πύλη επιβαρύνεται µε την εξέταση της εισερχόµενης πληροφορίας, αλλά όχι µε αυτήν της εξερχόµενης. Παράδειγµα τέτοιου αναχώµατος αποτελεί το πακέτο SOCKS. ∂¶∞§•∂π™
Oι επάλξεις (Bastion hosts) είναι µηχανές που έχουν αναγνωριστθεί από τον υπεύθυνο ασφάλειας του δικτύου ως ισχυρά και κρίσιµα σηµεία για την ασφάλεια του δικτύου. Τυπικά, η έπαλξη χρησιµοποιείται ως πλατφόρµα για µια πύλη επιπέδου εφαρµογής ή µια πύλη επιπέδου κυκλώµατος. Τα κυριότερα χαρακτηριστικά των επάλξεων είναι τα εξής: • Στην πλατφόρµα υλικού τους τρέχει ασφαλής έκδοση του λειτουργικού συστήµατος. • Μόνο οι υπηρεσίες που ο διαχειριστής συστήµατος θεωρεί βασικές είναι εγκατεστηµένες στην έπαλξη. Αυτές περιλαµβάνουν πληρεξούσιες εφαρµογές, όπως Telnet, DNS, FTP, SMTP και αυθεντικοποίηση χρήστη.
5 . 2 ¢ π ∫ ∆ À∞ ∫ ∞ ∞ ¡ ∞ à ø ª ∞ ∆ ∞
• Η έπαλξη µπορεί να απαιτεί επιπρόσθετη αυθεντικοποίηση πριν επιτρέψει πρόσβαση ενός χρήστη στις πληρεξούσιες υπηρεσίες. Επιπλέον, κάθε πληρεξούσια υπηρεσία µπορεί να απαιτεί τη δική της αυθεντικοποίηση πριν επιτρέψει την πρόσβαση σε κάποιο χρήστη. • Κάθε πληρεξούσια υπηρεσία είναι διαµορφωµένη έτσι ώστε να υποστηρίζει µόνο ένα υποσύνολο του κανονικού συνόλου εντολών της εφαρµογής. • Κάθε πληρεξούσια υπηρεσία είναι διαµορφωµένη έτσι ώστε να επιτρέπει πρόσβαση µόνο σε συγκεκριµένα συστήµατα. Αυτό σηµαίνει ότι το περιορισµένο σύνολο χαρακτηριστικών/εντολών µπορεί να εφαρµοστεί σε περιορισµένο µόνο υποσύνολο συστηµάτων του προστατευόµενου δικτύου. • Κάθε πληρεξούσια υπηρεσία διατηρεί λεπτοµερείς πληροφορίες ελέγχου καταγράφοντας όλη την κίνηση, κάθε σύνδεση και τη διάρκειά της. Το ίχνος ελέγχου είναι ένα βασικό εργαλείο για τον καθορισµό και τερµατισµό επιθέσεων. • Κάθε σπόνδυλος υπηρεσίας πληρεξουσίου είναι ένα πολύ µικρό πακέτο λογισµικού ειδικά σχεδιασµένο για να παρέχει ασφάλεια δικτύου. Λόγω της σχετικής τους απλότητας, είναι ευκολότερο να ελέγξουµε τέτοιους σπονδύλους για ελαττώµατα σχετικά µε την ασφάλεια. Για παράδειγµα, µια τυπική εφαρµογή ταχυδροµείου στο Unix µπορεί κάλλιστα να περιέχει 20.000 γραµµές κώδικα, ενώ µια αντίστοιχη υπηρεσία πληρεξουσίου λιγότερες από 1.000. • Κάθε πληρεξούσια υπηρεσία είναι ανεξάρτητη από τις άλλες που βρίσκονται στην ίδια έπαλξη. Αν υπάρξει κάποιο πρόβληµα µε τη λειτουργία µιας υπηρεσίας ή αν ανακαλυφθεί µια ευπάθεια, η υπηρεσία µπορεί να απεγκατασταθεί χωρίς να επηρεαστθεί η λειτουργία των υπολοίπων. Επίσης, αν οι χρήστες απαιτούν την υποστήριξη µιας νέας υπηρεσίας, ο διαχειριστής δικτύου µπορεί εύκολα να εγκαταστήσει τη νέα πληρεξούσια υπηρεσία στην έπαλξη. • Κάθε πληρεξούσια υπηρεσία προσπελάζει το δίσκο µόνο για να διαβάσει το αρχείο αρχικής της διαµόρφωσης. Έτσι, είναι δύσκολο στον επιτιθέµενο να εγκαταστήσει ∆ούρειους Ίππους ή άλλα επικίνδυνα αρχεία στην έπαλξη. • Κάθε πληρεξούσια υπηρεσία εξυπηρετεί τους µη προνοµιούχους χρήστες χρησιµοποιώντας ένα ιδιωτικό και ασφαλή κατάλογο στην έπαλξη.
179
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
180
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 5.3 Αντιστοιχίστε τα χαρακτηριστικά της αριστερής στήλης µε τους τύπους αναχωµάτων ή επιθέσεων της δεξιάς στήλης: 1. Εσωτερική διεύθυνση σε πακέτο προερχόµενο από το εξωτερικό.
1. ∆ροµολογητής φιλτραρίσµατος πακέτων
2. Καθορισµός δροµολογίου πακέτων.
2. Πύλη επιπέδου εφαρµογής
3. Ισχυρά και κρίσιµα για την ασφάλεια σηµεία.
3. Πύλη επιπέδου κυκλώµατος
4. Αναµετάδοση κίνησης σε επίπεδο εφαρµογής.
4. Επάλξεις
5. Εφαρµογή κανόνων σε όλα τα εισερχόµενα πακέτα.
5. Παραποίηση διευθύνσεων ΙΡ
6. Τµηµατοποίηση πακέτων.
6. ∆ροµολόγηση αποστολέα
7. Απαγόρευση συνδέσεων TCP απ’ άκρη σ’ άκρη.
7. Απειροελάχιστα τµήµατα
5.2.3 ¢È·ÌÔÚÊÒÛÂȘ ·Ó·¯ˆÌ¿ÙˆÓ
Εκτός από τη χρήση µιας απλής διαµόρφωσης που αποτελείται από ένα µοναδικό σύστηµα, όπως ένας δροµολογητής φιλτραρίσµατος πακέτων ή µια πύλη, είναι δυνατές –και πιο συνηθισµένες– πιο πολύπλοκες διαµορφώσεις. Υπάρχουν τρεις συνηθισµένες διαµορφώσεις αναχωµάτων, τις οποίες εξετάζουµε στη συνέχεια. Στη διαµόρφωση παραπετάσµατος µε απλή έπαλξη, που φαίνεται στο Σχήµα 5.1, το ανάχωµα αποτελείται από δύο συστήµατα: ένα δροµολογητή φιλτραρίσµατος πακέτων και µια απλή έπαλξη. Συνήθως ο δροµολογητής είναι διαµορφωµένος έτσι ώστε από την κίνηση του διαδικτύου, να επιτρέπεται η είσοδος µόνο σε πακέτα ΙΡ που προορίζονται για την έπαλξη, ενώ από την εσωτερική κίνηση, επιτρέπεται η έξοδος µόνο σε πακέτα που προορίζονται για την έπαλξη.
5 . 2 ¢ π ∫ ∆ À∞ ∫ ∞ ∞ ¡ ∞ à ø ª ∞ ∆ ∞
181
Internet
∆ροµολογητής φιλτραρίσµατος
Eξυπηρετητής WWW
Έπαλξη
™¯‹Ì· 5.1
Παραπέτασµα µε απλή έπαλξη
Η έπαλξη εκτελεί λειτουργίες αυθεντικοποίησης και πληρεξουσίου. Η διαµόρφωση αυτή παρέχει περισσότερη ασφάλεια από έναν απλό δροµολογητή φιλτραρίσµατος πακέτων ή µια απλή έπαλξη, για δύο λόγους: Πρώτον, η διαµόρφωση αυτή υλοποιεί φιλτράρισµα τόσο επιπέδου πακέτου όσο και εφαρµογής, επιτρέποντας έτσι σηµαντική ευελιξία στον καθορισµό της πολιτικής ασφάλειας. ∆εύτερον, ένας επιτιθέµενος πρέπει γενικά να παραβιάσει δύο ξεχωριστά συστήµατα για να µπορέσει να παραβιάσει την ασφάλεια του εσωτερικού δικτύου. Η διαµόρφωση αυτή, επίσης, επιτρέπει την ευελιξία στην παροχή απ’ ευθείας πρόσβασης στο διαδίκτυο. Για παράδειγµα, το εσωτερικό δίκτυο µπορεί να περιλαµβάνει έναν εξυπηρετητή δηµόσιας πληροφόρησης, όπως έναν εξυπηρετητή παγκόσµιου ιστού, για τον οποίο δεν απαιτείται υψηλό επίπεδο ασφάλειας. Στην περίπτωση αυτή ο δροµολογητής µπορεί να διαµορφωθεί έτσι ώστε να επιτρέπει την απευθείας κίνηση µεταξύ του εξυπηρετητή αυτού και του διαδικτύου.
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
182
Ωστόσο, στη διαµόρφωση αυτή, αν κάποιος επιτιθέµενος παραβιάσει πλήρως το δροµολογητή φιλτραρίσµατος πακέτων, η κίνηση θα µπορούσε να διέλθει απ’ ευθείας (µέσω του δροµολογητή) µεταξύ του διαδικτύου και των εσωτερικών συστηµάτων του δικτύου. Για να αποφευχθεί το ενδεχόµενο αυτό, µπορούµε να χρησιµοποιήσουµε τη διαµόρφωση παραπετάσµατος µε διπλή έπαλξη, όπως φαίνεται στο Σχήµα 5.2, στην οποία η έλλειψη φυσικής σύνδεσης των εσωτερικών συστηµάτων µε το δροµολογητή φιλτραρίσµατος πακέτων και η παροχέτευση του συνόλου της κίνησης µέσω της έπαλξης καθιστά αδύνατη µια τέτοια κατάσταση.
Internet
∆ροµολογητής φιλτραρίσµατος
Eξυπηρετητής WWW
™¯‹Ì· 5.2
Παραπέτασµα µε διπλή έπαλξη
Έπαλξη
5 . 2 ¢ π ∫ ∆ À∞ ∫ ∞ ∞ ¡ ∞ à ø ª ∞ ∆ ∞
183
Τα πλεονεκτήµατα των διπλών στρωµάτων ασφάλειας που υπήρχαν στην προηγούµενη διαµόρφωση διατηρούνται βέβαια και εδώ. Έτσι, όπως και πριν, ένας εξυπηρετητής παγκόσµιου ιστού µπορεί να έχει απ’ ευθείας επικοινωνία µε το δροµολογητή, εάν βέβαια αυτή η πρακτική είναι σύµφωνη µε την πολιτική ασφάλειας. Η διαµόρφωση υποδικτύου–παραπετάσµατος, που φαίνεται στο Σχήµα 5.3, είναι η ασφαλέστερη απ’ όσες συζητήσαµε. Στη διαµόρφωση αυτή χρησιµοποιούνται δύο δροµολογητές φιλτραρίσµατος πακέτων, ένας µεταξύ της έπαλξης και του διαδικτύου και άλλος ένας µεταξύ της έπαλξης και του εσωτερικού δικτύου.
Internet
∆ροµολογητής φιλτραρίσµατος
Eξυπηρετητής WWW
Έπαλξη
™¯‹Ì· 5.3
Υποδίκτυο–παραπέτασµα
Η διαµόρφωση αυτή δηµιουργεί ένα αποµονωµένο υποδίκτυο, που µπορεί να αποτελείται µόνο από την έπαλξη, αλλά µπορεί και να περιλαµβάνει έναν ή περισσότερους εξυπηρετητές πληροφόρησης (παγκόσµιου ιστού) και modems για τηλεφωνικές συν-
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
184
δέσεις. Συνήθως, τόσο το διαδίκτυο όσο και το εσωτερικό δίκτυο έχουν πρόσβαση στα συστήµατα του υποδικτύου, αλλά η κίνηση διαµέσου αυτού απαγορεύεται. Η διαµόρφωση αυτή παρουσιάζει το πλεονέκτηµα ότι υπάρχουν τώρα τρία επίπεδα άµυνας εναντίον εισβολέων. Επίσης, ο εξωτερικός δροµολογητής κάνει το εσωτερικό δίκτυο αόρατο ως προς το διαδίκτυο. Το µόνο τµήµα που είναι ορατό από το διαδίκτυο είναι το υποδίκτυο–παραπέτασµα. Οµοίως, ο εσωτερικός δροµολογητής απαγορεύει στα εσωτερικά συστήµατα να δηµιουργήσουν απ’ ευθείας διαδροµές προς το διαδίκτυο, καθιστώντας αόρατο το διαδίκτυο σ’ αυτά. ¢Ú·ÛÙËÚÈfiÙËÙ· 5.3 Ποιες από τις υπηρεσίες ασφάλειας του µοντέλου OSI υποστηρίζονται από ένα δροµολογητή φιλτραρίσµατος πακέτων;
¢Ú·ÛÙËÚÈfiÙËÙ· 5.4 Υποθέστε ότι είστε διαχειριστής ενός τοπικού δικτύου που είναι συνδεµένο µε το διαδίκτυο. Καθορίστε ποιες αλληλεπιδράσεις θα επιτρέπετε µεταξύ του τοπικού δικτύου και του διαδικτύου. Τι τύπο αναχώµατος και µε τι διαµόρφωση χρειάζεστε για να υλοποιήσετε την πολιτική σας αυτή;
¢Ú·ÛÙËÚÈfiÙËÙ· 5.5 Υπάρχει περίπτωση ένα ανάχωµα να προστατεύει ένα δίκτυο από προσβολές ιοµορφικού λογισµικού;
¢Ú·ÛÙËÚÈfiÙËÙ· 5.6 Kάνετε µια έρευνα στο διαδίκτυο για να εντοπίσετε εµπορικά διαθέσιµα αναχώµατα.Κατηγοριοποιείστε όσα περισσότερα µπορείτε από αυτά που θα βρείτε στους τύπους και τις διαµορφώσεις που συζητήσαµε στο κεφάλαιο αυτό. Μια καλή διεύθυνση για να ξεκινήσετε την έρευνά σας είναι η http://www.clark.net/pub/mjr/pubs.http://www.thegild.com/firewall/#HEADA. Επιπλέον χρήσιµες διευθύνσεις είναι οι: http://pw.internet.com/protection/firewalls και http://www.cerias.purdue.edu/coast/firewalls.
5 . 3 ™ À ™ ∆ ∏ ª ∞∆∞ ∞ ¡ ∞ ° ¡ ø ƒ π ™ ∏ ™ ∂ π ™ µ √ § ø ¡
5.3 ™˘ÛÙ‹Ì·Ù· ·Ó·ÁÓÒÚÈÛ˘ ÂÈÛ‚ÔÏÒÓ
Φανταστείτε µια διαµόρφωση αναχώµατος υποδικτύου–παραπετάσµατος και έναν εξυπηρετητή παγκόσµιου ιστού, όπως συζητήσαµε στην προηγούµενη ενότητα. Είναι άραγε απόλυτα εξασφαλισµένος ο εξυπηρετητής αυτός; Όπως καταλαβαίνετε, αν η απάντηση στην ερώτηση αυτή ήταν καταφατική, η παρούσα ενότητα δε θα είχε την έκταση που έχει. Ωστόσο, η ιστορία έχει δείξει ότι σχεδόν κανένας εξυπηρετητής δεν είναι απόλυτα ασφαλής, ακόµη και αν χρησιµοποιείται η ισχυρότερη διαµόρφωση αναχώµατος για την προστασία του. Γιατί όµως; Οι βασικοί λόγοι είναι τρεις. Πρώτον, το λογισµικό των συνιστωσών της διαµόρφωσης µπορεί να περιέχει λάθη που µπορούν να οδηγήσουν σε παραβίαση ασφάλειας. Το λάθος µπορεί να βρίσκεται στο λειτουργικό σύστηµα, στον εξυπηρετητή παγκόσµιου ιστού ή στην υλοποίηση του δροµολογητή. ∆εύτερον, εκτελέσιµα προγράµµατα που δηµιουργούνται στο εσωτερικό δίκτυο και καλούνται από τον εξυπηρετητή παγκόσµιου ιστού µπορεί να έχουν λάθη των οποίων η εκµετάλλευση οδηγεί σε παραβιάσεις ασφάλειας. Τρίτον, ένας ή περισσότεροι από τους µηχανισµούς ασφάλειας µπορεί να µην είναι σωστά διαµορφωµένοι. Μια έρευνα του 1997 απέδειξε ότι περίπου 80% των εξυπηρετητών παγκόσµιου ιστού, σε παγκόσµια κλίµακα, ήταν ανοικτοί σε κάποιου είδους επιθέσεις. Όταν πρωτοεµφανίστηκε η έννοια του αναχώµατος, πολλοί ήταν εκείνοι που νόµισαν ότι βρήκαν την απόλυτη λύση στο πρόβληµα της ασφάλειας δικτύων. Κάποιοι µάλιστα, πολυπράγµονες, έφταναν στο σηµείο να δηλώνουν ότι η ασφάλεια δικτύων είναι όρος συνώνυµος µε τα ηλεκτρονικά αναχώµατα. Φαίνεται όµως ότι, δυστυχώς, οι κάθε λογής hackers δεν πληροφορήθηκαν τις δηλώσεις αυτές και συνέχισαν, χωρίς να ενοχληθούν ιδιαίτερα, τις παραβιάσεις δικτύων που προστατεύονται και µε ηλεκτρονικά αναχώµατα. Με δεδοµένο λοιπόν το γεγονός ότι περίπτωση απόλυτης εξασφάλισης δεν υπάρχει, ανεξάρτητα από τις τεχνικές που θα χρησιµοποιήσουµε, είναι, πιστεύω, φυσικό να αναρωτηθούµε αν µπορούµε να κάνουµε, τελικά, κάτι για να αντιληφθούµε τουλάχιστον ότι κάποιος προσπαθεί να παραβιάσει τα συστήµατά µας και να τον σταµατήσουµε πριν η ζηµιά γίνει πολύ µεγάλη. Η απάντηση στο ερώτηµα αυτό δίνεται από τα συστήµατα ανίχνευσης εισβολών – ΣΑΕ (intrusion detection systems). Αν η πρώτη γραµµή άµυνας ενός συστήµατος είναι ο µηχανισµός ελέγχου πρόσβασης, τότε η τελευταία είναι το ίχνος ελέγχου. Πράγµατι, τα ίχνη ελέγχου, εκτός του
185
186
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
ότι µπορούν να χρησιµοποιηθούν για τη «νεκροψία» ενός συστήµατος που υπέστη επίθεση, προκειµένου να αναλυθεί η επίθεση και –πιθανόν–– να συγκεντρωθούν στοιχεία που θα βοηθήσουν στην ποινική δίωξη του εισβολέα, λειτουργούν αποτελεσµατικά και ως στοιχεία αποτρεπτικά των εισβολών. Ωστόσο, το ποσό της πληροφορίας που συσσωρεύεται από τη διαδικασία συλλογής στοιχείων για το ίχνος ελέγχου µέσα σε λίγες ώρες λειτουργίας ακόµη και ενός µεσαίου µεγέθους δικτύου καθιστά απαγορευτική την επεξεργασία µε µη αυτοµατοποιηµένο τρόπο. Η παρατήρηση αυτή οδήγησε στην ανάπτυξη αυτοµατοποιηµένων εργαλείων ανάλυσης του ίχνους ελέγχου, που είναι γνωστά ως «συστήµατα ανίχνευσης εισβολών». 5.3.1 ªÔÓ٤Ϸ ·Ó›¯Ó¢Û˘ ÂÈ‚ÔÏÒÓ
Η πλειοψηφία των ΣΑΕ που εµφανίστηκαν στην αγορά ή προτάθηκαν ως ερευνητικά πρωτότυπα βασίζουν τη λειτουργία τους στο ίδιο βασικό µοντέλο ανίχνευσης, που παρουσιάστηκε από την Dorothy Denning, το 1987. Σύµφωνα µε το µοντέλο αυτό, τα στοιχεία του συστήµατος οµαδοποιούνται σε έξι κατηγορίες: 1. Τα υποκείµενα, δηλαδή τους χρήστες και τις διαδικασίες που εκτελούνται στο σύστηµα. 2. Τα αντικείµενα, δηλαδή τους πόρους του συστήµατος. 3. Τις εγγραφές ελέγχου, που περιγράφουν τις πράξεις των υποκειµένων επί των αντικειµένων, καθώς και συµπληρωµατικά στοιχεία, όπως το χρόνο στον οποίο συνέβη η κάθε πράξη, το ποσό πόρων που χρησιµοποιήθηκαν κ.λπ. 4. Τα προφίλ, δηλαδή δοµές που περιγράφουν στατιστικά το πώς συµπεριφέρονται τα υποκείµενα σε σχέση µε τα αντικείµενα. 5. Τις εγγραφές ανωµαλιών, που περιγράφουν στατιστικά παράξενες (ανώµαλες) συµπεριφορές κάποιου υποκειµένου σε σχέση µε κάποιο αντικείµενο, γεγονότα που οδηγούν στην υποψία εισβολής. 6. Tους κανόνες ενεργοποίησης, οι οποίοι, όταν ενεργοποιηθούν ως αποτέλεσµα ικανοποίησης συγκεκριµένων συνθηκών, ειδοποιούν τον υπεύθυνο ασφάλειας ότι κάτι ύποπτο συµβαίνει, προτείνουν µέτρα αντίδρασης και ―σε µερικά συστήµατα ανίχνευσης εισβολών― τα εφαρµόζουν. Το µοντέλο αυτό παρουσιάζεται σχηµατικά στο Σχήµα 5.4. Η Γεννήτρια Γεγονότων αποτελεί τη διεπαφή του ΣΑΕ µε το υπό παρακολούθηση σύστηµα. ∆έχεται απ’ αυτό πληροφορίες από τη χρήση του δικτύου, τους πόρους του συστήµατος, την απασχόληση των συσκευών εισόδου – εξόδου για κάθε χρήστη και γενικότερα ό,τι πληρο-
5 . 3 ™ À ™ ∆ ∏ ª ∞∆∞ ∞ ¡ ∞ ° ¡ ø ƒ π ™ ∏ ™ ∂ π ™ µ √ § ø ¡
187
φορία περιέχεται στο ίχνος ελέγχου του συστήµατος. Η µονάδα δηµιουργίας και συντήρησης προφίλ έχει την ευθύνη της αναγνώρισης ανωµαλιών στη λειτουργία του συστήµατος. Εκτελεί τη λειτουργία αυτή αξιοποιώντας στατιστικά προφίλ συµπεριφοράς των υποκειµένων του συστήµατος. Το υποσύστηµα κανόνων περιέχει κωδικοποιηµένη ––σε µορφή κανόνων–– τη γνώση του σχεδιαστή για συγκεκριµένα σενάρια εισβολών. Αυτή η βάση γνώσης ενηµερώνεται κατάλληλα όταν ανακαλυφθεί νέο σενάριο εισβολής.
Ίχνη ελέγχου,πακέτα δικτύου κτλ.
Γεννήτρια γεγονότων Eνηµέρωση κανόνων Eγγραφές ανωµαλιών Προφίλ
Kανόνες Eνηµερωµένα προφίλ
™¯‹Ì· 5.4
Pολόϊ ∆ηµιουργία νέων προφίλ
Παρά το γεγονός ότι το µοντέλο αυτό βρήκε µεγάλη απήχηση, υπάρχουν σηµαντικές δυσκολίες χρήσης του σε αρκετά σύγχρονα ΣΑΕ, που χρησιµοποιούν τεχνικές όπως νευρωνικά δίκτυα, αυτόνοµους πράκτορες, γράφους, γλώσσες αναγνώρισης διαθέσεων χρηστών. Ένα γενικότερο, αρχιτεκτονικό, µοντέλο (Σχήµα 5.5) που περιγράφει τα περισσότερα ΣΑΕ διακρίνει οκτώ βασικά δοµικά στοιχεία ενός ΣΑΕ: 1. Το υποσύστηµα συλλογής στοιχείων, που είναι υπεύθυνο για τη συλλογή δεδοµένων από το σύστηµα υπό παρακολούθηση και τη µετάφρασή τους σε µια εσωτερική, κοινή γλώσσα. Τα δεδοµένα αυτά περιλαµβάνουν εγγραφές του ίχνους ελέγχου, στοιχεία κίνησης του δικτύου κ.λπ. 2. Το υποσύστηµα ερµηνείας πληροφοριών, που έχει την ευθύνη της ερµηνείας των δεδοµένων που συλλέγει το υποσύστηµα συλλογής στοιχείων, προκειµένου να αποφασίσει αν τα δεδοµένα συνιστούν καταστάσεις ύποπτες για εισβολή.
Μοντέλο ανίχνευσης εισβολών
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
188
3. Το υποσύστηµα λήψης απόφασης, που είναι υπεύθυνο για τη λήψη της τελικής απόφασης για το αν πράγµατι πρόκειται για εισβολή ή όχι. 4. Το υποσύστηµα επιλογής και εφαρµογής αντιµέτρων, που, αν το υποσύστηµα λήψης απόφασης αποφασίσει ότι συντρέχει εισβολή, έχει την ευθύνη επιλογής και ίσως εφαρµογής κατάλληλων αντιµέτρων. 5. Το υποσύστηµα διεπαφής µε το χρήστη, που έχει την ευθύνη παρουσίασης στο διαχειριστή ασφάλειας των ευρηµάτων του συστήµατος και επίσης της αποδοχής των εντολών του. 6. Το υποσύστηµα επικοινωνιών, που επιτρέπει την επικοινωνία µεταξύ των υποσυστηµάτων. 7. Το υποσύστηµα καταγραφής ενεργειών, που αποτελεί το ίχνος ελέγχου του ίδιου του συστήµατος. 8. Το υποσύστηµα βάσης δεδοµένων ασφάλειας, στην οποία καταγράφονται όλες οι παράµετροι ασφάλειας του συστήµατος. Αυτονόητο είναι ότι κάποια από τα υποσυστήµατα αυτά είναι δυνατόν να απουσιάζουν σε συγκεκριµένα ΣΑΕ ή κάποια υποσυστήµατα να είναι ενσωµατωµένα σε κάποια άλλα. Οι τεχνολογίες που µπορούν να χρησιµοποιηθούν για την υλοποίηση των υποσυστηµάτων αυτών ποικίλλουν ανάλογα µε το υποσύστηµα.
Eπικοινωνίες Συλλογή στοιχείων Bάση δεδο- µένων Eρµηνεία
Λήψη απόφασης
™¯‹Ì· 5.5
Αρχιτεκτονική ΣΑΕ
Eπιλογή & Eφαρµογή αντι- µέτρων
∆ιεπαφή χρήστη
Kαταγραφή ενεργειών
5 . 3 ™ À ™ ∆ ∏ ª ∞∆∞ ∞ ¡ ∞ ° ¡ ø ƒ π ™ ∏ ™ ∂ π ™ µ √ § ø ¡
5.3.2 ∆¯ÓÔÏÔÁ›Â˜ Û˘ÛÙËÌ¿ÙˆÓ ·Ó›¯Ó¢Û˘ ÂÈÛ‚ÔÏÒÓ
Οι τεχνολογίες που έχουν χρησιµοποιηθεί µέχρι σήµερα για την υλοποίηση ΣΑΕ κατατάσσονται συνήθως σε δύο µεγάλες κατηγορίες. Η πρώτη κατηγορία αφορά σ’ αυτές που προσπαθούν να ανιχνεύσουν ανώµαλη συµπεριφορά (anomaly detection) και η δεύτερη σ’ αυτές που προσπαθούν να ανιχνεύσουν κατάχρηση πόρων (misuse detection) στις κινήσεις κάποιου χρήστη. Σπάνια είναι όµως τα συστήµατα που χρησιµοποιούν µία και µόνο τεχνική. ∆∂áπ∫∂™ ∞¡πá∂À™∏™ ∞¡øª∞§∏™ ™Àª¶∂ƒπº√ƒ∞™
Στην κατηγορία των τεχνικών ανίχνευσης ανώµαλης συµπεριφοράς κατατάσσονται οι τεχνικές στατιστικής ανάλυσης, τα νευρωνικά δίκτυα, οι τεχνικές αναγνώρισης διαθέσεων χρηστών, οι αυτόνοµοι πράκτορες, η επιλογή χαρακτηριστικών και οι τεχνικές γράφων. Τεχνικές στατιστικής ανάλυσης Κυρίαρχο ρόλο στις τεχνικές αυτές παίζει η έννοια του προφίλ του χρήστη. Πρόκειται, βέβαια, για στατιστικά προφίλ, που σχηµατίζονται από τον τρόπο που το υποκείµενο δρα σε σχέση µ’ ένα αντικείµενο του συστήµατος. Το προφίλ κάθε χρήστη απαρτίζεται από ένα σύνολο µετρικών (παραµέτρων), οι οποίες ενηµερώνονται ανάλογα µε τη συµπεριφορά του. Οι πληροφορίες αυτές βασίζονται, βέβαια, στις πληροφορίες που περιέχει για τον κάθε χρήστη το ίχνος ελέγχου και είναι σχεδιασµένες έτσι ώστε να κάνουν βέλτιστη χρήση της µνήµης του συστήµατος που τους διατίθεται. Καθώς συλλέγονται νέες πληροφορίες, γίνεται σύγκριση µε τις ήδη αποθηκευµένες τιµές και υπολογίζεται ένα ποσοστό παρέκκλισης της πραγµατικής συµπεριφοράς του χρήστη από την προβλεπόµενη. Εάν το ποσοστό αυτό ξεπεράσει κάποιο προκαθορισµένο όριο, τεκµαίρεται ανώµαλη συµπεριφορά του χρήστη και, συνακόλουθα, ενδεχόµενη εισβολή. Μερικές από τις παραµέτρους που έχουν κατά καιρούς χρησιµοποιηθεί σε ΣΑΕ µε στατιστική ανάλυση είναι η συχνότητα χρήσης πόρων του συστήµατος, στατιστικά στοιχεία χρήσης πόρων του συστήµατος και στοιχεία σχετικά µε τη συνολική δραστηριοποίηση του χρήστη στο σύστηµα. Νευρωνικά δίκτυα Τα νευρωνικά δίκτυα αποτελούνται από νευρώνες, που είναι γραµµικά αυτόµατα οργανωµένα σε επίπεδα. Κάθε νευρώνας δέχεται ως είσοδο ένα ερέθισµα, εκφρασµένο ως ένα διάνυσµα τιµών Εi. Ο νευρώνας υπολογίζει το σταθµισµένο άθροισµα Ε των δεδοµένων εισόδου του ως το άθροισµα των τιµών εισόδου κάθε µιας πολλαπλασιασµένης
189
190
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
επί ένα συντελεστή βαρύτητας. Τέλος, η έξοδος του νευρώνα υπολογίζεται ως το αποτέλεσµα της εφαρµογής µιας άλλης συνάρτησης, G επί του Ε. Το αποτέλεσµα αυτό µεταδίδεται ως είσοδος σε άλλους νευρώνες ή σε εξωτερικούς αποδέκτες. Μια από τις χαρακτηριστικές ιδιότητες των νευρωνικών δικτύων είναι η ικανότητά τους να µαθαίνουν. Μετά την υλοποίηση ενός νευρωνικού δικτύου, ακολουθεί µια φάση εκπαίδευσής του σε συγκεκριµένους τύπους συµπεριφοράς. Αυτό γίνεται δίνοντας µια συγκεκριµένη είσοδο στο νευρωνικό δίκτυο και κάνοντάς του γνωστή την αναµενόµενη, γι’ αυτήν την είσοδο, έξοδο. Φυσικά, είναι απαραίτητος και ένας αλγόριθµος που θα διορθώνει τα στοιχεία του νευρωνικού δικτύου, όταν αυτά δεν παράγουν τα αναµενόµενα αποτελέσµατα. Οι πρώτες εφαρµογές των νευρωνικών δικτύων είχαν το κοινό χαρακτηριστικό της πρόβλεψης κάποιας µελλοντικής δράσης βασισµένης σε δεδοµένα του παρελθόντος. Έτσι, νευρωνικά δίκτυα χρησιµοποιήθηκαν επιτυχώς σε εφαρµογές όπως η πρόβλεψη αποθεµάτων καταστηµάτων, η πρόβλεψη της διακύµανσης χρηµατιστηριακών δεικτών, η πρόβλεψη της κατανάλωσης νερού και ηλεκτρικής ενέργειας. Περισσότερες πληροφορίες για τα νευρωνικά δίκτυα µπορείτε να βρείτε στο βιβλίο Νευρωνικά ∆ίκτυα και Εφαρµογές, της Θεµατικής Ενότητας Τεχνητή Νοηµοσύνη – Εφαρµογές του Ε.Α.Π. Στο πεδίο που µας ενδιαφέρει εδώ, το νευρωνικό δίκτυο δέχεται ως είσοδο πληροφορίες από το ίχνος ελέγχου του συστήµατος που παρακολουθείται, τις φιλτράρει και διατηρεί προφίλ για κάθε χρήστη. Οι είσοδοι στους νευρώνες είναι η τρέχουσα εντολή και οι w προηγούµενες εντολές, όπου w η παράµετρος που καθορίζει το παράθυρο στο παρελθόν που εξετάζουµε, και η έξοδος είναι η πρόβλεψη για την επόµενη εντολή του χρήστη. Τα νευρωνικά δίκτυα έχουν χρησιµοποιηθεί και σε συνεργασία µε άλλες τεχνικές, όπως τα έµπειρα συστήµατα. Μπορούν να αποτελέσουν ιδανικά φίλτρα πληροφοριών, δίνοντας στο έµπειρο σύστηµα µόνο εκείνες που είναι χρήσιµες για την εξαγωγή συµπερασµάτων σχετικών µε ενδεχόµενη εισβολή. Έχει αποδειχθεί ότι µπορούν να µειώσουν κατά 80% τον όγκο των εισερχόµενων προς εξέταση πληροφοριών. Βέβαια, το φιλτράρισµα είναι τόσο καλύτερο όσο καλύτερη ήταν η εκπαίδευση του νευρωνικού δικτύου. Αναγνώριση διαθέσεων χρήστη Οι τεχνικές αυτές στηρίζονται στη θεωρία ότι ο χρήστης χρησιµοποιεί το σύστηµα προκειµένου να υλοποιήσει συγκεκριµένους στόχους που έχει θέσει, τους οποίους πραγµατώνει µε την ολοκλήρωση επιµέρους ενεργειών. Βασικός στόχος των τεχνικών αυτών είναι να βρεθούν εκείνες οι πράξεις οι οποίες είναι απειλητικές για την ασφά-
5 . 3 ™ À ™ ∆ ∏ ª ∞∆∞ ∞ ¡ ∞ ° ¡ ø ƒ π ™ ∏ ™ ∂ π ™ µ √ § ø ¡
λεια του συστήµατος, αλλά που αποτελούνται από επιµέρους ενέργειες οι οποίες δεν µπορούν να χαρακτηριστούν ως απειλητικές. Αυτό που απαιτείται είναι η µελέτη της αιτιολογίας των επιµέρους αυτών ενεργειών, σε σχέση βέβαια και µε τον καθολικό στόχο που έχει θέσει ο χρήστης. Μια συµπεριφορά χαρακτηρίζεται ως ύποπτη αν η εκτέλεση των πράξεων που ολοκληρώνουν τις ενέργειες παρεκκλίνει από την οµαλή, προκαθορισµένη ακολουθία εκτέλεσης. Αυτόνοµοι πράκτορες Πράκτορας (agent) είναι µια οντότητα λογισµικού που χαρακτηρίζεται από αυτονοµία, κοινωνικότητα, δυνατότητα αντίδρασης και δυνατότητα λήψης πρωτοβουλιών. Γενικά, µπορούµε να πούµε πως οι πράκτορες είναι τµήµατα λογισµικού στα οποία ανατίθενται συγκεκριµένα (αλλά όχι απαραίτητα καλά ορισµένα) καθήκοντα, τα οποία αυτοί εκτελούν µε κάποιο βαθµό αυτονοµίας, χωρίς δηλαδή την ανάγκη συνεχούς ανθρώπινης επίβλεψης ή παρέµβασης. Περισσότερες πληροφορίες για τους πράκτορες µπορείτε να βρείτε στο βιβλίο Ευφυή Πληροφοριακά Συστήµατα, Ευρεστικές Μέθοδοι, της Θεµατικής Ενότητας Τεχνητή Νοηµοσύνη – Εφαρµογές του Ε.Α.Π. Η τεχνική αυτή έχει εφαρµοστθεί και στα ΣΑΕ, και µάλιστα αποτελεί σήµερα την κυρίαρχη τάση στη σχεδίαση πρωτότυπων συστηµάτων ανίχνευσης εισβολών για δικτυακά περιβάλλοντα. Σ’ ένα τέτοιο περιβάλλον, κάθε πράκτορας αναλαµβάνει ένα καθήκον και συνεργάζεται µε άλλους πράκτορες ή µε µια προϊσταµένη αρχή προκειµένου να φέρει σε πέρας το καθήκον του. Κάθε πράκτορας έχει, επίσης, το δικό του µηχανισµό συµπερασµατολογίας για την αξιολόγηση των γεγονότων που συµβαίνουν στο σύστηµα. Επίσης, διαχειρίζεται τις δικές του βάσεις γνώσης και γνωρίζει ποια ίχνη ελέγχου τον αφορούν. Τέλος, κάθε πράκτορας µπορεί να επικοινωνήσει µε τα άλλα υποσυστήµατα του συστήµατος µέσω κατάλληλων διεπαφών προγραµµάτων εφαρµογής (Application Program Interfaces – APIs). Επιλογή χαρακτηριστικών Η τεχνική αυτή επιχειρεί να επιλύσει το πρόβληµα της διαφοροποίησης µιας απειλητικής από µια φυσιολογική συµπεριφορά, χρησιµοποιώντας ευρεστικές µετρικές, οι οποίες επιλέγονται από το σύνολο των χαρακτηριστικών που διατηρεί το σύστηµα για τη συµπεριφορά των χρηστών. Το σύνολο των µετρικών αυτών αντιστοιχεί σε εισβολές συγκεκριµένου τύπου. Φανταστείτε ότι έχουµε να επεξεργαστούµε ένα σύνολο n µετρικών. Το συνολικό πλήθος των υποσυνόλων του συνόλου αυτού που πρέπει να εξετάσουµε είναι 2n. Καταλαβαίνετε, λοιπόν, αµέσως ότι η εκθετική αυτή φύση της τεχνικής καθιστά
191
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
192
δύσκολη έως αδύνατη την εφαρµογή της, εκτός αν χρησιµοποιηθούν ειδικές µέθοδοι για γρήγορη επεξεργασία των υποσυνόλων αυτών. Αν αυτές δεν υπάρχουν, παρατηρείται µικρή δυνατότητα πρόβλεψης εισβολών και µεγάλος χρόνος επεξεργασίας των χαρακτηριστικών που συνθέτουν την παρεισφρητική συµπεριφορά. Τεχνικές γράφων Πολλές από τις τεχνικές ανίχνευσης εισβολών έχουν την ικανότητα αναγνώρισης εισβολέων σ’ ένα σύστηµα ή σ’ ένα δίκτυο µικρής ή µεσαίας κλίµακας. Η τεχνική των γράφων (Graph Intrusion Detection System – GrIDS) έχει το βασικό χαρακτηριστικό ότι µπορεί να ανιχνεύσει εισβολές σε δίκτυα µεγάλης κλίµακας. Στόχος αυτής της τεχνικής είναι η ανάλυση της δραστηριότητας των κόµβων ενός δικτύου, η παράσταση της συµπεριφοράς τους µε µορφή γράφων και η συνακόλουθη εξέταση των γράφων αυτών. Από την ανάλυση αυτή προκύπτουν συµπεράσµατα σχετικά µε ενδεχόµενη παράτυπη δραστηριότητα στο δίκτυο. Για παράδειγµα, αν σ’ ένα δίκτυο το σύστηµα Α εξαπολύσει έναν έλικα και αυτός, µε τη σειρά του, µεταδοθεί στα συστήµατα Β και Γ, τότε θα δηµιουργηθεί ένας γράφος µε κόµβους τα Α, Β και Γ και ακµές από το Α προς τα Β και Γ. Αν παρέλθει αρκετό χρονικό διάστηµα χωρίς την εµφάνιση ανάλογης περαιτέρω δραστηριότητας, ο γράφος διαγράφεται και η συµπεριφορά δεν θεωρείται επικίνδυνη. Αν, όµως, παρατηρηθεί µόλυνση και σ’ άλλα συστήµατα του δικτύου, τότε ο γράφος θα µεγαλώσει, παίρνοντας τελικά τη µορφή δέντρου, µορφή που χαρακτηρίζει τη δράση ελίκων. Αν το µέγεθος του δέντρου ξεπεράσει ένα προκαθορισµένο όριο, τεκµαίρεται η ύπαρξη έλικα στο δίκτυο. Το λογισµικό του συστήµατος αυτού πρέπει να βρίσκεται εγκατεστηµένο σε κάθε σύστηµα του δικτύου. Περιλαµβάνει ένα τµήµα που συλλέγει πληροφορίες για τη συµπεριφορά κάθε κόµβου, ενώ ένα άλλο στέλνει αναφορές στη διεργασία παραγωγής γράφων. Η διεργασία αυτή, αφού δηµιουργήσει τους γράφους, στέλνει πληροφορίες στην αντίστοιχη διεργασία του γονικού κόµβου, ο οποίος βρίσκεται σε ψηλότερο επίπεδο, ακολουθώντας τη φυσική τοπολογία του δικτύου. Υπάρχει, επιπλέον, και ένας κεντρικός σταθµός, ο οποίος συλλέγει πληροφορίες για τους υπογράφους που δηµιουργούνται, έχοντας πάντα υπόψη τη φυσική διάρθρωση του δικτύου. Κάθε γράφος περιέχει καθολικές µεταβλητές – χαρακτηριστικά σχετικά µε το είδος των δικτυακών επιθέσεων που εξετάζει. Υπάρχει µια σειρά κανόνων, οι οποίοι καθορίζουν πότε πρέπει να συνενωθούν δύο γράφοι, υπολογίζουν τις τιµές των µεταβλητών κάθε γράφου κ.λπ. Είναι δυνατή η δηµιουργία νέων γράφων, σε ψηλότερα ιεραρχικά επίπεδα, όπως και η παράσταση ενός ολόκληρου δικτύου µε έναν και µοναδι-
5 . 3 ™ À ™ ∆ ∏ ª ∞∆∞ ∞ ¡ ∞ ° ¡ ø ƒ π ™ ∏ ™ ∂ π ™ µ √ § ø ¡
κό κόµβο, αν αποφασιστθεί ότι στο δίκτυο αυτό δεν παρατηρείται ύποπτη συµπεριφορά. Έτσι, µειώνονται τα προς εξέταση δεδοµένα, ο δε αλγόριθµος λειτουργεί σ’ ένα αφαιρετικό επίπεδο. ∆∂áπ∫∂™ ∞¡πá∂À™∏™ ∫∞∆∞Ã∏™∏™ ¶√ƒø¡
Αντίστοιχα, στην κατηγορία των τεχνικών ανίχνευσης κατάχρησης πόρων κατατάσσονται τα έµπειρα συστήµατα, η αναγνώριση προτύπων, η τεχνική των µοντέλων, η τεχνική ανάλυσης αλλαγής καταστάσεων και η ανάλυση χαρακτηριστικών πληκτρολόγησης. Έµπειρα συστήµατα Τα έµπειρα συστήµατα διατηρούν µια βάση γνώσης µε τη µορφή κανόνων και παρέχουν λύσεις ή οδηγίες στο διαχειριστή του συστήµατος, όταν αντιληφθούν πιθανή εισβολή στο σύστηµα. Περισσότερες πληροφορίες γύρω από τα έµπειρα συστήµατα µπορείτε να βρείτε στο βιβλίο Τεχνητή Νοηµοσύνη, Έµπειρα Συστήµατα, της Θεµατικής Ενότητας Τεχνητή Νοηµοσύνη – Εφγαρµογές του Ε.Α.Π. Οι κανόνες περιγράφουν ποια είναι ύποπτη συµπεριφορά, γνώση η οποία προέρχεται από σενάρια παλαιότερων εισβολών ή γνωστών ευπαθειών σε προγράµµατα. Για παράδειγµα, ένας κανόνας µπορεί να ορίζει ότι επανειληµµένες (π.χ. πάνω από τρεις) ανεπιτυχείς προσπάθειες ενός χρήστη να συνδεθεί µε το σύστηµα µέσα σε περιορισµένο χρόνο (π.χ. πέντε λεπτά) αποτελούν ένδειξη πιθανής εισβολής. Ο συνδυασµός της τεχνικής αυτής µε στατιστικές τεχνικές έχει αποδειχθεί πολύ αποδοτικός. Όπως είδαµε, οι στατιστικές τεχνικές εντοπίζουν ανώµαλη συµπεριφορά χρησιµοποιώντας µετρικές και προφίλ συµπεριφοράς. Ένας χρήστης όµως που γνωρίζει ότι η συµπεριφορά του παρακολουθείται, µπορεί να παρεκκλίνει σταδιακά από την εν γένει συµπεριφορά του, έτσι ώστε, µετά το πέρασµα κάποιου χρονικού διαστήµατος, η νέα, παράτυπη, συµπεριφορά του να θεωρείται από το σύστηµα φυσιολογική. Ένα έµπειρο σύστηµα όµως θα αντιλαµβανόταν ότι η νέα αυτή συµπεριφορά είναι απειλητική, συγκρίνοντάς τη µε ήδη κωδικοποιηµένες παρόµοιες συµπεριφορές. Αναγνώριση προτύπων Η τεχνική αυτή, που επιχειρεί την ανίχνευση εισβολών µέσω της σύγκρισης των δραστηριοτήτων ενός χρήστη µε γνωστά σενάρια παρεισφρήσεων, στηρίζεται στην έννοια του γεγονότος (event) και στις µεταβάσεις (transitions) του συστήµατος από µια κατάσταση σε µια άλλη, επειδή συνέβη κάποιο γεγονός ή κάποια ακολουθία γεγονότων.
193
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
194
Η δραστηριότητα του χρήστη αναπαρίσταται µε καταστάσεις και γεγονότα, που οδηγούν στην αλλαγή της κατάστασης του συστήµατος. Για να γίνει δυνατή η αλλαγή µιας κατάστασης, πρέπει να υπάρξει µια είσοδος, που θα προκαλέσει ένα γεγονός που µε τη σειρά του, θα οδηγήσει σε αλλαγή της κατάστασης. Βασικής σηµασίας για την τεχνική αυτή αποτελεί η παρατήρηση πως η ακολουθία δύο γεγονότων α και β δε σηµαίνει απαραίτητα ότι το γεγονός β συνέβη αµέσως µετά το α, αλλά απλώς ότι συνέβη σε κάποια χρονική στιγµή µεταγενέστερη του α. Η παρατήρηση αυτή επιτρέπει την αναπαράσταση συµπεριφοράς χρηστών σε συστήµατα που χρησιµοποιούν παραθυρικά περιβάλλοντα ή επιτρέπουν σύνδεση στο σύστηµα από διαφορετικές συνόδους ταυτόχρονα. Ένας τρόπος αναπαράστασης των γεγονότων και των καταστάσεων είναι µέσω Petri nets. Κάθε σενάριο αντιστοιχίζεται µε ένα έγχρωµο αυτόµατο Petri (Colored Petri Automaton – CPA). Κάθε CPA περιγράφει την εναλλαγή καταστάσεων µέσω των γεγονότων που µεσολαβούν από τη µια κατάσταση έως τη νέα κατάσταση. Ουσιαστικά, αυτό που αποθηκεύεται σε κάθε CPA είναι η γνώση για συγκεκριµένα πρότυπα συµπεριφοράς. Η σύγκριση της τρέχουσας συµπεριφοράς του ενδεχόµενου εισβολέα µε κάποιο γνωστό πρότυπο, προκειµένου να διαπιστωθεί αν αυτές ταιριάζουν, γίνεται σταδιακά, αρχίζοντας από το αρχικό τµήµα των CPA και συνεχίζοντας για κάθε τµήµα ως το τελευταίο. Αν και το τελευταίο κοµµάτι του δικτύου ενεργοποιηθεί, αυτό σηµαίνει ότι όλα τα προηγούµενα γεγονότα του δικτύου έχουν συµβεί, έχουν αλλάξει οι καταστάσεις και το σύστηµα έχει οδηγηθεί σε παράτυπη κατάσταση. Τότε ο διαχειριστής ασφάλειας ειδοποιείται ότι πρόκειται για εισβολή. Περισσότερες πληροφορίες γύρω από την τεχνική της αναγνώρισης προτύπων µπορείτε να βρείτε στο βιβλίο Ανάλυση Εικόνας και Αναγνώριση Προτύπων της Θεµατικής Ενότητας Εικόνα – Όραση – Ροµπότ του Ε.Α.Π,. ενώ περισσότερες πληροφορίες γύρω από τα Petri nets υπάρχουν στο βιβλίο Τυπικές Προδιαγραφές της Θεµατικής Ενότητας Ειδικά Θέµατα Τεχνολογίας Λογισµικού του Ε.Α.Π. Τεχνική των µοντέλων Η τεχνική αυτή στηρίζεται στην ιδέα ότι οι εισβολείς συχνά χρησιµοποιούν γνωστές µεθόδους για να παραβιάσουν την ασφάλεια των συστηµάτων. Παραδείγµατα τέτοιων µεθόδων αποτελούν η κλοπή του αρχείου συνθηµατικών, η πρόσβαση σε συγκεκριµένα αρχεία, η εκµετάλλευση γνωστών ευπαθειών του συστήµατος. Οι µέθοδοι αυτές µοντελοποιούνται και τα µοντέλα αποθηκεύονται. Η συµπεριφορά του χρήστη εξετάζεται προκειµένου να εντοπιστεί συνάφεια µε τα υπάρχοντα, ήδη γνωστά, µοντέλα παρεισφρήσεων.
5 . 3 ™ À ™ ∆ ∏ ª ∞∆∞ ∞ ¡ ∞ ° ¡ ø ƒ π ™ ∏ ™ ∂ π ™ µ √ § ø ¡
Αν εντοπιστεί τέτοια συνάφεια, µε κάποιο συγκεκριµένο σενάριο, η επόµενη κίνηση του χρήστη µπορεί να προβλεφθεί. Έτσι, γίνεται δυνατή η µείωση των προς εξέταση δεδοµένων του ίχνους ελέγχου. Η τεχνική διατηρεί µια βάση γνώσης, που περιέχει περιγραφές διαφόρων σεναρίων παρεισφρήσεων και µοντέλων παράτυπης συµπεριφοράς. Για παράδειγµα, ένα µοντέλο µπορεί να περιγράφει την προγραµµατισµένη επίθεση για την κλοπή του αρχείου συνθηµατικών του συστήµατος. Ανάλυση αλλαγής καταστάσεων Στην τεχνική αυτή η εισβολή αναπαρίσταται ως ένα σύνολο αλλαγής καταστάσεων (state transitions). Οι καταστάσεις στο πρότυπο της εισβολής συνδέονται µε καταστάσεις του συστήµατος και σχετίζονται µε λογικές επιβεβαιώσεις προκειµένου να πραγµατοποιηθεί µετάβαση από µια κατάσταση σε άλλη. Οι καταστάσεις συνδέονται µεταξύ τους µε γεγονότα ή συνθήκες, οι οποίες και καθοδηγούν τη µετάβαση από µια κατάσταση σε µια άλλη. Στην ουσία, οι συνθήκες αυτές αποτελούν τις υπογραφές γνωστών εισβολών. Ανάλυση χαρακτηριστικών πληκτρολόγησης Ο στόχος της τεχνικής αυτής είναι η αναγνώριση του εισβολέα από τον τρόπο µε τον οποίο χρησιµοποιεί το πληκτρολόγιο. Συγκρίνοντας τα χαρακτηριστικά πληκτρολόγησης ενός χρήστη µε’ αυτά γνωστών εισβολέων, µπορούµε να προσδιορίσουµε την εκάστοτε εισβολή.
195
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
196
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 5.4 Αντιστοιχίστε τις τεχνικές της αριστερής στήλης µε στις κατηγορίες τεχνολογιών της δεξιάς στήλης: 1. Στατιστική ανάλυση
1. Ανίχνευση ανώµαλης συµπεριφοράς
2. Έµπειρα συστήµατα
2. Ανίχνευση κατάχρησης πόρων
3. Αναγνώριση προτύπων 4. Νευρωνικά δίκτυα 5. Αναγνώριση διαθέσεων χρηστών 6. Μοντέλα 7. Ανάλυση αλλαγής καταστάσεων 8. Ανάλυση χαρακτηριστικών πληκτρολόγησης 9. Αυτόνοµοι πράκτορες 10. Επιλογή χαρακτηριστικών 11. Γράφοι
5.3.3 T· ¯·Ú·ÎÙËÚÈÛÙÈο ÂÓfi˜ ηÏÔ‡ Û˘ÛÙ‹Ì·ÙÔ˜ ·Ó›¯Ó¢Û˘ ÂÈÛ‚ÔÏÒÓ
Σήµερα υπάρχουν πολλά εµπορικά διαθέσιµα ΣΑΕ. Προκειµένου να επιλέξουµε κάποιο για το σύστηµά µας, καλό είναι να πάρουµε υπόψη µας, εκτός φυσικά από το κόστος του, και τα παρακάτω χαρακτηριστικά: Ένα καλό ΣΑΕ λειτουργεί διαρκώς, χωρίς να χρειάζεται ανθρώπινη εποπτεία. Τα αποδοτικά συστήµατα επεξεργάζονται πληροφορίες του συστήµατος που επιτηρούν και προσφεύγουν στο διαχειριστή ασφάλειας µόνο όταν ανιχνευτεί µε βεβαιότητα κάποια εισβολή ή υπάρξει υποψία µιας νέας εισβολής, για την οποία δεν υπάρχουν γνωστοί τρόποι αντιµετώπισης. Ένα καλό ΣΑΕ πρέπει επίσης να είναι ανεκτικό σε παραβιάσεις του συστήµατος το οποίο επιτηρεί. Μετά την προσβολή από κάποιον εισβολέα, είναι απαραίτητη η επαναφορά του συστήµατος στην προηγούµενη κατάστασή του. Η επανάκτηση των συστηµάτων αρχείων που πιθανόν καταστράφηκαν και η αποµάκρυνση ιοµορφών
5 . 3 ™ À ™ ∆ ∏ ª ∞∆∞ ∞ ¡ ∞ ° ¡ ø ƒ π ™ ∏ ™ ∂ π ™ µ √ § ø ¡
που πιθανόν προσέβαλαν το σύστηµα αποτελούν βασικές λειτουργίες ενός αποτελεσµατικού ΣΑΕ. Από την άλλη µεριά, το ίδιο το ΣΑΕ πρέπει να µπορεί να επανέλθει σε κανονική λειτουργία µετά από µια διακοπή του επιτηρούµενου συστήµατος. Ένα καλό ΣΑΕ είναι ανεκτικό σε παραβιάσεις των ίδιων του των στοιχείων. Κοινό χαρακτηριστικό της τακτικής που ακολουθούν πολλοί εισβολείς είναι η διαγραφή κάθε στοιχείου που µπορεί να προδώσει την παρουσία τους στο σύστηµα. Τα ίχνη ελέγχου, λοιπόν, που αποτελούν ζωτική είσοδο στο ΣΑΕ, πρέπει να φυλάσσονται σε ασφαλή µέρη. Επιπλέον, το ΣΑΕ πρέπει να αντιλαµβάνεται απόπειρες τροποποίησης των στοιχείων αυτών. Πρέπει, επίσης, να ανθίσταται σε απόπειρες παραποίησης των βάσεων γνώσης του, των κανόνων που χρησιµοποιεί, των στατιστικών προφίλ, των µετρικών και των ορίων ευαισθησίας του. Ένα καλό ΣΑΕ είναι οικονοµικό. Στόχος του είναι η αποδοτικότερη και αδιάλειπτη λειτουργία του συστήµατος που επιτηρεί και όχι η παρεµπόδιση και µείωση της αποτελεσµατικότητάς του. Πρέπει, συνεπώς, το ΣΑΕ να απασχολεί όσο το δυνατόν λιγότερους από τους πόρους του συστήµατος. Ένα καλό ΣΑΕ είναι γρήγορο. Η ανακάλυψη µιας εισβολής µετά από µεγάλο χρονικό διάστηµα αφ’ ότου αυτή ολοκληρώθηκε, αποτελεί µεν επιτυχία του ΣΑΕ, αλλά η ζηµιά µπορεί ήδη να έχει γίνει. Ένα καλό ΣΑΕ είναι προσαρµόσιµο. Παρ’ όλο που τα περισσότερα από τα σηµερινά δικτυωµένα υπολογιστικά συστήµατα βασίζονται σε πλατφόρµες Unix, καθένα τους έχει τις δικές του διαφορετικές πολιτικές ασφάλειας, που πηγάζουν από διαφορετικές απαιτήσεις ασφάλειας. Συνεπώς, ένα αποτελεσµατικό ΣΑΕ πρέπει να µπορεί να προσαρµόζεται εύκολα σε διαφορετικά υπολογιστικά περιβάλλοντα. Ένα καλό ΣΑΕ είναι αναβαθµίσιµο. Πρέπει όχι µόνο να υπάρχει δυνατότητα εισαγωγής νέων τεχνικών ανίχνευσης και αντιµετώπισης απειλών, αλλά και συνύπαρξης αυτών των τεχνικών και αποδοτικής συλλειτουργίας τους µε τις υπάρχουσες. Ένα καλό ΣΑΕ είναι συντηρήσιµο. Η συντήρηση της βάσης γνώσης των ΣΑΕ που χρησιµοποιούν έµπειρα συστήµατα δεν είναι και τόσο εύκολη υπόθεση, επειδή απαιτεί γνώσεις διατήρησης και δηµιουργίας βάσεων γνώσης, έµπειρων συστηµάτων και κανόνων. Το υποσύστηµα λήψης απόφασης του ΣΑΕ πρέπει να µπορεί να ενηµερώνεται εύκολα, χωρίς να απαιτούνται ειδικές γνώσεις, τις οποίες ένας διαχειριστής συστήµατος συνήθως δεν έχει. Η ικανότητα µάθησης και καλής αξιοποίησης και διαχείρισης της ήδη αποκτηθείσας γνώσης αποτελεί αναγκαίο χαρακτηριστικό ενός καλού ΣΑΕ, αν σκεφτούµε το µέγεθος που µπορεί να αποκτήσει µια συνεχώς ενηµερωνόµενη βάση γνώσης.
197
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
198
Τέλος, ένα καλό ΣΑΕ ελαχιστοποιεί τις λαθεµένες αρνητικές αποφάσεις (false negatives). Αναλυτικότερα, ένα καλό ΣΑΕ έχει την ικανότητα να µη χαρακτηρίζει µια ενέργεια ως φυσιολογική, ενώ στην πραγµατικότητα αυτή είναι απειλητική. Η συµπεριφορά αυτή είναι προτιµότερη από αυτήν που χαρακτηρίζει µια πράξη ως απειλητική, ενώ στην πραγµατικότητα είναι φυσιολογική (false positive).
ÕÛÎËÛË ·˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 5.5 Χαρακτηρίστε τις παρακάτω προτάσεις ως σωστές ή λάθος: ΣΩΣΤΟ
ΛΑΘΟΣ
1. Είναι δυνατόν να πετύχουµε διαµόρφωση αναχώµατος που να εξασφαλίζει απόλυτα το δίκτυό µας.
❏
❏
2. Το µοντέλο ανίχνευσης εισβολών της D. Denning δεν µπορεί να καλύψει σύγχρονους τύπους ΣΑΕ.
❏
❏
3. Το γενικευµένο αρχιτεκτονικό µοντέλο ΣΑΕ περιλαµβάνει 8 υποσυστήµατα.
❏
❏
5. Τα ΣΑΕ χρειάζονται ανθρώπινη εποπτεία για να λειτουργήσουν.
❏
❏
6. Ένα ΣΑΕ πρέπει να επιτελεί τη λειτουργία του αδιαφορώντας για την επιβάρυνση στην απόδοση του συστήµατος που επιτηρεί.
❏
❏
7. Ένα ΣΑΕ πρέπει να µπορεί να αναδιαµορφώνεται, ώστε να καλύπτει νέα στοιχεία στο σύστηµα που επιτηρεί.
❏
❏
8. Ο διαχειριστής του ΣΑΕ οφείλει να έχει εξειδικευµένες γνώσεις.
❏
❏
9. Η ελαχιστοποίηση των false negatives είναι σηµαντικότερη από την ελαχιστοποίηση των false positives.
❏
❏
4. Η ανίχνευση εισβολών γίνεται µέσω ανίχνευσης ανώµαλης συµπεριφοράς.
™YNOæH
¢Ú·ÛÙËÚÈfiÙËÙ· 5.7 Kάντε µια έρευνα στο ∆ιαδίκτυο για συστήµατα ανίχνευσης εισβολών. Όσα εντοπίσετε, προσπαθείστε να τα εντάξετε στο αρχιτεκτονικό µοντέλο της υποενότητας 5.3.1. Ένα καλό σηµείο εκκίνησης για την έρευνά σας είναι η διεύθυνση http://www.cerias.purdue.edu/coast/intrusion–detection/detection.html.
™‡ÓÔ„Ë Στο κεφάλαιο αυτό ασχοληθήκαµε µε τη δεύτερη επιλογή παροχής υπηρεσιών ασφάλειας στο επίπεδο εφαρµογής, δηλαδή µε τη χρήση γενικευµένων συστηµάτων ασφάλειας. Συζητήσαµε τρεις κατηγορίες τέτοιων γενικευµένων συστηµάτων: τα συστήµατα αυθεντικοποίησης σε κατανεµηµένα υπολογιστικά περιβάλλοντα, τα δικτυακά ηλεκτρονικά αναχώµατα και τα συστήµατα ανίχνευσης εισβολών. Τα συστήµατα αυθεντικοποίησης παρέχουν υπηρεσίες ασφάλειας επιπέδου εφαρµογής σε κατανεµηµένα περιβάλλοντα. Αν και υπάρχουν αρκετά τέτοια συστήµατα διαθέσιµα σήµερα, περιορίσαµε τη συζήτησή µας στα συστήµατα Kerberos, NetSP, SPX, TESS και SESAME, για καθένα από τα οποία παρουσιάσαµε συνοπτικά τη λειτουργία του. Τα δικτυακά ηλεκτρονικά αναχώµατα τοποθετούνται µεταξύ ενός εσωτερικού δικτύου και του διαδικτύου, αποτελούν έναν ελεγχόµενο κρίκο επικοινωνίας και ορθώνουν µια εξωτερική περίµετρο ασφάλειας ή τοίχο γύρω από το εσωτερικό δίκτυο. Εξετάσαµε τις γενικές τεχνικές ελέγχου που χρησιµοποιούνται στα αναχώµατα, τους τύπους των αναχωµάτων και τις διαµορφώσεις τους. Τα συστήµατα ανίχνευσης εισβολών αξιοποιούν στοιχεία που συλλέγουν από το ίχνος ελέγχου του συστήµατος που επιτηρούν και πιθανόν και από άλλες πηγές, προκειµένου να διαπιστώσουν αν συντρέχει περίπτωση εισβολής στο σύστηµα. Στη συζήτησή µας αναφερθήκαµε σε δύο γενικά µοντέλα συστηµάτων ανίχνευσης εισβολών, στις δύο κατηγορίες τεχνολογιών ανίχνευσης εισβολών και στις αντίστοιχες τεχνικές και, τέλος, στα χαρακτηριστικά ενός καλού συστήµατος ανίχνευσης εισβολών.
199
K E º A § A I O 5 : ° ∂ ¡ π ∫ ∂ À ª ∂ ¡ ∞ ™ À ™ ∆ ∏ ª ∞∆ ∞ A ™ º ∞ § ∂ π ∞ ™ E º ∞ ƒ ª √ ° ø ¡
200
BÈ‚ÏÈÔÁÚ·Ê›· 1. Ford W., Computer Communications Security, Prentice Hall, 1994. 2. Gollmann D., Computer Security, John Wiley & Sons, 1999. 3. Kaufman C., Perlman R., Speciner M., Network Security, Prentice Hall, 1995. 4. Oppliger R., Internet and Intranet Security, Artech House, 1998. 5. Purser M., Secure Data Networking, Artech House, 1993. 6. Stallings W., Cryptography and Network Security, Prentice Hall, 1999. 7. Stallings W., Network and Internetwork Security, IEEE Press, 1995. 8. Summers R. C., Secure Computing: Threats and Safeguards, Mc Graw–Hill, 1997. 9. C. Kaufman, R. Perlman, M. Speciner, Network Security, Prentice Hall, 1995. 10. W. Ford, Computer Communications Security, Prentice Hall, 1994. 11. W. Stallings, Network and Internetwork Security, IEEE Press, 1995. 12. W. Stallings, Cryptography and Network Security, Prentice Hall, 1999. 13. D. Gollmann, Computer Security, John Wiley & Sons, 1999. 14. R. Oppliger, Internet and Intranet Security, Artech House, 1998. 15. R. C. Summers, Secure Computing: Threats and Safeguards, Mc Graw–Hill, 1997. 16. M. Purser, Secure Data Networking, Artech House, 1993.
E›ÏÔÁÔ˜ Αφού φτάσατε στο σηµείο αυτό, έχετε τελειώσει τη µελέτη του βιβλίου, εκτός κι αν, όπως κι εγώ, έχετε τη συνήθεια να διαβάζετε τον πρόλογο αλλά και τον επίλογο ενός βιβλίου πριν διαβάσετε το βιβλίο. Αν, λοιπόν, τελειώσατε τη µελέτη σας, έχετε αποκτήσει τις βασικές γνώσεις γύρω από την ασφάλεια δικτύων, κι αυτό που αποµένει είναι να µάθετε τι δε µάθατε. Αν πάλι δεν ξεκινήσατε ακόµα τη µελέτη, καλό είναι να ξέρετε τι δε θα µάθετε. Το αντικείµενο µε το οποίο ασχοληθήκαµε εδώ δεν είναι δυνατόν να εξαντληθεί στα πλαίσια ενός τόσο σύντοµου βιβλίου, αφού σχεδόν κάθε κεφάλαιό του θα µπορούσε να αποτελέσει ξεχωριστό τόµο ίδιου µεγέθους µε το σύνολο του βιβλίου αυτού. Αναγκαστικά, λοιπόν, ή θα καλύπταµε κάποια θέµατα στο απαιτούµενο βάθος ή το σύνολο σχεδόν των θεµάτων συνοπτικά. Η επιλογή µου, σε αντίθεση µε την επιλογή που έκανα στο βιβλίο της «Ασφάλειας Υπολογιστών» ήταν η δεύτερη, δηλαδή η συζήτηση όλου σχεδόν του φάσµατος του κλάδου, αλλά συνοπτικά. Έτσι, το βιβλίο αυτό σάς έδωσε, ελπίζω, µια ικανοποιητική επισκόπηση της ασφάλειας δικτύων, χωρίς όµως να µπει σε αναλυτική παρουσίαση των επιµέρους θεµάτων που πραγµατεύεται. Οι γνώσεις που πρέπει να έχετε πάρει είναι αρκετές για έναν επιστήµονα της πληροφορικής, ανεπαρκέστατες όµως για έναν επιστήµονα της πληροφορικής που θα θελήσει να ασχοληθεί ειδικά µε τον κλάδο της ασφάλειας δικτύων. Αν, µέσα από το βιβλίο αυτό, κατάφερα να κεντρίσω το ενδιαφέρον µερικών από σας ώστε –ενδεχοµένως– να ακολουθήσετε την κατεύθυνση αυτή στην επιστηµονική και επαγγελµατική σας σταδιοδροµία, τότε πραγµατικά η προσπάθεια άξιζε τον κόπο. Σωκράτης Κ. Κάτσικας Ιούνιος 2000
A·ÓÙ‹ÛÂȘ AÛ΋ÛÂˆÓ A˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.1 Οι προτάσεις 1, 2, 4, 6, 7 και 9 είναι σωστές. Οι προτάσεις 3, 5, 8 και 10 είναι λανθασµένες. Αν απαντήσατε σωστά, τότε µπράβο σας! ∆ιαβάζετε πράγµατι προσεκτικά. Αν όχι, πρέπει να ξαναδιαβάσετε την Eνότητα 1.1 και να προσέξετε λίγο περισσότερο. 1.2 Οι προτάσεις 2, 3 και 5 είναι σωστές. Οι προτάσεις 1 και 4 είναι λανθασµένες. Αν απαντήσατε σωστά, τότε µπράβο σας! ∆ιαβάζετε πράγµατι προσεκτικά. Αν όχι, δεν πειράζει, µην απογοητεύεστε. Θα πρέπει να ξαναπροσπαθήσετε, αφού όµως διαβάσετε λίγο προσεκτικότερα την Eνότητα 1.1. 1.3 Η σωστή αντιστοίχιση είναι (1 Æ 1), (2 Æ 1, 2), (3 Æ 1), (4 Æ 1, 6), (5 Æ 1, 4, 5). Αν τα βρήκατε όλα σωστά, τότε µπράβο σας! Αν όχι, δεν πειράζει. Ξαναδιαβάστε την Eνότητα 1.2, ξαναπροσπαθείστε και θα τα καταφέρετε. 1.4 Η σωστή αντιστοίχιση είναι (1 Æ 1), (2 Æ 1, 3), (3 Æ 1, 3), (4 Æ 1), (5 Æ 1, 3). Αν τα βρήκατε όλα σωστά, µπράβο σας! Πάτε πολύ καλά. Αν όχι, φαίνεται ότι δε διαβάσατε πολύ προσεκτικά την Ενότητα 1.2. Ξαναπροσπαθείστε και θα τα καταφέρετε σίγουρα. 1.5 Η σωστή αντιστοίχιση είναι (1 Æ 4), (2 Æ 2), (3 Æ 1, 2), (4 Æ 1, 2, 3). Αν τα βρήκατε όλα σωστά, µπράβο σας! Πάτε πολύ καλά. Αν όχι, θα πρέπει να ξαναδιαβάσετε την Ενότητα 1.2 και να δοκιµάσετε την άσκηση ξανά. Θα τα καταφέρετε σίγουρα!
A™º∞§∂π∞ ¢π∫∆Àø¡
204
2.1 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 4), (2 Æ 2), (3 Æ 4), (4 Æ 2), (5 Æ 3), (6 Æ 3), (7 Æ 1), (8 Æ 5), (9 Æ 5), (10 Æ 6), (11 Æ 6), (12 Æ 7), (13 Æ 7). Αν απαντήσατε σωστά, τότε µπράβο σας! Αν όχι, µην απογοητεύεστε. Θα πρέπει όµως να προσέξετε λίγο παραπάνω στο διάβασµά σας. Στην προκειµένη περίπτωση φαίνεται ότι δε µελετήσατε όσο προσεκτικά έπρεπε την υποενότητα 2.1.4. Ξαναπροσπαθείστε! 2.2 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 1, 6), (2 Æ 4, 9), (3 Æ 3, 8), (4 Æ 2, 7), (5 Æ 5, 10). Αν απαντήσατε σωστά, τότε µπράβο σας! Αν όχι, µην απογοητεύεστε. Ξαναπροσπαθείστε και θα τα καταφέρετε οπωσδήποτε. Χρησιµοποιείστε όµως περισσότερο τη φαντασία σας την επόµενη φορά. Στο κάτω–κάτω, ένα µεγάλο κοµµάτι της ασφάλειας είναι αυτό που λέµε «κοινή λογική». Θα βοηθούσε επίσης αν ξαναδιαβάζατε την Ενότητα 2.3. 3.1 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 1, 2, 3), (2 Æ 4), (3 Æ 5), (4 Æ 6, 7). Αν τη βρήκατε σωστά, µπράβο σας!. Αν όχι, ξαναδιαβάστε την Ενότητα 3.1 και θα τα καταφέρετε. 3.2 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 3), (2 Æ 2), (3 Æ 1), (4 Æ 3), (5 Æ 2), (6 Æ 3), (7 Æ 3), (8 Æ 1), (9 Æ 3), (10 Æ 3), (11 Æ 1), (12 Æ 1), (13 Æ 1), (14 Æ 1), (15 Æ 3), (16 Æ 1). Αν τη βρήκατε σωστά, τότε µπράβο σας! ∆ιαβάζετε προσεκτικά και µεθοδικά. Αν όχι, µην απογοητεύεστε. Παρ’ όλο που η άσκηση δεν ήταν δύσκολη, απαιτούσε ωστόσο καλή οργάνωση µνήµης. Ξαναδιαβάστε την Eνότητα 3.1 και θα δείτε ότι θα τα καταφέρετε την επόµενη φορά.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ A ™ ∫ ∏ ™ ∂ ø ¡ AÀ ∆ √ ∞ • π √ § √ ° ∏ ™ ∏ ™
3.3 Τοποθετείται ανάµεσα στα πεδία Hop–by–hop routing και Destination options στη λειτουργία µεταφοράς και ανάµεσα στα πεδία External header και Original IP header σε λειτουργία σήραγγας. Αν απαντήσατε σωστά, µπράβο σας! Αν όχι, κοιτάξτε και πάλι προσεκτικά τα Σχήµατα 3.6 και 3.7. 3.4 Η δοµή της επικεφαλίδας ΑΗΡ περιγράφεται στο Σχήµα 3.6 και στη σελ. 82 του κειµένου. 3.5 Η επικεφαλίδα ESP τοποθετείται ανάµεσα στα πεδία Other IP headers και Encrypted Data. Αν απαντήσατε σωστά, τότε µπράβο σας! Συνεχίστε τη µελέτη σας µε την ίδια προσοχή και επιµέλεια. Αν όχι, θα πρέπει να ξαναδείτε το Σχήµα 3.8 πιο προσεκτικά και να ξαναπροσπαθήσετε. Είναι βέβαιο ότι θα τα καταφέρετε! 3.6 Η δοµή της επικεφαλίδας ESP περιγράφεται στο Σχήµα 3.8 και στη σελ. 84 του κειµένου. 3.7 Το πρωτόκολλο ISAKMP/Oakley λειτουργεί σε τρεις φάσεις: 1. Ανταλλαγή cookies 2. Ανταλλαγή κλειδιών Diffie–Hellman 3. Ανταλλαγή ψηφιακών υπογραφών Αν απαντήσατε σωστά στην άσκηση αυτή, πρέπει να σας συγχαρώ! Αν όχι, µην απογοητεύεστε. Ξαναδιαβάστε την παράγραφο για το πρωτόκολλο ΙΚΜΡ και ξαναπροσπαθείστε. Θα απαντήσετε σίγουρα σωστά την επόµενη φορά. 3.8 Η περιγραφή των βηµάτων λειτουργίας του πρωτοκόλλου SSH χωρίς αυθεντικοποίηση χρήστη βρίσκεται στις σελ. 88–89 του κειµένου. 3.9 Η περιγραφή των τρόπων αυθεντικοποίησης χρήστη στο πρωτόκολλο SSH βρίσκεται στη σελ. 89–90 του κειµένου.
205
A™º∞§∂π∞ ¢π∫∆Àø¡
206
3.10 Η περιγραφή του πρωτοκόλλου εγγραφής SSL βρίσκεται στη σελ. 91 του κειµένου. 3.11 Η περιγραφή του πρωτοκόλλου χειραψίας SSL βρίσκεται στη σελ. 91–92 του κειµένου. 4.1 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 1, 2, 3, 4), (2 Æ 1, 2, 3, 4), (3 Æ 3, 4). Αν απαντήσατε σωστά, τότε µπράβο σας! Αν όχι, ξαναπροσπαθείστε, αφού µελετήσετε πάλι την Ενότητα 4.1. 4.2 Η βασική τεχνική που χρησιµοποιείται για την εξασφάλιση µηνυµάτων ηλεκτρονικού ταχυδροµείου είναι ο ψηφιακός φάκελος. Οι υπόλοιπες επιλογές αποτελούν απαραίτητα συστατικά της υλοποίησης του ψηφιακού φακέλου. Αν απαντήσατε σωστά στην ερώτηση αυτή, µπράβο σας! Αν όχι, µην απογοητεύεστε. Ξαναδιαβάστε την Ενότητα 4.2 µε πιο κριτικό µάτι και ξαναπροσπαθείστε. 4.3 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 1, 2, 3), (2 Æ 2, 3), (3 Æ 1, 2, 3), (4 Æ 3), (5 Æ 1, 2, 3). Όσοι απάντησαν σωστά πάνε πολύ καλά! Όσοι δεν τα κατάφεραν θα πρέπει να ξαναµελετήσουν προσεκτικότερα την υποενότητα 4.2.1. 4.4 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 1, 2, 3), (2 Æ 1, 2, 3), (3 Æ 3), (4 Æ 2, 3). Μπράβο σε όσους τα κατάφεραν σωστά ή σχεδόν σωστά! Οι υπόλοιποι µην απογοητεύεστε. Προσπαθείστε ξανά, αφού πρώτα ξαναµελετήσετε την υποενότητα 4.2.1. 4.5 Οι προτάσεις 1, 4, 5, 6, 8 είναι σωστές και οι υπόλοιπες λανθασµένες. Αν απαντήσατε σωστά, συγχαρητήρια! Αν δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.2.1.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ A ™ ∫ ∏ ™ ∂ ø ¡ AÀ ∆ √ ∞ • π √ § √ ° ∏ ™ ∏ ™
4.6 Οι προτάσεις 2, 3, 7 είναι σωστές και οι υπόλοιπες λανθασµένες. Αξίζουν πολλά µπράβο σε όσους απάντησαν σωστά στην άσκηση αυτή. Αν δεν απαντήσατε όµως σωστά, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.2.2. 4.7 Οι προτάσεις 1, 4 είναι σωστές και οι υπόλοιπες λανθασµένες. Μπράβο σας, αν απαντήσατε σωστά! Αν όµως δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.2.3. 4.8 Οι προτάσεις 2, 4 και 6 είναι σωστές και οι υπόλοιπες λανθασµένες. Όσοι απάντησαν σωστά στην άσκηση αυτή προχωρούν πολύ καλά. Όσοι δεν τα κατάφεραν δεν πειράζει, θα τα καταφέρουν σίγουρα, αν ξαναδιαβάσουν προσεκτικότερα την υποενότητα 4.3.1. 4.9 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 2), (2 Æ 1), (3 Æ 1), (4 Æ 3), (5 Æ 2), (6 Æ 3), (7 Æ 1), (8 Æ 2). Αν δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα τις υποενότητες 4.3.3, 4.3.5 και 4.3.6. 4.10 Τα πέντε επίπεδα ελέγχου ασφάλειας της γλώσσας Java είναι ο µεταφραστής Java, ο επαληθευτής Java, ο φορτωτής κλάσεων Java, ο διαχειριστής ασφάλειας Java και το επίπεδο JavaSecurity. Αν δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.3.4. 4.11 Οι προτάσεις 3 και 5 είναι σωστές και οι υπόλοιπες λανθασµένες. Συγχαρητήρια σε όσους απάντησαν σωστά! Αν δεν απαντήσατε σωστά, ξαναπροσπαθείστε, αφού πρώτα ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.3.5. 4.12 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 1), (2 Æ 2), (3 Æ 1), (4 Æ 2), (5 Æ 1).
207
A™º∞§∂π∞ ¢π∫∆Àø¡
208
Αν δεν απαντήσατε σωστά στην άσκηση αυτή, καλό θα ήταν να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.3.6. 4.13 Η προστασία αντιγραφής λογισµικού, ανεξάρτητα από το ποια συγκεκριµένη τεχνική προστασίας χρησιµοποιείται, µπορεί να παρακαµφθεί αν υπάρξει πρόσβαση στον κώδικα όσο αυτός βρίσκεται στον επεξεργαστή ή στη µνήµη. Η απάντηση στην ερώτηση αυτή στην ουσία απαιτεί µια µικρή αφαιρετική διαδικασία, που, αν δε γίνει σωστά, µπορεί να οδηγήσει σε εσφαλµένες απαντήσεις ειδικής µορφής, που αναφέρονται δηλαδή στην παράκαµψη µιας και µόνο τεχνικής προστασίας αντιγραφής. Αν δώσατε µια τέτοια απάντηση, θα πρέπει να προσέξετε λίγο περισσότερο. 4.14 Η προστασία λογισµικού µε περιορισµό της χρήσης του µπορεί να παρακαµφθεί µε χρήση debuggers και µε συνακόλουθο patching. Και εδώ ισχύει το σχόλιο της απάντησης στην προηγούµενη Άσκηση αυτοαξιολόγησης 4.13: Αν δεν κάνατε ικανοποιητική «λογική αφαίρεση», είναι πιθανόν να απαντήσατε µε απάντηση που ισχύει µόνο για συγκεκριµένη µέθοδο προστασίας. 4.15 Οι προτάσεις 2, 4, 5, 6 και 8 είναι σωστές και οι υπόλοιπες λανθασµένες. Αν δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.3.6. 4.16 Τα πρωτόκολλα που προδιαγράφει η JEPI είναι ένα πρωτόκολλο διαπραγµάτευσης γενικού σκοπού και ένα συγκεκριµένο υποσύστηµα επέκτασης (UPP). Η απάντηση στην ερώτηση αυτή βρίσκεται στην Ενότητα 4.4 (σελ. 31–32). Αν δεν απαντήσατε σωστά, προτείνω να ξαναµελετήσετε προσεκτικότερα την υποενότητα αυτή. 4.17 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 1), (1 Æ 2), (1 Æ 3), (1 Æ 8), (2 Æ 1), (2 Æ 2), (2 Æ 3), (2 Æ 4), (2 Æ 8), (3 Æ 3), (3 Æ 5), (3 Æ 6), (3 Æ 7), (3 Æ 8). Αν δεν τα καταφέρατε σωστά, δεν πειράζει. Ξαναδιαβάστε όµως προσεκτικότερα την υποενότητα 4.4.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ A ™ ∫ ∏ ™ ∂ ø ¡ AÀ ∆ √ ∞ • π √ § √ ° ∏ ™ ∏ ™
4.18 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 2), (2 Æ 1), (2 Æ 2), (2 Æ 3), (3 Æ 1), (3 Æ 2), (3 Æ 3), (4 Æ 3), (5 Æ 2). Αν απαντήσατε σωστά, µπράβο σας! Αν δεν απαντήσατε σωστά, ξανακοιτάξτε µε µεγαλύτερη προσοχή την Ενότητα 4.4. 4.19 Τα χαρακτηριστικά που πρέπει να ικανοποιεί κάθε σύστηµα ηλεκτρονικού χρήµατος είναι η ανεξαρτησία, η ανωνυµία, η αδυναµία διπλής χρήσης, η δυνατότητα ανίχνευσης απόπειρας διπλής χρήσης, η διαιρετότητα, η διαθεσιµότητα υποδιαιρέσεων και η δυνατότητα ασφαλούς αποθήκευσής του. Αν απαντήσατε σωστά, τότε µπράβο σας! Αν όχι, ξαναπροσπαθείστε, αφού πρώτα επανέλθετε στη µελέτη της υποενότητας 4.4.1, δίνοντας περισσότερη προσοχή στα κύρια σηµεία της. 4.20 Οι εναλλακτικές λύσεις που έχουµε προκειµένου να επιβεβαιώσουµε ότι ένα νόµισµα δεν έχει ξαναχρησιµοποιηθεί σε συστήµατα ηλεκτρονικού χρήµατος τύπου offline είναι η εξασφάλιση ότι η ταυτότητα του πελάτη που αποπειράται να ξαναχρησιµοποιήσει ηλεκτρονικό χρήµα µπορεί να αποκαλυφθεί ή εξασφάλιση ότι το ηλεκτρονικό χρήµα δεν µπορεί να ξαναχρησιµοποιηθεί µέσω ειδικού υλικού. Αν δεν µπορέσατε να απαντήσετε σωστά στην ερώτηση αυτή, θα πρέπει να ξαναµελετήσετε την υποενότητα 4.4.1. 4.21 Οι προτάσεις 1, 4, 6 και 8 είναι σωστές και οι υπόλοιπες λανθασµένες. Αν δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.4.3. 4.22 Οι προτάσεις 1, 3, 4, 6, 7 και 9 είναι σωστές και οι υπόλοιπες λανθασµένες. Αν δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την Eνότητα 4.5. 4.23 Οι προτάσεις 3, 4, 5, 6, 10, 13, 16 και 17 είναι σωστές και οι υπόλοιπες λανθασµέ-
209
A™º∞§∂π∞ ¢π∫∆Àø¡
210
νες. Αν δεν απαντήσατε σωστά στην άσκηση αυτή, θα πρέπει να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 4.6.2. 5.1 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 3), (2 Æ 4), (3 Æ 5), (4 Æ 2), (5 Æ 1), (6 Æ 5), (7 Æ 1, 5), (8 Æ 3), (9 Æ 5), (10 Æ 1), (11 Æ 5), (12 Æ 5), (13 Æ 1), (14 Æ 3), (15 Æ 5). Αν καταφέρατε να τα βρείτε σωστά, µπράβο σας! Αν όχι, πρέπει να επιστρέψετε και να ξαναµελετήσετε την Eνότητα 5.1. Την επόµενη φορά θα τα καταφέρετε οπωσδήποτε. 5.2 Οι προτάσεις 2, 4, 5, 6 και 8 είναι σωστές, ενώ οι υπόλοιπες λανθασµένες. Αν δεν τα καταφέρατε να χαρακτηρίσετε σωστά όλες τις προτάσεις, καλό θα ήταν να ξαναµελετήσετε την υποενότητα 5.2.1 και να ξαναπροσπαθήσετε. 5.3 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1 Æ 5), (2 Æ 6), (3 Æ 4), (4 Æ 2), (5 Æ 1), (6 Æ 7), (7 Æ 3). Αν δεν µπορέσατε να τη βρείτε σωστά, ξαναπροσπαθείστε, αφού πρώτα ξαναδιαβάσετε προσεκτικότερα την υποενότητα 5.2.2. 5.4 Η σωστή αντιστοίχιση είναι η ακόλουθη: (1, 4, 5, 9, 10, 11 Æ 1) και (2, 3, 6, 7, 8 Æ 2). Αν τη βρήκατε σωστά µπράβο σας! Αν δεν τη βρήκατε σωστά, καλό θα είναι να ξαναγυρίσετε πίσω και να ξαναδιαβάσετε προσεκτικότερα την υποενότητα 5.3.2. Την επόµενη φορά θα τα καταφέρετε σίγουρα. 5.5 Οι προτάσεις 2, 3, 7 και 9 είναι σωστές και οι υπόλοιπες λανθασµένες. Αν απαντήσατε σωστά, τότε µπράβο σας! Αν όχι, πρέπει να ξαναµελετήσετε την Eνότητα 5.3 πριν ξαναπροσπαθήσετε.
A·ÓÙ‹ÛÂȘ ¢Ú·ÛÙËÚÈÔÙ‹ÙˆÓ 1.1 Όπως καταλαβαίνετε, ο σκοπός της δραστηριότητας αυτής δεν είναι να σας βάλει να επαναλάβετε το κείµενο της έκθεσης της επιτροπής Bangemann, αλλά να σας δώσει ένα κίνητρο να τη µελετήσετε. Η έκθεση αυτή περιλαµβάνει ολόκληρο κεφάλαιο αφιερωµένο σε ζητήµατα ασφάλειας σχετικά µε την Κοινωνία της Πληροφορίας. Τα ζητήµατα που θίγονται εκεί αφορούν την προστασία πνευµατικών δικαιωµάτων, την προστασία της ιδιωτικής ζωής, την κρυπτογράφηση και τη νοµική προστασία. Η σηµασία που αποδίδει η έκθεση στα ζητήµατα τα σχετικά µε την ασφάλεια πληροφοριών είναι ιδιαίτερα µεγάλη. 1.2 Πρώτα πρώτα καλό είναι να ξεκαθαρίσουµε ότι µε τον όρο «ηλεκτρονικό εµπόριο» εννοούµε την ολική ή µερική εκτέλεση εµπορικών συναλλαγών µέσω δικτύων υπολογιστών. Συνήθως διακρίνουµε τις εφαρµογές ηλεκτρονικού εµπορίου σε εφαρµογές «επιχείρησης–προς–επιχείρηση» (Business–to–Business, B2B) και σε εφαρµογές «πελάτη–προς–επιχείρηση» (Customer–to–Business, C2B). Ενώ οι πρώτες µπορούν να υλοποιηθούν και πάνω από ιδιωτικά, κλειστά δίκτυα (π.χ. εφαρµογές EDI), οι δεύτερες µπορούν να υλοποιηθούν αποτελεσµατικά µόνο πάνω από το διαδίκτυο. Είναι φανερό ότι οι απαιτήσεις ασφάλειας που εµφανίζονται στις δύο αυτές περιπτώσεις είναι πολύ διαφορετικές, τόσο λόγω των διαφορετικών τεχνολογιών που εµπλέκονται όσο και – κυρίως– λόγω της ποικιλότητας των απειλών που ελλοχεύουν στα δύο διαφορετικά αυτά τεχνολογικά περιβάλλοντα. Καλό είναι, λοιπόν, στην αρχή της έκθεσής σας να ξεκαθαρίζετε για ποιες εφαρµογές µιλάτε και για ποιο τεχνολογικό περιβάλλον. Στην έκθεσή σας καλό θα είναι επίσης να φέρετε παραδείγµατα εφαρµογών και των δύο τύπων. Από κει και πέρα, και ανεξάρτητα από το είδος της εφαρµογής, σε κάθε συναλλαγή εµπλέκονται δύο µέρη, ο έµπορος (πωλητής) και ο πελάτης (αγοραστής). Χρήσιµο είναι να θεωρήσουµε ότι κάθε εµπορική συναλλαγή (άρα και η ηλεκτρονική) ολοκληρώνεται σε 4 διακριτές φάσεις: τη φάση της αίτησης, κατά την οποία ο πελάτης ζητάει να µάθει πληροφορίες για ένα προϊόν ή υπηρεσία, τη φάση της διαπραγµάτευσης, όπου έµπορος και πελάτης διαπραγµατεύονται τους όρους πώλησης του προϊόντος ή της υπηρεσίας, τη φάση της εκτέλεσης, κατά την οποία ο έµπορος παραδίδει στον πελάτη το προϊόν ή την υπηρεσία, και τη φάση του διακανονισµού, κατά την οποία ο πελάτης πληρώνει τον έµπορο για την παρασχεθείσα υπηρεσία ή προϊόν. Αν αναλύσει κανείς τις ενέργειες που ο έµπορος και ο πελάτης αναλαµβάνουν σε καθεµία από τις φάσεις αυτές, κατα-
A™º∞§∂π∞ ¢π∫∆Àø¡
212
λήγει στο συµπέρασµα ότι οι απαιτήσεις ασφάλειας που έχει κάθε ηλεκτρονική συναλλαγή είναι, συνοπτικά, η διατήρηση της εµπιστευτικότητας, της ακεραιότητας και της διαθεσιµότητας της πληροφορίας, η απαγόρευση σε οποιοδήποτε µέρος να αρνηθεί εκ των υστέρων κάποια ενέργεια που έκανε και η εξασφάλιση της αυθεντικότητας της ταυτότητας και των ενεργειών και των δύο µερών. Η επισήµανση των απαιτήσεων αυτών µπορεί να γίνει και µε τη χρήση των παραδειγµάτων εφαρµογών που χρησιµοποιήθηκαν για την παρουσίαση των δύο τύπων εφαρµογών ηλεκτρονικού εµπορίου. Τα ίδια αυτά παραδείγµατα µπορούν να χρησιµοποιηθούν για την (επιλεκτική) παρουσίαση κάποιων πιθανών απειλών που αντιµετωπίζουν οι εφαρµογές ηλεκτρονικού εµπορίου, π.χ. παρακολούθηση γραµµής, πλαστοπροσωπία, παραβιάσεις εµπιστευτικότητας µηνυµάτων, εισβολές, παραβιάσεις ακεραιότητας µηνυµάτων ή κώδικα, άρνηση εξυπηρέτησης κ.ά. 1.3 Στη διεύθυνση catless.ncl.ac.uk/Risks θα βρείτε τα αρχεία του RISKS Digest, στα οποία υπάρχουν πληροφορίες για πολλές επιθέσεις. Η διεύθυνση αποτελεί ένα σηµείο συντονισµένης συζήτησης (µε συντονιστή τον Peter Neumann) για θέµατα επικινδυνότητας υπολογιστικών συστηµάτων. 2.1 Το σύστηµα είναι συµβατό µε το µοντέλο OSI, αφού είναι στρωµατοποιηµένο (στέλεχος – γραµµατέας – κανάλι επικοινωνίας) και η επικοινωνία των οντοτήτων σε κάθε επίπεδο δεν εξαρτάται από την επικοινωνία των οντοτήτων στα παραπάνω ή παρακάτω επίπεδα, αλλά η επικοινωνία Oντοτήτων N βασίζεται στην επικοινωνία Oντοτήτων N–1. Τα επίπεδα που µπορούµε να διακρίνουµε είναι το στέλεχος, η γραµµατέας και το φυσικό επίπεδο. Τα πρωτόκολλα είναι η υπαγόρευση του µηνύµατος, η χρήση του επεξεργαστή κειµένου, το επιστολόχαρτο της εταιρείας, η χρήση του fax. 2.2 Στην περίπτωση αυτή θα πρέπει η επικεφαλίδα δικτύου να τοποθετηθεί στο επίπεδο 4, µαζί µε την επικεφαλίδα µεταφοράς. 2.3 Στην επικοινωνία χρήστη – εξυπηρετητή συνθηµατικών αναγνωρίζουµε τον κίνδυνο της παρακολούθησης της ζεύξης και της συνακόλουθης παραβίασης της εµπιστευτικότητας ή/και της ακεραιότητας του συνθηµατικού που θα υποβάλει ο χρή-
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
στης στον εξυπηρετητή. Οι κίνδυνοι αυτοί ελαττώνονται µε χρήση των υπηρεσιών προστασίας εµπιστευτικότητας και προστασίας ακεραιότητας. Αναγνωρίζουµε επίσης και τον κίνδυνο της πλαστοπροσωπίας, ο οποίος ελαττώνεται µε χρήση των υπηρεσιών αυθεντικοποίησης και ελέγχου πρόσβασης. Αντίστοιχα, στην επικοινωνία τελικού συστήµατος – εξυπηρετητή συνθηµατικών αναγνωρίζουµε και πάλι τους κινδύνους της παρακολούθησης της ζεύξης και της συνακόλουθης παραβίασης της εµπιστευτικότητας ή/και της ακεραιότητας του συνθηµατικού που θα υποβάλει ο εξυπηρετητής στο τελικό σύστηµα, όπως επίσης και τον κίνδυνο της πλαστοπροσωπίας του τελικού συστήµατος ή του εξυπηρετητή. Επίσης, υπαρκτός είναι ο κίνδυνος µη διαθεσιµότητας του εξυπηρετητή, ο οποίος ελαττώνεται µε χρήση των υπηρεσιών εξασφάλισης συνεχούς λειτουργίας. 2.4 1. Η υπηρεσία προστασίας της εµπιστευτικότητας θα τοποθετηθεί στο επίπεδο δικτύου, επειδή το σηµείο πρόσβασης στο δίκτυο ευρείας ζώνης είναι ένα και η τοποθέτησή της στο επίπεδο αυτό είναι και οικονοµική και αποτελεσµατική. 2. Η υπηρεσία προστασίας της εµπιστευτικότητας θα τοποθετηθεί στο επίπεδο ζεύξης ή σύνδεσης δεδοµένων, καθώς είναι γνωστό το δροµολόγιο που ακολουθεί κάθε µήνυµα (χρήση µισθωµένων γραµµών). 3. Λόγω της ποικιλοµορφίας των τεχνολογιών επικοινωνιακών ζεύξεων που χρησιµοποιούνται και της µείξης της κίνησης του δικτύου, σ’ αυτήν την περίπτωση η υπηρεσία προστασίας της εµπιστευτικότητας θα τοποθετηθεί στα ανώτερα επίπεδα. 3.1 ΙΡv4 Η επικεφαλίδα ενός πακέτου ΙΡ αποτελείται από τα παρακάτω πεδία: Έκδοση (Version): Περιέχει την έκδοση του πρωτοκόλλου στην οποία ανήκει το πακέτο. Χρησιµοποιείται για να εξασφαλιστεί ότι όλοι όσοι θα το διαχειριστούν χρησιµοποιούν την ίδια έκδοση του ΙΡ. Μήκος (Length) επικεφαλίδας: Εφόσον το µήκος της επικεφαλίδας δεν είναι σταθερό, το πεδίο αυτό µας δίνει το µήκος της επικεφαλίδας µετρηµένο σε µονάδες λέξεων των 32 bits. Η µικρότερη τιµή που µπορεί να πάρει είναι 5. Είδος Eξυπηρέτησης (Type of Service): Επιτρέπει στον υπολογιστή να καθορίσει στο
213
A™º∞§∂π∞ ¢π∫∆Àø¡
214
υποδίκτυο τι είδους εξυπηρέτηση ζητάει. Η δοµή του πεδίου αυτού δίνεται στο επόµενο σχήµα: 0
1
2
Προτεραιότητα
3
4
5
D
T
R
6
7
Mη χρησιµοποιού- µενα
Τα τρία πρώτα bits καθορίζουν την προτεραιότητα του πακέτου (7 η υψηλότερη). Αν τεθεί το bit D, σηµαίνει απαίτηση µικρής καθυστέρησης, ενώ, αν τεθεί το bit Τ, σηµαίνει απαίτηση υψηλής ρυθµαπόδοσης. Τέλος, αν τεθεί το bit R, σηµαίνει απαίτηση υψηλής αξιοπιστίας. Συνολικό Μήκος (Total Length): Μας δίνει το µήκος όλου του πακέτου, δηλαδή της επικεφαλίδας και των δεδοµένων µαζί. Το µέγιστο µήκος µπορεί να είναι 65536 bytes. Σε περίπτωση διάσπασης του πακέτου, περιέχει το µήκος του πακέτου που µεταφέρει το τµήµα. Αναγνώριση (Identification field): Επιτρέπει στον υπολογιστή – δέκτη να αναγνωρίζει σε ποιο πακέτο ανήκει το κάθε τµήµα που λαµβάνει. Πεδίο DF (Don’t Fragment): Πεδίο µήκους 1 bit, που σηµαίνει απαγόρευση κατακερµατισµού του πακέτου. Πεδίο MF (More Fragments): Πεδίο µήκους 1 bit που σηµαίνει ύπαρξη περισσότερων του ενός τµηµάτων. Όλα τα τµήµατα στα οποία έχει διασπαστεί το πακέτο, εκτός του τελευταίου, θέτουν αυτό το πεδίο. ∆είκτης Εντοπισµού Τµήµατος (Fragment Offset): Το πεδίο αυτό υποδηλώνει σε ποιο σηµείο του πακέτου ανήκει το συγκεκριµένο τµήµα. Όλα τα τµήµατα, εκτός από το τελευταίο, πρέπει να έχουν µήκος πολλαπλάσιο των 8 bytes. Το πεδίο αυτό έχει µήκος 13 bits και εποµένως µπορούν να δηµιουργηθούν 8192 το πολύ τµήµατα για κάθε πακέτο. Το πεδίο αυτό, σε συνδυασµό µε το πεδίο MF, χρησιµοποιείται για την ανασύνθεση του πακέτου στον υπολογιστή– δέκτη, όταν αυτό έχει διασπαστεί σε τµήµατα. Χρόνος Ζωής (Time to Live): Το πεδίο αυτό χρησιµοποιείται για να υποδηλώσει τον µέγιστο χρόνο παραµονής του πακέτου στο δίκτυο. Όταν η τιµή του γίνει µηδέν, το πακέτο καταστρέφεται. Ο λόγος ύπαρξης αυτού του πεδίου είναι για τον έλεγχο ροής του δικτύου και την αποφυγή αδιεξόδων λόγω υπερχείλισης των χώρων αναµονής στους ενδιάµεσους κόµβους του δικτύου. Μονάδα µέτρησης του χρόνου είναι το sec (δευτερόλεπτο) και η µέγιστη τιµή του πεδίου αυτού είναι 255 sec.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
Πρωτόκολλο (Protocol): Το πεδίο αυτό δηλώνει σε ποια από τις διαδικασίες του επιπέδου µεταφοράς ανήκει το πακέτο. Τυπικά, οι επιλογές για την τιµή του πεδίου αυτού είναι δύο: TCP, UDP. Άθροισµα Eλέγχου (Ηeader Checksum): Το πεδίο αυτό ελέγχει µόνο την επικεφαλίδα. Αυτός ο έλεγχος είναι απαραίτητος, γιατί η επικεφαλίδα αλλάζει περνώντας από κάποιο δροµολογητή (π.χ. χωρίζεται σε τµήµατα, αλλάζει η τιµή στο πεδίο «χρόνος ζωής» κτλλπ.). ∆ιεύθυνση Αποστολέα (Source Address): ΙΡ διεύθυνση του υπολογιστή – αποστολέα. ∆ιεύθυνση Προορισµού (Destination Address): ΙΡ διεύθυνση του υπολογιστή – παραλήπτη. Επιλογές (Options): Χρησιµοποιείται για διάφορες λειτουργίες. Οι βασικότερες επιλογές είναι τρεις: καταγραφή της διαδροµής που ακολουθεί το πακέτο, επιλογή διαδροµών δροµολόγησης από τον αποστολέα και χρήση χρονοσφραγίδων. Πεδίο Συµπλήρωσης: Επειδή η επικεφαλίδα πρέπει να έχει µήκος ακέραιο αριθµό λέξεων 32 bits, χρησιµοποιείται το πεδίο αυτό για τη συµπλήρωση που τυχόν απαιτείται. IP v 6 Η επικεφαλίδα ενός πακέτου ΙΡv6 αποτελείται από τα παρακάτω πεδία: Έκδοση (Version): Πεδίο µεγέθους 4 bits που υποδηλώνει την έκδοση του πρωτοκόλλου. Η τιµή του ισούται µε έξι (6). Προτεραιότητα (Traffic Class): Πεδίο µεγέθους 8 bits που χρησιµοποιείται για να βοηθάει τους αποστολείς δεδοµένων ή τους δροµολογητές του δικτύου, να διαχειρίζονται πακέτα διαφορετικών κλάσεων ή προτεραιοτήτων. Σήµανση Ροής (Flow Label): Πεδίο µεγέθους 20 bits που χρησιµοποιείται για να σηµατοδοτήσει σειρές πακέτων για τα οποία ζητείται ειδική µεταχείριση από τους δροµολογητές του δικτύου, π.χ. σε περιπτώσεις πακέτων που αφορούν κίνηση υπηρεσιών πραγµατικού χρόνου. Μήκος Κίνησης (Payload Length): Πεδίο µεγέθους 16 bits που υποδηλώνει το µέγεθος του πακέτου µη συµπεριλαµβανοµένης της επικεφαλίδας. Επικεφαλίδες επέκτασης συµπεριλαµβάνονται στο σώµα (payload) του πακέτου. Επόµενη Επικεφαλίδα (Next Header): Επιλογέας µεγέθους 8 bits που χρησιµοποιείται για να προσδιορίσει τον τύπο της επικεφαλίδας µέσα στο πακέτο που ακολουθεί αµέσως µετά την επικεφαλίδα IPv6. Παίρνει τις ίδιες τιµές µε εκείνες του πεδίου
215
A™º∞§∂π∞ ¢π∫∆Àø¡
216
Protocol στην IPv4 επικεφαλίδα. Όριο Βηµάτων (Hop Limit): Απρόσηµος ακέραιος µεγέθους 8 bits που ελαττώνεται κατά 1, κάθε φορά που ένας ενδιάµεσος κόµβος προωθεί το πακέτο. Το πακέτο απορρίπτεται σε περίπτωση που η τιµή του πεδίου αυτού γίνει µηδέν. ∆ιεύθυνση Πηγής (Source Address): Πεδίο µεγέθους 128 bits που υποδηλώνει τη διεύθυνση του αποστολέα του µηνύµατος. ∆ιεύθυνση Προορισµού (Destination Address): Πεδίο µεγέθους 128 bits που υποδηλώνει τη διεύθυνση του παραλήπτη του πακέτου (αν υπάρχει εξωτερική επικεφαλίδα δροµολόγησης, το πεδίο αυτό µπορεί να µην περιέχει τον τελικό παραλήπτη του πακέτου αλλά κάποιον ενδιάµεσο). TCP Το TCP είναι προσανατολισµένο σε σύνδεση πρωτοκόλλου. Για το λόγο αυτό η κύρια µονάδα διαχείρισης του TCP είναι η σύνδεση. Τα πεδία µιας επικεφαλίδας του TCP είναι τα παρακάτω: Θύρα Αφετηρίας (Source Port Number): Η θύρα σύνδεσης της εφαρµογής του υπολογιστή– αποστολέα. Θύρα Προορισµού (Destination Port Number): Η θύρα σύνδεσης της εφαρµογής του υπολογιστή– προορισµού. Αριθµός ∆ιάταξης (Sequence Number): Περιέχει το σχετικό αύξοντα αριθµό του πρώτου byte του µηνύµατος από την αρχή της επικοινωνίας. Αριθµός Επιβεβαίωσης Λήψης (Acknowledgement Number): Περιέχει τον αριθµό διάταξης του επόµενου αναµενόµενου byte. Μήκος Επικεφαλίδας (Header Length): Το µήκος της επικεφαλίδας µετρηµένο σε λέξεις των 32 bits. Η ελάχιστη τιµή του είναι 5. Πεδίο Επειγόντων ∆εδοµένων (URGent): Πεδίο µεγέθους 1 bit που χρησιµοποιείται, όταν έχει τεθεί, για να υποδηλώσει την ύπαρξη επειγόντων δεδοµένων. Χρησιµοποιείται αντί σηµάτων διακοπής λήψης. Πεδίο Επιβεβαίωσης (ACKnwoledgement): Πεδίο µεγέθους 1 bit που χρησιµοποιείται, όταν έχει τεθεί, για να υποδηλώσει ότι χρησιµοποιείται το πεδίο επιβεβαίωσης. Επίσης, έχει και πιο ειδική χρήση, σε συνδυασµό µε το bit SYN για την εγκαθίδρυση σύνδεσης. Πεδίο Άµεσης Παράδοσης (PSH): Πεδίο µεγέθους 1 bit που χρησιµοποιείται, όταν
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
έχει τεθεί, για να υποδηλώσει ότι το συγκεκριµένο τµήµα απαιτείται να παραδοθεί αµέσως. Πεδίο Επαναδηµιουργίας Σύνδεσης (RST): Πεδίο µεγέθους 1 bit που χρησιµοποιείται, όταν έχει τεθεί, για να υποδηλώσει ότι ζητείται να αποκατασταθεί η σύνδεση. Η χρήση του πεδίου RST (reset) αποτελεί έναν τρόπο ανώµαλης αποσύνδεσης, που συνήθως οφείλεται είτε σε µη οµαλές συνθήκες στα προγράµµατα εφαρµογής είτε σε µη οµαλές συνθήκες στο δίκτυο. Πεδίο Συγχρονισµού (SYN): Πεδίο µεγέθους 1 bit που χρησιµοποιείται, όταν έχει τεθεί, για τη λειτουργία του πρωτοκόλλου τριπλής χειραψίας κατά τη φάση εγκαθίδρυσης µιας TCP σύνδεσης. Πεδίο Λύσης Σύνδεσης (FIN): Πεδίο µεγέθους 1 bit που χρησιµοποιείται, όταν έχει τεθεί, για τη λύση µιας TCP σύνδεσης. Μέγεθος Παραθύρου (Window Size): Το πεδίο αυτό χρησιµοποιείται για τον έλεγχο ροής των δεδοµένων. Ουσιαστικά προσδιορίζει το πλήθος των µη επιβεβαιωµένων bytes που µπορούν να κυκλοφορούν σε µια TCP σύνδεση. Ο έλεγχος ροής γίνεται µε χρήση κυλιόµενου παραθύρου µεταβλητού µεγέθους. Άθροισµα Ελέγχου (Checksum): Ο αλγόριθµος αθροίσµατος ελέγχου προσθέτει όλα τα δεδοµένα, θεωρώντας τα ως λέξεις των 16 bits, και στη συνέχεια παίρνει το συµπλήρωµα ως προς 1. Χρησιµοποιείται για την αύξηση της αξιοπιστίας µετάδοσης. Επείγων ∆είκτης (Urgent Pointer): Αν το πεδίο URG έχει τεθεί, το πεδίο αυτό δηλώνει µια µετατόπιση σε bytes από τον τρέχοντα αριθµό διάταξης, εκεί που υπάρχουν επείγοντα δεδοµένα. Επιλογές (Options): Το πεδίο αυτό µπορεί να χρησιµοποιηθεί για διάφορους λόγους, όπως για την αµοιβαία πληροφόρηση των επικοινωνούντων µερών σχετικά µε το µέγεθος που έχουν οι ενδιάµεσες µνήµες κατά τη διάρκεια της αρχικοποίησης (set up) της επικοινωνίας. ∆εδοµένα (Data): Τα πραγµατικά δεδοµένα του µηνύµατος TCP, µεγέθους το πολύ 65535 bytes. UDP Το UDP παρέχει τον µηχανισµό ώστε ένα πρόγραµµα εφαρµογής να µπορεί να στείλει ένα πακέτο σε άλλα προγράµµατα εφαρµογής. Για το λόγο αυτό η κύρια µονάδα διαχείρισης του πρωτοκόλλου είναι το πακέτο. Τα πεδία µιας επικεφαλίδας του UDP είναι τα παρακάτω:
217
A™º∞§∂π∞ ¢π∫∆Àø¡
218
Θύρα Αφετηρίας (Source Port Number): Η θύρα σύνδεσης της εφαρµογής του υπολογιστή– αποστολέα. Η χρήση του είναι προαιρετική. Θύρα Προορισµού (Destination Port Number): Η θύρα σύνδεσης της εφαρµογής του υπολογιστή– προορισµού. Μήκος Μηνύµατος (Message Length): Το πεδίο αυτό προσδιορίζει το µήκος του µεταδιδόµενου µηνύµατος, συµπεριλαµβανοµένης και της επικεφαλίδας. Η ελάχιστη τιµή του είναι 8. Άθροισµα Ελέγχου (Checksum): Το άθροισµα ελέγχου του µηνύµατος. ∆εδοµένα (Data): Τα πραγµατικά δεδοµένα του µηνύµατος UDP. 3.2 Τα δεδοµένα αυθεντικοποίησης του πρωτοκόλλου AHP είναι το αποτέλεσµα της εφαρµογής µιας µονόδροµης συνάρτησης σύνοψης σε ένα IP πακέτο. Το αποτέλεσµα αυτό εισάγεται στο πεδίο ∆εδοµένα Αυθεντικοποίησης (Authentication Data) της επικεφαλίδας του AHP και µεταδίδεται στο δίκτυο. Έστω D το αποτέλεσµα της εφαρµογής της µονόδροµης συνάρτησης σύνοψης από την πλευρά του αποστολέα. Όταν το πακέτο φτάσει στον προορισµό του, και εφόσον έχουν επαληθευτεί όλοι οι έλεγχοι που απαιτούνται από τα κατώτερα επίπεδα, ο παραλήπτης εφαρµόζει την ίδια µονόδροµη συνάρτηση σύνοψης στο παραληφθέν πακέτο. Έστω D’ το αποτέλεσµα της διαδικασίας αυτής. Αν D = D’, τότε το πακέτο αυθεντικοποιείται, διαφορετικά απορρίπτεται. Για να είναι δυνατό να ισχύσει η σχέση D = D’, θα πρέπει οι τιµές των πεδίων στις οποίες εφαρµόζεται η µονόδροµη συνάρτηση σύνοψης να µη µεταβάλλονται κατά τη διάρκεια µετάδοσης του πακέτου. Εποµένως, όλα τα πεδία της ΙΡ επικεφαλίδας των οποίων οι τιµές θα µεταβληθούν κατά τη διάρκεια µετάδοσης θα πρέπει να πάρουν µια αρχική σταθερή τιµή (κατά σύµβαση µηδέν). Τέτοια πεδία είναι τα ακόλουθα: 1. Χρόνος Ζωής του πακέτου. Το πεδίο αυτό µεταβάλλεται κατά τη διάρκεια µετάδοσης του πακέτου και, κατά συνέπεια, ο παραλήπτης δε µπορεί να γνωρίζει την αρχική τιµή που είχε θέσει ο αποστολέας. 2. ΙΡ επιλογές. Το πεδίο αυτό περιλαµβάνει επιλογές του αποστολέα που συνήθως σχετίζονται µε τη δροµολόγηση του πακέτου, την προσθήκη χρονοσφραγίδων κτλ. Όλα αυτά τα στοιχεία προσθέτονται από τους δροµολογητές από τους οποίους διέρχεται το πακέτο και, κατά συνέπεια, δε µπορεί να τα γνωρίζει ο αποστολέας.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
219
Όλα τα υπόλοιπα πεδία δε µεταβάλλονται κατά τη διάρκεια µετάδοσης του πακέτου, και εποµένως δε χρειάζεται να µηδενιστούν. 3.3 Με παρόµοια συλλογιστική µε αυτή που αναπτύχθηκε στη ∆ραστηριότητα 3.2, τα πεδία µιας επικεφαλίδας ΙΡv6 που θα πρέπει να µηδενιστούν πριν από την αποστολή του πακέτου είναι τα εξής: 1. Το πεδίο Όριο Βηµάτων (Hop Limit), διότι η τιµή του ελαττώνεται κατά 1 κάθε φορά που το πακέτο υφίσταται επεξεργασία από κάποιον ενδιάµεσο κόµβο του δικτύου. 2. Όλα τα πεδία Επιλογές (Options) των επικεφαλίδων επέκτασης (extension headers) στα οποία έχει τεθεί το C bit. Η σήµανση αυτού του bit, υποδηλώνει ότι η πληροφορία που συµπεριλαµβάνεται στο συγκεκριµένο πεδίο–επιλογή µπορεί να µεταβληθεί στη διαδροµή του πακέτου. Όλα τα υπόλοιπα πεδία δε µεταβάλλονται κατά τη διάρκεια µετάδοσης του πακέτου, και εποµένως δε χρειάζεται να µηδενιστούν. 3.4 Ο παρακάτω πίνακας απεικονίζει τις σχέσεις µεταξύ εξωτερικής και εσωτερικής επικεφαλίδας σε περίπτωση λειτουργίας σήραγγας για πακέτα ΙΡv4. Πεδίο
Εξωτερική Επικεφαλίδα
Εσωτερική Επικεφαλίδα
Version
4
Kαµία αλλαγή
Header length
Εξαρτάται
Kαµία αλλαγή
TOS
Αντιγραφή από εσωτερική επικεφαλίδα
Kαµία αλλαγή
Total length
Εξαρτάται
Kαµία αλλαγή
ID
Εξαρτάται
Kαµία αλλαγή
Flags (DF, MF)
Εξαρτάται
Kαµία αλλαγή
Fragmt offset
Εξαρτάται
Kαµία αλλαγή
TTL
Εξαρτάται
Ελαττώνεται
Protocol
AH, ESP, routing hdr
Kαµία αλλαγή
Checksum
Εξαρτάται
Αλλάζει
src address
∆εν εξαρτάται
Kαµία αλλαγή
A™º∞§∂π∞ ¢π∫∆Àø¡
220
dest address
∆εν εξαρτάται
Kαµία αλλαγή
Options
∆εν αντιγράφονται ποτέ
Kαµία αλλαγή
Πεδίο
Εξωτερική Επικεφαλίδα
Εσωτερική Επικεφαλίδα
Version
4
Kαµία αλλαγή
Header length
Εξαρτάται
Kαµία αλλαγή
TOS
Αντιγραφή από εσωτερική επικεφαλίδα
Kαµία αλλαγή
Total length
Εξαρτάται
Kαµία αλλαγή
ID
Εξαρτάται
Kαµία αλλαγή
Flags (DF,MF)
Εξαρτάται
Kαµία αλλαγή
Fragmt offset
Εξαρτάται
Kαµία αλλαγή
TTL
Εξαρτάται
Ελαττώνεται
Protocol
AH, ESP, routing hdr
Kαµία αλλαγή
Checksum
Εξαρτάται
Αλλάζει
src address
∆εν εξαρτάται
Kαµία αλλαγή
dest address
∆εν εξαρτάται
Kαµία αλλαγή
Options
∆εν αντιγράφονται ποτέ
Kαµία αλλαγή
Ισχύουν οι παρακάτω παρατηρήσεις: 1. Το πεδίο IP version στην εξωτερική επικεφαλίδα µπορεί να έχει διαφορετική τιµή από αυτή της εσωτερικής επικεφαλίδας. 2. Το πεδίο checksum αλλάζει όποτε αλλάζει και το πεδίο TTL. 3. Κατά τη δροµολόγηση του πακέτου αποφασίζεται αν η τιµή του πεδίου DF θα αντιγραφεί από την εσωτερική επικεφαλίδα, ή αν θα πάρει την τιµή µηδέν ή ένα. 4. Αν το πεδίο protocol έχει την τιµή 4 (ΙΡ) στην εσωτερική επικεφαλίδα, τότε το πεδίο TOS αντιγράφεται από την εσωτερική επικεφαλίδα, διαφορετικά, αν το πεδίο protocol έχει την τιµή 6 (ΙΡv6) στην εσωτερική επικεφαλίδα, τότε η προτεραιότητα αντιστοιχίζεται στο πεδίο TOS της εξωτερικής επικεφαλίδας. 3.5 Ο παρακάτω πίνακας απεικονίζει τις σχέσεις µεταξύ εξωτερικής και εσωτερικής επικεφαλίδας σε περίπτωση λειτουργίας σήραγγας για πακέτα ΙΡv6.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
Πεδίο
221
Εξωτερική Επικεφαλίδα
Εσωτερική Επικεφαλίδα
version
6
Kαµία αλλαγή
priority
Αντιγραφή από εσωτερική επικεφαλίδα ή διαµορφώνεται κατά την δροµολόγηση
Kαµία αλλαγή
flow id
Αντιγραφή από εσωτερική επικεφαλίδα ή διαµορφώνεται κατά την δροµολόγηση
Kαµία αλλαγή
len
Εξαρτάται
Kαµία αλλαγή
next header
AH, ESP, routing hdr
Kαµία αλλαγή
Hop limit
Εξαρτάται
Ελαττώνεται
src address
∆εν εξαρτάται
Kαµία αλλαγή
dest address
∆εν εξαρτάται
Kαµία αλλαγή
Extension headers
∆εν αντιγράφονται ποτέ
Kαµία αλλαγή
Πεδίο
Εξωτερική Επικεφαλίδα
Εσωτερική Επικεφαλίδα
version
6
Kαµία αλλαγή
priority
Αντιγραφή από εσωτερική επικεφαλίδα ή διαµορφώνεται κατά τη δροµολόγηση
Kαµία αλλαγή
flow id
Αντιγραφή από εσωτερική επικεφαλίδα ή διαµορφώνεται κατά την δροµολόγηση
Kαµία αλλαγή
len
Εξαρτάται
Kαµία αλλαγή
next header
AH, ESP, routing hdr
Kαµία αλλαγή
Hop limit
Εξαρτάται
Ελαττώνεται
src address
∆εν εξαρτάται
Kαµία αλλαγή
dest address
∆εν εξαρτάται
Kαµία αλλαγή
Extension headers
∆εν αντιγράφονται ποτέ
Kαµία αλλαγή
Ισχύουν οι παρατηρήσεις της ∆ραστηριότητας 3.3. Eπιπλέον, αν το πεδίο protocol έχει την τιµή 6 (Next Header = 41) στην εσωτερική επικεφαλίδα, τότε το πεδίο priority αντιγράφεται από την εσωτερική επικεφαλίδα, διαφορετικά, αν το πεδίο protocol έχει την τιµή 4 (Next Header = 4) στην εσωτερική επικεφαλίδα, τότε τo πεδίο TOS αντιστοιχίζεται στην προτεραιότητα της εξωτερικής επικεφαλίδας.
A™º∞§∂π∞ ¢π∫∆Àø¡
222
3.6 1. Κρυπταναλυτική επίθεση εξαντλητικής δοκιµής: Το SSL υποστηρίζει µια σειρά από κρυπτογραφικούς αλγόριθµους, όπως RSA, Diffie–Hellman, DSS, Fortezza/DMS, RC4, RC2 CBC, IDEA CBC, DES CBC, Triple DES EDE CBC, Fortezza CBC. Η αντοχή του αλγόριθµου εξαρτάται από το µέγεθος του κλειδιού κρυπτογράφησης. Για το λόγο αυτό συνιστάται η χρήση αλγόριθµων µε µεγάλο µήκος κλειδιού, έτσι ώστε να µην είναι δυνατόν για κάποιον να επιχειρήσει να εξαντλήσει το πεδίο ορισµού των ιδιωτικών κλειδιών. 2. Επίθεση λεξικού γνωστού µη κρυπτογραφηµένου κειµένου: Ισχύουν τα ίδια µε την αντιµετώπιση της κρυπταναλυτικής επίθεσης εξαντλητικής δοκιµής. 3. Επίθεση επανάληψης: Αυτού του είδους η επίθεση αντιµετωπίζεται από το επίπεδο εγγραφής του SSL. Το επίπεδο αυτό παρέχει ακεραιότητα των δεδοµένων µε χρήση µονόδροµων συναρτήσεων σύνοψης και κωδικών αυθεντικοποίησης µηνύµατος (ΜΑC). Η επανάληψη του ίδιου µηνύµατος µέσα σε µια SSL σύνοδο αποφεύγεται µε την χρήση MAC, γιατί κάθε SSL µήνυµα έχει ένα µοναδικό αριθµό σειράς. Η παραγωγή του MAC στηρίζεται στη χρήση κάποιου κοινού µυστικού κλειδιού συνόδου, το οποίο είναι διαφορετικό σε κάθε SSL σύνδεση. 4. Επίθεση ενδιάµεσου: Το πρωτόκολλο SSL προβλέπει την ανταλλαγή πιστοποιητικών µεταξύ πελάτη – εξυπηρετητή. Σε κάθε περίπτωση ένα ψηφιακό πιστοποιητικό έχει µια µοναδική σύνοψη. Η σύνοψη αυτή χρησιµοποιείται για την επαλήθευση των ανταλλασσόµενων µηνυµάτων. Σε περίπτωση που κάποιος ενδιάµεσος παρεµβληθεί σε κάποια σύνοδο SSL, τότε τα αυθεντικοποιηµένα µέρη θα καταλάβουν την προσπάθεια παραβίασης, καθώς το πιστοποιητικό που θα παρουσιαστεί από τον επίδοξο εισβολέα δε θα µπορεί να επαληθεύσει τα µηνύµατα των δύο µερών, αφού θα έχει διαφορετική σύνοψη. 5. Υποκλοπή συνθηµατικού: Το συνθηµατικό προστατεύεται µε χρήση κρυπτογραφίας δηµόσιου κλειδιού. Ακόµα και αν υποκλαπεί το κρυπτογραφηµένο συνθηµατικό, ο υποκλοπέας δε θα µπορέσει να το χρησιµοποιήσει, καθώς το SSL παρέχει προστασία από επιθέσεις επανάληψης. 6. Παραποίηση ΙΡ διευθύνσεων: Το SSL είναι ένα πρωτόκολλο που αυθεντικοποιεί εφαρµογές και χρήστες και όχι υπολογιστικές συσκευές, και άρα ΙΡ διευθύνσεις. Η αυθεντικοποίηση που προσφέρει το SSL στηρίζεται στην ύπαρξη ψηφιακών πιστοποιητικών. Εποµένως, αυτή η επίθεση, σε επίπεδο εφαρµογής ή τελικού χρήστη, αντιµετωπίζεται µε τον ίδιο τρόπο που αντιµετωπίζεται και η επίθεση ενδιάµεσου.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
7. Πειρατεία ΙΡ: Ισχύουν όσα και στην αντιµετώπιση της επίθεσης µε παραποίηση ΙΡ διευθύνσεων. 8. Κατακλυσµός SYN: Η επίθεση αυτή γίνεται στο TCP, δηλαδή στο επίπεδο µεταφοράς. Το SSL κείται σε ένα επίπεδο µεταξύ επιπέδου µεταφοράς και εφαρµογής. Για τον λόγο αυτό δεν είναι προορισµένο να ανταποκρίνεται σε τέτοιου είδους επιθέσεις. Άλλες µέθοδοι µπορούν να βρεθούν για την αντιµετώπιση αυτής της επίθεσης, π.χ. ορισµός µέγιστου πλήθους ταυτόχρονων ανοικτών συνδέσεων. 4.1 1. Η δοµή ενός ENCRYPTED ΡΕΜ µηνύµατος θα είναι όπως στο επόµενο πλαίσιο: – – –BEGIN PRIVACY–ENHANCED MESSAGE– – – Proc–Type: 4, ENCRYPTED Content–Domain: RFC822 DEK–Info: (Πληροφορίες για τον αλγόριθµο κρυπτογράφησης.) Originator–ID–Symmetric: (Πληροφορίες σχετικά µε το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος.) Recipient–ID–Symmetric: (Πληροφορίες σχετικά µε το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος.) Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο Recipient–ID–Symmetric.) Encrypted Data – – –END PRIVACY–ENHANCED MESSAGE– – –
2. Η δοµή ενός MIC–ONLY ΡΕΜ µηνύµατος θα είναι όπως στο επόµενο πλαίσιο: – – –BEGIN PRIVACY–ENHANCED MESSAGE– – – Proc–Type: 4, MIC–ONLY Content–Domain: RFC822 Originator–ID–Asymmetric: (Το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος. Ουσιαστικά είναι πληροφορίες σχετικά µε το δηµόσιο κλειδί του αποστολέα.)
223
A™º∞§∂π∞ ¢π∫∆Àø¡
224
Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο Originator–ID–Asymmetric.) MIC–Info: (To MIC του µηνύµατος.) Recipient–ID–Asymmetric: (Το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος. Ουσιαστικά είναι πληροφορίες σχετικά µε το δηµόσιο κλειδί του παραλήπτη.) Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο αµέσως προηγούµενο Recipient–ID–Asymmetric.) Recipient–ID–Asymmetric: (Το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος. Ουσιαστικά είναι πληροφορίες σχετικά µε το δηµόσιο κλειδί του παραλήπτη.) Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο αµέσως προηγούµενο Recipient–ID–Asymmetric.) Encrypted Data – – –END PRIVACY–ENHANCED MESSAGE– – –
3. Η δοµή ενός MIC–CLEAR ΡΕΜ µηνύµατος θα είναι όπως στο επόµενο πλαίσιο: – – –BEGIN PRIVACY–ENHANCED MESSAGE– – – Proc–Type: 4, MIC–CLEAR Content–Domain: RFC822 Originator–ID–Asymmetric: (Το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος. Ουσιαστικά είναι πληροφορίες σχετικά µε το δηµόσιο κλειδί του αποστολέα.) Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο Originator–ID–Asymmetric.) MIC–Info: (To MIC του µηνύµατος.) Recipient–ID–Asymmetric: (Το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος. Ουσιαστικά είναι πληροφορίες σχετικά µε το δηµόσιο κλειδί του παραλήπτη.) Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο αµέσως προη-
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
γούµενο Recipient–ID–Asymmetric.) Recipient–ID–Asymmetric: (Το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος. Ουσιαστικά είναι πληροφορίες σχετικά µε το δηµόσιο κλειδί του παραλήπτη.) Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο αµέσως προηγούµενο Recipient–ID–Asymmetric.) Recipient–ID–Asymmetric: (Το κλειδί ανταλλαγής, Interchange Key IK, που θα χρησιµοποιηθεί για την κρυπτογράφηση του µηνύµατος. Ουσιαστικά είναι πληροφορίες σχετικά µε το δηµόσιο κλειδί του παραλήπτη.) Key–Info: (Πληροφορίες σχετικά µε το ΙΚ που περιλαµβάνεται στο αµέσως προηγούµενο Recipient–ID–Asymmetric.) Plaintext Data – – –END PRIVACY–ENHANCED MESSAGE– – –
4.2 Οι κύριες διαφορές µεταξύ του ΡΕΜ και του MOSS είναι οι εξής: 1. Το ΡΕΜ είναι σύστηµα ηλεκτρονικού ταχυδροµείου, ενώ το ΜΟSS περιγράφει ένα σύνολο από επεκτάσεις για την εξασφάλιση µηνυµάτων που ανταλλάσσονται µε βάση το πρότυπο ΜΙΜΕ. 2. Το ΡΕΜ προδιαγράφει τη µορφή της ιεραρχίας εµπιστοσύνης που απαιτείται για την ανάπτυξή του, ενώ το ΜΟSS προϋποθέτει την ύπαρξη µιας ιεραρχίας στην οποία διανέµονται ψηφιακά πιστοποιητικά Χ.509. 3. Το ΡΕΜ προδιαγράφει τη µορφή του σώµατος του µηνύµατος, ενώ το ΜΟSS δεν περιγράφει την µορφή του σώµατος του µηνύµατος, το οποίο ακολουθεί το µορφότυπο του προτύπου ΜΙΜΕ. 4. Το ΡΕΜ προδιαγράφει µηνύµατα για την απόκτηση λιστών ανάκλησης πιστοποιητικών, κάτι το οποίο δεν αναφέρεται στο MΟSS. Το τελευταίο υποθέτει ότι ο έλεγχος εγκυρότητας ενός πιστοποιητικού είναι εξωτερικός του προτύπου (γίνεται µε χρήση άλλου µηχανισµού). 5. Το ΡΕΜ απαιτεί από τους χρήστες να έχουν ένα ψηφιακό πιστοποιητικό, ενώ το MOSS απαιτεί να έχουν ένα ζεύγος ιδιωτικού/δηµόσιου κλειδιού.
225
A™º∞§∂π∞ ¢π∫∆Àø¡
226
6. Στις προδιαγραφές του ΡΕΜ εντάσσονται µόνο µηνύµατα κειµένου, σε αντίθεση µε το MOSS, όπου προδιαγράφεται η χρήση πολλών τύπων µηνυµάτων, π.χ. ηχητικών. 7. Το ΡΕΜ προδιαγράφει την εφαρµογή της υπηρεσίας εµπιστευτικότητας µόνο σε µηνύµατα που προηγουµένως έχουν υπογραφεί, σε αντίθεση µε το MOSS, όπου αυτές οι δύο υπηρεσίες είναι ανεξάρτητες. 8. Το MOSS αποκλείει τη χρήση κρυπτογραφίας συµµετρικού κλειδιού για την ανταλλαγή µηνυµάτων, σε αντίθεση µε το ΡΕΜ. 4.3 Το PGP παρέχει τρία εργαλεία διαχείρισης: PGP keys: Το εργαλείο αυτό χρησιµοποιείται για τη διαχείριση των κλειδιών που παράγονται. Μία από τις χαρακτηριστικότερες δυνατότητες του εργαλείου είναι και η δυνατότητα εισαγωγής (import) και εξαγωγής (export) κλειδιών, έτσι ώστε να επιτευχθεί η ανταλλαγή δηµόσιων κλειδιών µε χρήστες µε τους οποίους ο ιδιοκτήτης επιθυµεί να επικοινωνήσει. Παρά το γεγονός ότι η διεπαφή και τα menus είναι πολύ κατατοπιστικά, η τοποθέτηση κάποιων στατικών εξυπηρετητών στους οποίους αποθηκεύονται τα δηµόσια κλειδιά δεν είναι πάντα λειτουργική, διότι πολλοί από αυτούς είτε δεν υφίστανται είτε δε λειτουργούν. PGP tools: Το εργαλείο αυτό παρέχει τις εξής επιλογές: PGP keys: αναλύθηκε παραπάνω Sign: Ψηφιακή υπογραφή αρχείου Encrypt: Κρυπτογράφηση αρχείου Encrypt & Sign: Κρυπτογράφηση και Ψηφιακή υπογραφή αρχείου Decrypt & Verify: Αποκρυπτογράφηση και επικύρωση υπογραφής αρχείου Wipe: Καταστροφή των µη κρυπτογραφηµένων αρχείων PGP tray: Υπηρεσίες κρυπτογράφησης και ψηφιακής υπογραφής του clipboard. Στα αρνητικά του εργαλείου υπάγονται τα εξής: Η εγγενής δυσκολία του PGP σχετικά µε την ανταλλαγή των δηµόσιων κλειδιών. Η ενοποιηµένη υπηρεσία αποκρυπτογράφησης και επικύρωσης υπογραφής αρχείου. Με τον τρόπο αυτό δε δίνεται η δυνατότητα στο χρήστη να έχει διαφορετικό κλειδί για κρυπτογράφηση, αποκρυπτογράφηση και δηµιουργία/επικύρωση ψηφιακών υπογραφών.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
Στα θετικά του εργαλείου υπάγονται τα εξής: Η ευκολία εγκατάστασης. Η πολύ καλή παραθυρική διεπαφή χρήστη – εργαλείου. Η δυνατότητα επιλογής RSA κλειδιού µε µεγάλο µήκος (2048 bits). 4.4 Η προσθήκη των υπηρεσιών αυθεντικότητας και ακεραιότητας στα µηνύµατα ηλεκτρονικού ταχυδροµείου θα πρέπει να είναι διαφανής προς τους τελικούς χρήστες. Αυτό πρακτικά σηµαίνει ότι θα πρέπει να είναι σχεδιασµένη έτσι ώστε να µην επιβαρύνει το χρήστη, τόσο µε επιπλέον διαχειριστικά βάρη όσο και µε επιπλέον γνώσεις, που θα πρέπει να αποκτήσει ώστε να εκπαιδευτεί στη χρήση της. Τα συστήµατα που θα αξιολογηθούν είναι το PGP, το ΡΕΜ και το S/MIME. Τα δύο πρώτα αποτελούν τα πιο διαδεδοµένα συστήµατα ηλεκτρονικού ταχυδροµείου, ενώ το δεύτερο είναι το πρώτο στο οποίο προτάθηκε η χρήση της Υποδοµής ∆ηµόσιου Κλειδιού ως µέσου για τη διασφάλιση µιας υπηρεσίας ηλεκτρονικού ταχυδροµείου. Το PGP αποτελεί το πιο απλό, από πλευράς κατανόησης χρήσης και εγκατάστασης, σύστηµα ηλεκτρονικού ταχυδροµείου. Ενσωµατώνεται σε πολλά γνωστά συστήµατα ηλεκτρονικού ταχυδροµείου, π.χ. Microsoft Outlook, Express. Από διαχειριστικής πλευράς όµως, επιβαρύνει το χρήστη µε το βάρος διαχείρισης των δηµόσιων κλειδιών. Κάτι τέτοιο το κάνει δύσχρηστο για πολύ µεγάλες επικοινωνιακές υποδοµές. Το ΡΕΜ λύνει το πρόβληµα της διαχείρισης των δηµόσιων κλειδιών, αλλά ουσιαστικά δεν έχει υλοποιηθεί και έχει παραµείνει στο στάδιο του προτύπου. Ο λόγος γι’ αυτό είναι η αυστηρή ιεραρχική υποδοµή δηµόσιου κλειδιού που επιβάλλει. Η συγκρότηση µιας τέτοιας αυστηρής ιεραρχίας υποδοµής εµπιστοσύνης έχει αποδειχθεί στην πράξη ανέφικτη. Αντίθετα, το S/MIME κατάφερε να ξεπεράσει τα προβλήµατα των δύο παραπάνω συστηµάτων. Σε σχέση µε το PGP, υπερτερεί εξαιτίας της χρήσης των ψηφιακών πιστοποιητικών Χ.509. Τα ψηφιακά πιστοποιητικά παρέχουν τη µοναδική αντιστοίχιση µεταξύ ενός δηµόσιου κλειδιού και ενός χρήστη και εκδίδονται από έµπιστες οντότητες, τις γνωστές Έµπιστες Τρίτες Οντότητες (ΕΤΟ). Τα πιστοποιητικά είναι δυαδικά αρχεία τα οποία ενσωµατώνονται σε εργαλεία ηλεκτρονικού ταχυδροµείου, π.χ. Web browsers, µε χαρακτηριστική ευκολία, και ο τελικός χρήστης δε χρειάζεται να ανησυχεί για τη διαχείριση των δηµόσιων κλειδιών. Κάθε φορά που παραλαµβάνει ένα µήνυµα από ένα νέο αποστολέα, το πιστοποιητικό του ενσωµατώνε-
227
A™º∞§∂π∞ ¢π∫∆Àø¡
228
ται αυτόµατα στη βάση πιστοποιητικών. Για την επικύρωση του κλειδιού θα πρέπει το πιστοποιητικό της ΕΤΟ, που έχει υπογράψει το πιστοποιητικό ή το πιστοποιητικό κάποιας ιεραρχικά ανώτερής της, να περιλαµβάνεται ή να περιληφθεί στη βάση των πιστοποιητικών του παραλήπτη του µηνύµατος. Το πρόβληµα αυτό, µερικώς, λύνεται µε τον τρόπο που περιγράφεται στην επόµενη παράγραφο. Σε σχέση µε το ΡΕΜ, το S/MIME υπερτερεί, διότι δεν απαιτείται η αυστηρή ιεραρχία εµπιστοσύνης που χρειάζεται το ΡΕΜ για να λειτουργήσει. Για να γίνει η επικύρωση ενός πιστοποιητικού, θα πρέπει το πιστοποιητικό της ΕΤΟ, που έχει υπογράψει το πιστοποιητικό ή το πιστοποιητικό κάποιας ιεραρχικά ανώτερής της, να περιλαµβάνεται ή να περιληφθεί στη βάση των πιστοποιητικών του παραλήπτη του µηνύµατος. Το πρόβληµα αυτό πρακτικά έχει λυθεί µε την από διανοµής προσθήκη των πιστοποιητικών των γνωστότερων ΕΤΟ στα πιο γνωστά εργαλεία ηλεκτρονικού ταχυδροµείου. 4.5 Όλες οι µέθοδοι προστασίας του λογισµικού από αντιγραφή στηρίζονται τελικά σε κάποιο µοναδικό χαρακτηριστικό του δίσκου του υπολογιστή, µέσω του οποίου επιχειρείται πρόσβαση σε ένα κοµµάτι λογισµικού. Αυτό όµως δεν είναι αρκετό για την προστασία του λογισµικού, αφού µπορεί να παρακαµφθεί, αν υπάρξει πρόσβαση στον κώδικα όσο αυτός βρίσκεται στον επεξεργαστή ή στη µνήµη. Τα πράγµατα έχουν γίνει χειρότερα µε την έκρηξη στις τεχνολογίες επικοινωνιών, διότι αυξήθηκε η µεταφερσιµότητα των προϊόντων λογισµικού. Αποτέλεσµα αυτού του γεγονότος είναι η δυνατότητα πρόσβασης του υποψήφιου πειρατή στο λογισµικό όχι πια από ένα µόνο σηµείο, αλλά από πολλά σηµεία, σε όλο τον κόσµο. Βέβαια, υπάρχουν εφαρµογές κλειστής φιλοσοφίας, που έχουν καταφέρει να περιορίσουν την αντιγραφή του λογισµικού. Τα κύρια χαρακτηριστικά όµως των εφαρµογών αυτών είναι τα εξής: 1. Προορίζονται για εξειδικευµένες χρήσεις (π.χ. οι ανάγκες µιας ασφαλιστικής εταιρείας) και δεν απευθύνονται στο ευρύτερο κοινό. Εποµένως, το πλήθος των χρηστών της εφαρµογής είναι περιορισµένο. 2. Χρησιµοποιούν συνδυασµούς τεχνικών αυθεντικοποίησης (αποτύπωµα δίσκου, αυθεντικοποίηση θέσης από την οποία γίνεται πρόσβαση στο λογισµικό µέσω VPN, χρήση συνθηµατικών ή ιδιωτικών κλειδιών κτλ.). Έτσι όµως αυξάνεται δραµατικά το κόστος της εφαρµογής. Κάτι τέτοιο είναι, βέβαια, ανεκτό για την προστασία του λογισµικού που αναπτύσσει εσωτερικά µια εταιρεία για τις εξειδικευµένες ανάγκες της, αλλά θα ήταν αντιοικονοµικό για µια εταιρεία ανάπτυξης λογισµικού κατάλληλου για χρήση από µια ευρεία µάζα χρηστών µε πολλές και διαφορετικές ανάγκες χρήσης.
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
3. Πολλές φορές, ακόµα και η διάθεση του µηχανισµού πρόσβασης (του ίδιου του υπολογιστή) γίνεται από την ίδια την εταιρεία κατασκευής. Κάτι τέτοιο, βέβαια, είναι αδύνατον σ’ ένα περιβάλλον παγκόσµιου ιστού. Πιθανόν η λύση να βρίσκεται στην αποθήκευση κάποιου µοναδικού χαρακτηριστικού σε ένα εξωτερικό του µηχανισµού πρόσβασης αντικείµενο (π.χ. smartcard), το οποίο όµως να έχει τη δυνατότητα πραγµατοποίησης υπολογισµών σ’ ένα µικροεπεξεργαστή που βρίσκεται στο αντικείµενο και όχι στον επεξεργαστή του υπολογιστή πρόσβασης. Τέτοια αντικείµενα υπάρχουν διαθέσιµα στο εµπόριο. Η χρήση όµως τέτοιων αντικειµένων αυξάνει το κόστος της εφαρµογής κατά πολύ (κόστος του αντικειµένου, κόστος ειδικού περιφερειακού τεχνικού εξοπλισµού για την επικοινωνία του αντικειµένου µε τον υπολογιστή). 4.6 Η προστασία του λογισµικού αυξάνει πράγµατι τα κέρδη της βιοµηχανίας λογισµικού, διότι θεωρητικά κανείς δεν µπορεί να αποκτήσει ένα πρόγραµµα λογισµικού δωρεάν. Πρακτικά όµως τα πράγµατα είναι διαφορετικά. Πρώτον, όπως αναπτύχθηκε στη ∆ραστηριότητα 4.5, υπάρχουν εφαρµογές που προστατεύονται από αντιγραφή, αλλά το κόστος τους είναι υπερβολικό σε σχέση µε εκείνο εφαρµογών που δε χρησιµοποιούν τόσο πολύπλοκους µηχανισµούς προστασίας. Κατ’ αυτό τον τρόπο, πιθανοί χρήστες αποθαρρύνονται από την αγορά του λογισµικού και περιορίζονται σε απολύτως αναγκαίες εφαρµογές, που συνήθως είναι περιορισµένης χρήσης. ∆εύτερον, είναι κοινή πρακτική των εταιρειών παραγωγής λογισµικού να µη θέλουν να εµποδίσουν την ελεύθερη αντιγραφή εφαρµογών κοινής χρήσης (π.χ. επεξεργαστές κειµένου, Web browsers, εφαρµογές ηλεκτρονικού ταχυδροµείου). Αυτό οφείλεται στο γεγονός ότι µε την ελεύθερη, ή χαµηλού κόστους, διανοµή τέτοιου είδους εφαρµογών οι χρήστες αποκτούν πελατειακή σχέση µε τις συγκεκριµένες εταιρείες, συνηθίζουν τον τρόπο χρήσης των προγραµµάτων των συγκεκριµένων εταιρειών, επισκέπτονται συχνά το site της εταιρείας για ενηµέρωση, λαµβάνουν διαφηµιστικά µηνύµατα από τη συγκεκριµένη εταιρεία και υποσυνείδητα αποµακρύνονται από τη χρήση άλλων ανταγωνιστικών προγραµµάτων. Τέτοια παραδείγµατα υπάρχουν πολλά, π.χ. MS–Word, Internet Explorer, Microsoft Outlook. Αντίθετα, η χρήση εξειδικευµένων εφαρµογών αποτελεί τον κύριο στόχο προστασίας των εταιρειών ανάπτυξης λογισµικού. Έχοντας πια πρόσβαση στους χρήστες, οι εταιρείες µπορούν να πουλήσουν, ίσως και ακριβότερα, τις εξειδικευµένες αυτές εφαρµογές.
229
A™º∞§∂π∞ ¢π∫∆Àø¡
230
4.7 Για την αξιολόγηση ενός συστήµατος ηλεκτρονικών πληρωµών µπορούµε να χρησιµοποιήσουµε τα παρακάτω κριτήρια: Κ1: Ο τύπος του µεταφερόµενου χρήµατος (πιστωτική κάρτα, µετρητά κτλ.). Κ2: Αν το σύστηµα είναι Online ή Offline. Κ3: Τύπος µέσου επικοινωνίας (αν είναι κατάλληλο για ανοικτό ή κλειστό δίκτυο, αν απαιτείται η χρήση ειδικού hardware). Κ4: Ο ρόλος της τρίτης οντότητας (αν υπάρχει). Κ5: ∆ιανοµή κινδύνων (αν όλοι οι συµµετέχοντες έχουν εξασφαλιστεί σε περιπτώσεις προσπάθειας εξαπάτησης). Κ6: Μέτρα ασφάλειας σχετικά µε την ιδιωτικότητα, την ανωνυµία και την ακεραιότητα των µεταδιδόµενων δεδοµένων. Κ7: Εξάρτηση από συγκεκριµένο νόµισµα. Κ8: Καταλληλότητα για µικροπληρωµές ή µεγάλες πληρωµές. Κ9: Καταλληλότητα για συγκεκριµένους τύπους αγαθών. Τα συστήµατα ηλεκτρονικού χρήµατος που θα εξετάσουµε είναι τα παρακάτω: CAFE, Ecash, Mondex, CyberCash και Ravensburg’s GeldKarte. Όπου στον πίνακα υπάρχει κενό, η υπάρχουσα τεκµηρίωση δεν παρέχει την αντίστοιχη πληροφορία. CAFE
Ecash
Mondex
CyberCash
Ravensburg’s GeldKarte
Κ1 Μετρητά
Μετρητά
Μετρητά
Μετρητά
Μετρητά
Κ2 Offline
online
Offline
Offline
Offline
Κ3 Κλειστά δίκτυα,
Internet
Κλειστά δίκτυα,
Χρήση ειδικής κάρτας
ηλεκτρονικά
ηλεκτρονικά
πορτοφόλια
πορτοφόλια
Κ4 Όχι
Όχι
Ναι (έλεγχος ροής
Ναι
Όχι
του χρήµατος από την τράπεζα Κ5 Ο αγοραστής
Ο αγοραστής
µπορεί να αποδείξει
µπορεί να αποδείξει
µια συναλλαγή
µια συναλλαγή
Κ6 Ανωνυµία αγοραστή
Χρήση
Καταγραφή στοιχείων Χρήση κρυπτογραφίας Πλήρης ανωνυµία
κρυπτογραφίας
αγοραστή
δηµόσιου κλειδιού
δηµόσιου κλειδιού χωρίς πιστοποιητικά
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
231
Ναι
Κ7 Κ8 Κ9 Ανεξάρτητο αγαθού
Ανεξάρτητο αγαθού Ανεξάρτητο αγαθού
Ανεξάρτητο αγαθού Ανεξάρτητο αγαθού
4.8 Για τη δραστηριότητα αυτή θα χρησιµοποιήσουµε τα κριτήρια που ορίσαµε στη ∆ραστηριότητα 7. Τα συστήµατα ηλεκτρονικών επιταγών που θα εξετάσουµε είναι τα παρακάτω: NetCheque, eCheque και Mandate. Όπου στον πίνακα υπάρχει κενό, η υπάρχουσα τεκµηρίωση δεν παρέχει την αντίστοιχη πληροφορία. NetCheque
Echeque
Mandate
Κ1
Επιταγή
Επιταγή
Επιταγή
Κ2
Online
Offline
Online
Κ3
Internet, Αυθεντικοποίηση µε Kerberos
Internet, smartcard
Internet, smartcard
Κ4
Όχι
Clearing από τράπεζα
Όχι
Κ5
Ναι
Ναι
Ναι
Κ6
Ανωνυµία χρήστη µε χρήση NetCash
Ναι
Χρήση ψηφιακών πιστοποιητικών
Κ7
Όχι
Όχι
Όχι
Κ8
Μεγάλες
Μεγάλες
Μεγάλες
Κ9
Ανεξάρτητο αγαθού
Ανεξάρτητο αγαθού
Ανεξάρτητο αγαθού
4.9 Για τη δραστηριότητα αυτή θα χρησιµοποιήσουµε τα κριτήρια που ορίσαµε στη ∆ραστηριότητα 7. Τα συστήµατα µικροπληρωµών που θα εξετάσουµε είναι τα παρακάτω: MilliCent, PayWord, MicroMint και CyberCoin. Όπου στον πίνακα υπάρχει κενό, η υπάρχουσα τεκµηρίωση δεν παρέχει την αντίστοιχη πληροφορία.
A™º∞§∂π∞ ¢π∫∆Àø¡
232
MiliCent
PayWord
MicroMint
Κ1
Μετρητά (scrip)
Μετρητά (paywords)
Μετρητά
Κ2
Online
Offline
Offline
Κ3
Internet, Χρήση κάποιου
Internet
CyberCoin
Online Internet, ηλεκτρονικό
άλλου e–cash συστήµατος
πορτοφόλι CyberCash,
για αγορά του scrip
για χρήστες εκτός Η.Π.Α απαραίτητη χρήση πιστωτικής κάρτας
Κ4
Ο broker του scrip
Κ5
Ο πωλητής µπορεί να
Ο broker του payword
Broker
Τράπεζα
Μικρής κλίµακας απάτες
αποποιηθεί συναλλαγή Κ6
∆εν υπάρχει ανωνυµία
∆εν υπάρχει ανωνυµία
∆εν υπάρχει ανωνυµία
του αγοραστή,
του αγοραστή,
του αγοραστή,
Χρήση hash functions
χρήση hash functions
όχι κρυπτογραφία δηµόσιου
Πλήρης ανωνυµία
κλειδιού, χρήση hash functions US$
Κ7 Κ8 Κ9
Ανεξάρτητο
Ανεξάρτητο
µικροαγαθών
µικροαγαθών
Ανεξάρτητο µικροαγαθών
Ανεξάρτητο µικροαγαθών
4.10 Ο συγχρονισµός των ρολογιών στο DAP είναι απαραίτητος για την αποφυγή µιας επίθεσης επανάληψης µηνυµάτων SNMP. Κάθε µήνυµα του DAP φέρει το πεδίο partyAuthclock, το οποίο χρησιµοποιείται για να αποθηκεύσει την τιµή του ρολογιού του αποστέλλοντος µέρους (party). Το λαµβάνον SNMP µέρος Β θεωρεί ως αυθεντικό ένα µήνυµα που προέρχεται από το µέρος Α για το οποίο κατά τη στιγµή της µετάδοσης ισχύει: PartyAuthclock.a(Α) = n και PartyAuthclock.a(B) = n όπου PartyAuthclock.a(Α) η ώρα του ρολογιού του µέρους Α έτσι όπως αυτή έχει αποθηκευτεί στο σύστηµα Α και PartyAuthclock.a(B) η ώρα του ρολογιού του µέρους Α έτσι όπως αυτή έχει αποθηκευτεί στο σύστηµα Β. Πρακτικά, µια τέτοια ισότητα δεν µπορεί να ισχύσει, επειδή το πρόβληµα του συγχρονισµού των ρολογιών παραµένει θεωρητικά άλυτο. Από τη στιγµή µετάδοσης
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
233
του µηνύµατος από το µέρος Α στο µέρος Β µεσολαβεί κάποιος χρόνος µετάδοσης, έστω k. Στην πράξη το λαµβάνον SNMP µέρος Β θεωρεί ως αυθεντικό ένα µήνυµα που προέρχεται από το µέρος Α για το οποίο κατά τη στιγµή της µετάδοσης ισχύει: AuthTimestamp + partyAuthLifetime.a > n + k ή n + partyAuthLifetime.a > n + k ή k < partyAuthLifetime.a όπου AuthTimestamp είναι η χρονοσφραγίδα του µηνύµατος έτσι όπως παράχθηκε στο σύστηµα του αποστέλλοντος µέρους και partyAuthLifetime.a είναι η διάρκεια ζωής του µηνύµατος µέσα στο δίκτυο έτσι όπως έχει αποθηκευτεί στο σύστηµα Α. Πρακτικά οι τρεις παραπάνω συνθήκες σηµαίνουν ότι η καθυστέρηση µετάδοσης είναι µικρότερη από τη διάρκεια ζωής του µηνύµατος. Όταν το ρολόι του µέρους Β καθυστερεί, τότε θα ισχύει: PartyAuthclock.a(B) = n – j όπου j η καθυστέρηση του ρολογιού. Το µέρος Β θα θεωρήσει αυθεντικό το µήνυµα αν k < partyAuthLifetime.a – j Η παραπάνω συνθήκη σηµαίνει ότι ο έλεγχος αυθεντικοποίησης έχει γίνει πιο χαλαρός, λόγω της αύξησης του χρόνου ζωής του µηνύµατος (κατά j), ώστε να ενσωµατωθεί η διαφορά των δύο ρολογιών. Η συνθήκη αυτή µπορεί να οδηγήσει σε αποδοχή λανθασµένων µηνυµάτων (false acceptance). Εποµένως, στο χρονικό διάστηµα k – j ένας εισβολέας µπορεί να υποκλέψει ένα αυθεντικοποιηµένο µήνυµα και να το ξαναστείλει (replay) αυτούσιο στο µέρος Β, οπότε το τελευταίο θα το αποδεχτεί ως αυθεντικό. 5.1 Μια τέτοια περιγραφή θα µπορούσε να είναι η εξής: SS Æ CIS: U, TA CIS Æ SS: {KCIS}KSS, CIS, {KCIS, SS}KCIS,KDS, AUCSS SS Æ KDS: {KCIS, SS}KCIS,KDS KDS Æ SS: {KCIS}KSS,TA, {KSS,TA, SS} KKDS, TA SS Æ TA: {KSS,TA, SS} KKDS, TA, {E, AUCSS} KSS,TA
A™º∞§∂π∞ ¢π∫∆Àø¡
234
5.2 Το SESAME αναπτύχθηκε στα πλαίσια ενός Ευρωπαϊκού έργου, του οποίου κύριος στόχος ήταν η παραγωγή τεχνολογιών κατάλληλων για αυθεντικοποίηση χρηστών και έλεγχο πρόσβασης σε κατανεµηµένα περιβάλλοντα. Το πρότυπο έχει πολλές οµοιότητες µε το σύστηµα KERBEROS v5. 1. Οι σκοποί που εξυπηρετούν τα εισιτήρια στο KERBEROS και τα πιστοποιητικά στο SESAME είναι παρόµοιοι και σχετίζονται µε την αυθεντικοποιηµένη πρόσβαση χρηστών ή εφαρµογών στους πόρους ενός γεωγραφικά κατανεµηµένου συστήµατος. Βασική διαφορά των δύο αυτών µηχανισµών είναι ότι το πιστοποιητικό, εκτός από την αυθεντικοποίηση χρηστών ή εφαρµογών, προσφέρει και έλεγχο πρόσβασης ενός χρήστη ή µιας εφαρµογής στους πόρους ενός κατανεµηµένου συστήµατος. Στο SESAME αυτό επιτυγχάνεται µε το πιστοποιητικό χαρακτηριστικών προνοµίων, το οποίο ουσιαστικά περιορίζει τον χρήστη σε ένα συγκεκριµένο σύνολο ενεργειών που µπορεί να εκτελέσει σε έναν συγκεκριµένο πόρο σε µια συγκεκριµένη χρονική στιγµή. Αντίθετα, η έννοια του ελέγχου πρόσβασης απουσιάζει από το KERBEROS και τα εισιτήρια που χρησιµοποιεί. 2. Ο τρόπος µε τον οποίο εξασφαλίζεται η προσπέλαση ενός εξυπηρετητή ή µιας εφαρµογής είναι παρόµοιος στα δύο συστήµατα. Αρχικά ένας εξυπηρετητής αυθεντικοποίησης εκδίδει ένα εισιτήριο/πιστοποιητικό προς τον πελάτη/αντιπρόσωπο, το οποίο στην συνέχεια µπορεί να παρουσιαστεί απ’ αυτόν σε µια υπηρεσία έκδοσης εισιτηρίων/πιστοποιητικών, τα δε εκδιδόµενα απ’ αυτήν εισιτήρια/πιστοποιητικά µπορούν να παρουσιαστούν από τον πελάτη/αντιπρόσωπο σε έναν εξυπηρετητή µιας εφαρµογής για την πρόσβαση σε αυτά. Βασική διαφορά είναι ότι στο σύστηµα KERBEROS η υπηρεσία αυθεντικοποίησης διατηρεί στη βάση της τα συνθηµατικά των χρηστών, ενώ η υπηρεσία αυθεντικοποίησης στο σύστηµα SESAME διατηρεί τα δηµόσια κλειδιά, µε τα οποία κρυπτογραφούνται τα συνθηµατικά των χρηστών. Το χαρακτηριστικό αυτό δίνει ένα προβάδισµα, από πλευράς ασφάλειας, στο σύστηµα SESAME, καθώς σε περίπτωση παραβίασης της βάσης της υπηρεσίας αυθεντικοποίησης δεν αποκαλύπτονται τα πραγµατικά συνθηµατικά των χρηστών, όπως συµβαίνει στο KERBEROS, αλλά τα δηµόσια κλειδιά, τα οποία, ούτως ή άλλως, αποτελούν δηµόσια προσβάσιµες πληροφορίες. 5.3 Οι δροµολογητές φιλτραρίσµατος πακέτων µπορούν να έχουν πρόσβαση µόνο στο επίπεδο δικτύου. Εποµένως, µόνο η κρυπτογράφηση σύνδεσης µπορεί να λάβει χώρα από ένα δροµολογητή φιλτραρίσµατος πακέτων. Αντίθετα, η κρυπτογράφηση απ’
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
235
άκρη σ’ άκρη δεν µπορεί να παρασχεθεί, διότι αυτού του είδους η υπηρεσία απαιτεί πρόσβαση σε ανώτερα επίπεδα (µεταφοράς, παρουσίασης, εφαρµογής). 5.4 Η πολιτική ολικής άρνησης (deny all) είναι η πιο ασφαλής για τη σχεδίαση ενός αναχώµατος (Firewall). Σύµφωνα µε την πολιτική αυτή, ό,τι ρητά δεν επιτρέπεται, τότε απαγορεύεται. Εποµένως, οι αλληλεπιδράσεις µεταξύ εσωτερικού δικτύου και διαδικτύου που θα πρέπει να επιτραπούν θα πρέπει να είναι οι απολύτως απαραίτητες για τις ανάγκες των εσωτερικών χρηστών του εσωτερικού δικτύου. Τέτοιες είναι η υπηρεσία ηλεκτρονικού ταχυδροµείου (port 23) και η υπηρεσία παγκόσµιου ιστού (WWW, port 80). Εποµένως, όλες οι υπόλοιπες θύρες επικοινωνίας θα πρέπει να είναι κλειστές (απαγορεύονται). Μια πύλη επιπέδου εφαρµογής µε διαµόρφωση υποδικτύου– παραπετάσµατος µπορεί να χρησιµοποιηθεί για την προστασία του εσωτερικού δικτύου. Η διαµόρφωση υποδικτύου εξασφαλίζει ότι, ακόµα και αν ένας εισβολέας καταφέρει να αποκτήσει πρόσβαση σε µια υπολογιστική µονάδα που προσφέρει µια από τις παραπάνω υπηρεσίες (π.χ. Web server) δε θα µπορέσει να εισέλθει στο υπόλοιπο δίκτυο. Μια τέτοια διαµόρφωση φαίνεται στο παρακάτω σχήµα.
ROUTER
INTERNET
MODEM
DMZ Domain:1 FIREWALL application level gateway Ethernet
Domain:3 MAIL SERVER,DHCP SERVER
Domain:2 WEB SERVER,DNS SERVER
A™º∞§∂π∞ ¢π∫∆Àø¡
236
5.5 Τα αναχώµατα εξασκούν ελάχιστους ελέγχους στο περιεχόµενο των µηνυµάτων που λαµβάνουν. Για τον λόγο αυτό ο έλεγχος για ύπαρξη ιοµορφικού λογισµικού πρέπει να γίνεται στο εσωτερικό δίκτυο. Βέβαια, υπάρχουν κάποιες εκδόσεις εµπορικών προϊόντων αναχωµάτων, που µπορούν να συνεργαστούν µε εφαρµογές ανίχνευσης ιοµορφικού λογισµικού, έτσι ώστε ο έλεγχος για την ύπαρξη ιοµορφικού λογισµικού να λαµβάνει χώρα τη στιγµή εισόδου του πακέτου στο δίκτυο του οργανισµού. Ο έλεγχος αυτός, βέβαια, γίνεται από την εφαρµογή ανίχνευσης ιοµορφικού λογισµικού και όχι από το ανάχωµα. 5.6 Ακολουθεί µια συνοπτική κατάταξη των πιο γνωστών δικτυακών αναχωµάτων. Αν το θέµα σας ενδιαφέρει, µπορείτε να ανατρέξετε στην προτεινόµενη ιστοσελίδα και να εξετάσετε περισσότερα συστήµατα. 1. Cisco’s PIX Firewall: Το δικτυακό αυτό ανάχωµα είναι µια πύλη επιπέδου εφαρµογής που χρησιµοποιεί τις τεχνικές stateful inspection και cut through proxy. Η πρώτη αναφέρεται στη δυνατότητα καταγραφής όλων των δραστηριοτήτων που συµβαίνουν κατά τη διάρκεια µιας σύνδεσης, ενώ η δεύτερη στην αποκατάσταση της απ’ ευθείας σύνδεσης µεταξύ πελάτη και εξυπηρετητή, χωρίς την παρεµβολή του δικτυακού αναχώµατος, κατόπιν της αρχικής αυθεντικοποίησης του χρήστη. Η προτεινόµενη από τη Cisco διαµόρφωση είναι το υποδίκτυο– παραπέτασµα. 2. Guardian Firewall – 5: Το προϊόν αυτό είναι µια πύλη επιπέδου εφαρµογής. Θεωρείται ως ένα από τα καλύτερα προϊόντα από πλευράς διεπαφής χρήστη. 3. Gauntlet Internet Firewall: Το δικτυακό αυτό ανάχωµα είναι µια πύλη επιπέδου εφαρµογής που χρησιµοποιεί αντιπροσώπους (agents) για την εγκατάσταση συνδέσεων. Μπορεί να χρησιµοποιηθεί και για τη χρήση µηχανισµών ισχυρής αυθεντικοποίησης. 4. ANS InterLock: Το δικτυακό αυτό ανάχωµα είναι µια πύλη επιπέδου εφαρµογής που µπορεί να χρησιµοποιηθεί για τον έλεγχο πρόσβασης σε διαφορετικά υποδίκτυα (segmanets) ενός ΙΡ δικτύου. Επίσης, χρησιµοποιεί ασφαλείς εκδόσεις γνωστών υπηρεσιών (telnet, FTP, SMTP) για την παροχή απ’ άκρη σ’ άκρη κρυπτογράφησης. 5. Black Hole: Το δικτυακό αυτό ανάχωµα αποτελεί ένα συνδυασµό (hybrid) τύπου πύλης κυκλώµατος και πύλης επιπέδου εφαρµογής. Ο σχεδιασµός του στηρίζε-
A ¶ ∞ ¡ ∆ ∏ ™ ∂ π ™ ¢ ƒ∞ ™ ∆ ∏ ƒ π √ ∆ ∏ ∆ ø ¡
ται στην πολιτική ολικής άρνησης, και µπορεί να χρησιµοποιηθεί είτε σε διαµορφώσεις παραπετάσµατος µε απλή έπαλξη για την παροχή διάφανων (transparent) υπηρεσιών είτε σε διαµόρφωση υποδικτύου– παραπετάσµατος για τη δηµιουργία ιδιωτικού δικτύου «αόρατου» από το Internet. 6. Eagle Enterprise: Το προϊόν αυτό είναι ανάχωµα επιπέδου εφαρµογής που µπορεί να χρησιµοποιηθεί για τη δηµιουργία εικονικών νοητών δικτύων. Η βέλτιστη χρήση του γίνεται µε τη διαµόρφωση υποδικτύου–παραπετάσµατος υποδικτύου. 7. Guardian: Το προϊόν αυτό είναι ανάχωµα επιπέδου εφαρµογής και χρησιµοποιείται τόσο µε διαµορφώσεις παραπετάσµατος µε απλή έπαλξη όσο και µε διαµορφώσεις υποδικτύου– παραπετάσµατος. 8. SecureIT: Το δικτυακό αυτό ανάχωµα αποτελεί ένα συνδυασµό τύπου πύλης κυκλώµατος και πύλης επιπέδου εφαρµογής µε χρήση αντιπροσώπων εξυπηρετητών (proxy servers). Έχει σχεδιαστθεί µε βάση την πολιτική ολικής άρνησης και η χρήση του βελτιστοποιείται µε τη διαµόρφωση υποδικτύου– παραπετάσµατος. 5.7 Aκολουθεί µια συνοπτική κατάταξη των πιο γνωστών συστηµάτων ανίχνευσης εισβολών. Αν το θέµα σας ενδιαφέρει, µπορείτε να ανατρέξετε στην προτεινόµενη ιστοσελίδα και να εξετάσετε περισσότερα συστήµατα. 1. AID (Adaptive Intrusion Detection system): Το AID είναι ένα σύστηµα ανίχνευσης κατάχρησης πόρων που χρησιµοποιεί ένα έµπειρο σύστηµα για την ανίχνευση προσβολών. Είναι σύστηµα το οποίο λειτουργεί σε δίκτυο και στηρίζεται στην αρχιτεκτονική πελάτη – εξυπηρετητή. 2. ALVA (Audit Log Viewer and Analyzer Tool): Αυτό είναι ένα σύστηµα ανίχνευσης ανώµαλης συµπεριφοράς που χρησιµοποιεί τεχνικές στατιστικής ανάλυσης για τον χαρακτηρισµό της συµπεριφοράς του χρήστη. Ο χαρακτηρισµός της συµπεριφοράς στηρίζεται σε µια σειρά παραµέτρων, όπως σύνολο εντολών που πληκτρολογεί ο χρήστης, επιτυχηµένες και αποτυχηµένες προσπάθειες εκτέλεσης εντολών, συχνότητα συµβάντων κ.λπ. 3. DIDS (Distributed Intrusion detection System): Αυτό είναι ένα σύστηµα ανίχνευσης ανώµαλης συµπεριφοράς που χρησιµοποιεί τεχνικές στατιστικής ανάλυσης για τον χαρακτηρισµό της συµπεριφοράς του χρήστη. Η καινοτοµία του συστήµατος αυτού οφείλεται στην δυνατότητά του να ανιχνεύει επιθέσεις όχι µόνο σε τοπικά δίκτυα αλλά και σε δίκτυα ευρείας περιοχής.
237
238
A™º∞§∂π∞ ¢π∫∆Àø¡
4. EMERALD (Event Monitoring Enabling Response to Anomalous Live Disturbances): Αυτό είναι ένα σύστηµα ανίχνευσης ανώµαλης συµπεριφοράς που χρησιµοποιεί την τεχνολογία των έµπειρων συστηµάτων σε συνδυασµό µε τεχνικές στατιστικής ανάλυσης για τη δηµιουργία προφίλ κανονικών συµπεριφορών των χρηστών ενός δικτύου. Κύριο χαρακτηριστικό του η επεκτασιµότητα σε µεγάλα δίκτυα. Αναπτύχθηκε από το DARPA και ουσιαστικά αποτελεί εξέλιξη δύο άλλων µεγάλων έργων ανίχνευσης προσβολών: του IDES και του NIDES. 5. IDES (Intrusion Detection Expert System): Το IDES είναι ένα σύστηµα ανίχνευσης ανώµαλης συµπεριφοράς χρηστών πραγµατικού χρόνου και χρησιµοποιεί την τεχνολογία των έµπειρων συστηµάτων. 6. IDIOT (Intrusion Detection In Our Time): Το IDIOT είναι ένα σύστηµα ανίχνευσης κατάχρησης πόρων που χρησιµοποιεί δίκτυα Petri για την αντιστοίχιση µιας συµπεριφοράς µε κάποια που έχει ήδη αναγνωριστθεί ως επίθεση. 7. MIDAS (Multics Intrusion Detection and Alerting System): Το σύστηµα αυτό αναπτύχθηκε από την NCSA για να προσφέρει αναγνώριση κατάχρησης πόρων σε πραγµατικό χρόνο. Η κύρια τεχνική που χρησιµοποιεί για την ταξινόµηση της συµπεριφοράς του συστήµατος ως κανονικής ή όχι είναι η στατιστική ανάλυση. 8. NADIR (Network Anomaly Detection and Intrusion Reporter): Το έµπειρο αυτό σύστηµα ανίχνευσης κατάχρησης πόρων αναπτύχθηκε για την ανίχνευση εισβολών σε µεγάλα δίκτυα. Επιπλέον, παρακολουθεί και τις διαδικασίες αυθεντικοποίησης που λαµβάνουν χρήση σε ένα µεγάλο δίκτυο (χρησιµοποιεί το σύστηµα KERBEROS).
BÈ‚ÏÈÔÁÚ·ÊÈΤ˜ ÚÔÙ¿ÛÂȘ Τα περισσότερα βιβλία της διεθνούς βιβλιογραφίας που ασχολούνται µε το αντικείµενο της ασφάλειας δικτύων αναλώνουν το µεγαλύτερο µέρος τους στο αντικείµενο της κρυπτογραφίας. Το γεγονός αυτό δεν είναι τόσο παράξενο, αφού η κρυπτογραφία αποτελεί πράγµατι το κυριότερο µέσο εξασφάλισης δικτύων, αλλά όχι, όπως θα είχατε την ευκαιρία να διαπιστώσετε, το µοναδικό. Το βιβλίο του Rolf Oppliger, Internet and Intranet Security, αποτελεί ένα από τα λίγα που ξεφεύγει από τον κανόνα αυτό. Η δοµή του προσοµοιάζει πολύ µε τη δοµή του βιβλίου που κρατάτε και το συνιστώ ανεπιφύλακτα ως πηγή συµπληρωµατικών πληροφοριών. Επίσης, το βιβλίο του Warwick Ford, Computer Communications Security, ξεφεύγει σχετικά από τον κανόνα. Τα βιβλία του William Stallings, Network and Internetwork Security: Principles and Practice, και Cryptography and Network Security: Principles and Practice, (το δεύτερο είναι η επαυξηµένη και αναθεωρηµένη έκδοση του πρώτου), είναι επίσης χρήσιµα συµπληρώµατα µελέτης, ιδιαίτερα όσον αφορά το αντικείµενο της κρυπτογραφίας. Το ίδιο ισχύει και για το βιβλίο των Charlie Kaufman, R. Perlman & M. Speciner, Network Security: Private Communication in a Public World. Το βιβλίο του Sead Muftic, Security Mechanisms for Computer Networks, καθώς και η συνέχειά του, των Sead Muftic, Ahmed Patel & Peter Sanders, Security Architecture for Open Distributed Systems, αναφέρονται περισσότερο στο µοντέλο ασφάλειας OSI, όπως και το βιβλίο του Michael Purser, Secure Data Networking, το οποίο είναι ένα καλό, συνοπτικό, συµπληρωµατικό βοήθηµα. Τα βιβλία των Dieter Gollmann, Computer Security, Charles Pfleeger, Security in Computing, και Rita Summers, Secure Computing: Threats and Safeguards, περιέχουν κεφάλαια που αναφέρονται συνοπτικά σε ασφάλεια δικτύων. Τέλος, τα βιβλία των Andrew Tanenbaum, Computer Networks, (παλιό αλλά πάντα κλασικό), και Θεόδωρου Αποστολόπουλου, ∆ίκτυα Υπολογιστών, συνιστώνται για όσους θέλουν να ξεσκονίσουν ή να αυξήσουν τις γνώσεις τους στο αντικείµενο των δικτύων γενικότερα. Eνδεχόµενα γνωστικά κενά στην κρυπτογραφία µπορούν να καλυφθούν ανατρέχοντας στο βιβλίο του Bασίλη Zορκάδη, Kρυπτογραφία.
A™º∞§∂π∞ ¢π∫∆Àø¡
240
BÈ‚ÏÈÔÁÚ·Ê›· ÂÏÏËÓÈ΋ 1. «Αύξηση του ηλεκτρονικού εµπορίου στην E», ΤΟ ΒΗΜΑ, 18 Οκτωβρίου 1998. 2. Αποστολόπουλος Θ., ∆ίκτυα Υπολογιστών, Αθήνα, 1994. 3. Zορκάδης B, Kρυπτογραφία, EAΠ, υπό έκδοση 4. Χτούρη Σ., Μεταβιοµηχανική κοινωνία και η κοινωνία της πληροφορίας, Αθήνα, Ελληνικά Γράµµατα, 1997.
BÈ‚ÏÈÔÁÚ·Ê›· ÍÂÓfiÁψÛÛË 1. Bangemann Committee, «Europe and the Global Information Society. Recommendations to the European Council», CORDIS focus, Supplement 2, 15 July 1994. 2. Birch D., «Smart Solutions for Net Security», Telecommunications, April 1998, pp. 53–63. 3. Cheswick W. & Bellovin S., Firewalls and Internet Security: Repelling the Wily Hacker, Addison–Wesley, 1994. 4. Denning D. E., Denning P. J., Internet Besieged, ACM Press, 1998. 5. Dowd P. & McHenry J. T., «Network Security: It’s time to take it seriously», IEEE Computer, Vol. 31, no. 9, September 1998, pp. 24–29. 6. Ford W., Computer Communications Security, Prentice Hall PTR, Englewood Cliffs, 1994. 7. Garfinkel S. & Spafford G., Practical Unix and Internet Security, O’Reilly, 1996. 8. Ghosh A. K., E–Commerce Security, John Wiley & Sons, 1998. 9. Gollmann D., Computer Security, J. Wiley & Sons, 1999. 10.Higgins R. & Woods R., «The business of the Internet», Telecommunications, April 1998, pp. 39–47. 11.Howard J. D., An analysis of security incidents on the Internet 1989–1995, Ph. D. Thesis, Carnegie Mellon University, Pittsburgh, 1997. 12.ISO 7498–2, OSI/RM Security Architecture. 13.Katsikas S. K., Gritzalis D. and Spirakis P., «Attack modelling in open network environments», in G. Pernul and P. Horster (Eds.) Communications and Multimedia Security II, Chapman & Hall, 1996.
B π µ § π √ ° ƒ∞ º π ∂ ™ ¶ ƒ √ ∆∞ ™ ∂ π ™
14.Kaufman C., Perlman R. & Speciner M., Network Security: Private Communication in a Public World, Prentice Hall, 1995. 15.Kou W., Networking Security and Standards, Kluwer Academic Publishers, 1997. 16.Loeb L., Secure Electronic Transactions, Artech House, 1998. 17.Meinel C. P., «How Hackers Break In … and How They Are Caught», Scientific American, October 1998, pp. 70–77. 18.Muftic S., Security Mechanisms for Computer Networks, Ellis Horwood, 1989. 19.Muftic S., Patel A. & Sanders P., Security Architecture for Open Distributed Systems, John Wiley & Sons, 1994. 20.Office of Tehnology Assessment, Congress of the United States, Issue Update on Information Security and Privacy in Network Environments, US Government Printing Office, Washington DC, 1995. 21.Oppliger R., Internet and Intranet Security, Artech House, 1998. 22.Pfleeger C. P., Security in Computing, Prentice Hall PTR, Upper Saddle River,1997. 23.Purser M., Secure Data Networking, Norwood, MA, Artech House, 1993. 24.Rubin A. D. and Geer D. E., «A Survey of Web Security», IEEE Computer, 1998 pp. 34–42. 25.Safford D., Schales D. L. & Hess D. K., «The TAMU security package: an ongoing response to Internet intruders in an academic environment», in Proceedings, 4th USENIX Unix Security Symposium, Santa Clara, CA, pp. 91–118. 26.Segev A., Porra J. and Roldan M., «Internet Security and the Case of Bank of America», Communications of the ACM, Vol. 41, 1998, pp. 81–87. 27.Shaffer S. & Simon A., Network Security, Academic Press, 1994. 28.Spafford E. H., «The Internet Worm: Crisis and Aftermath», Communications of the ACM, Vol. 32, no. 6, 1989, pp. 678–687. 29.Stallings W., Cryptography and Network Security. Principles and Practice, Prentice–Hall Inc., 1999. 30.Stallings W., Network and Internetwork Security: Principles and Practice, Prentice–Hall, Englewood Cliffs, 1995. 31.Sterling B., The Hacker Crackdown: law and disorder on the electronic frontier,
241
A™º∞§∂π∞ ¢π∫∆Àø¡
242
Penguin Books, 1992. 32.Stoll C., The Cuckoo’s Egg, Pan Books, London, 1991. 33.Summers R. C., Secure Computing: Threats and Safeguards, Mc Graw–Hill, 1997. 34.Tanenbaum A. S., Computer Networks, Englewood Cliffs, NJ, Prentice–Hall Inc., 1981. 35.National Information Infrastructure, USA, Οκτώβριος 1997. 36.http://www.takedown.com/bio.
°ÏˆÛÛ¿ÚÈ Απειλή (Threat): Μια πιθανή πράξη ή γεγονός που µπορεί να προκαλέσει ζηµιά σ’ ένα αγαθό. Ασφάλεια (Security): Η διατήρηση της εµπιστευτικότητας, της ακεραιότητας και της διαθεσιµότητας των πληροφοριών. ∆ιαδίκτυο (Internet): ∆ίκτυο που διασυνδέει δίκτυα βασισµένα στην οικογένεια πρωτοκόλλων TCP/IP. ∆ιαχείριση δικτύων (Network management): Το σύνολο των λειτουργιών που σχετίζονται µε τη διαχείριση συστηµάτων, δικτύων και συστατικών δικτύων. Οι λειτουργίες αυτές περιλαµβάνουν διαχείριση διαµόρφωσης (configuration management), λογιστική (accounting), καταγραφή γεγονότων (event logging) κτλ. ∆ίκτυο (Network): Ένα διασυνδεµένο σύνολο αυτόνοµων υπολογιστικών συστηµάτων. EDI Συντοµογραφία του όρου Electronic Data Interchange, δηλαδή ηλεκτρονική ανταλλαγή δεδοµένων. Επίθεση (Attack): Το σύνολο των ενεργειών που συνιστούν µια προσπάθεια παραβίασης της πολιτικής ασφάλειας ενός συστήµατος. Επίπεδο OSI (OSI layer): Ένα από τα επτά ιεραρχικά στρώµατα του βασικού µοντέλου αναφοράς Open Systems Interconnection. Επίπεδο µεταφοράς (Transport layer): Το µεσαίο (τέταρτο) επίπεδο του βασικού µοντέλου αναφοράς OSI. Το επίπεδο αυτό παρέχει διαφανή µεταφορά δεδοµένων µεταξύ οντοτήτων ανώτερων επιπέδων και τις απαλλάσσει από την ανάγκη ρύθµισης λεπτοµερειών σχετικών µε την επίτευξη αξιόπιστης και αποδοτικής µεταφοράς δεδοµένων. Εσωτερικό δίκτυο (Intranet): ∆ίκτυο µιας επιχείρησης ή οργανισµού που βασίζεται στην οικογένεια πρωτοκόλλων TCP/IP. Ηλεκτρονικό ανάχωµα (Firewall): Ένα φράγµα µεταξύ ενός ιδιωτικού και προστατευόµενου δικτύου (το οποίο υποθέτουµε ότι είναι ασφαλές) και ενός άλλου δικτύου, συνήθως δηµόσιου, όπως το Internet (το οποίο υποθέτουµε ότι δεν είναι ασφαλές). Ο σκοπός του ηλεκτρονικού αναχώµατος είναι να εµποδίσει την ανεπιθύµητη και µη εξουσιοδοτηµένη επικοινωνία προς ή από το προστατευόµενο δίκτυο. Ηλεκτρονική πληρωµή (Electronic payment): Η χρήση ενός ανοικτού και δηµόσιου δικτύου (όπως το Internet) για την πραγµατοποίηση µιας πληρωµής χωρίς την προϋπόθεση της φυσικής παρουσίας στο σηµείο της πληρωµής.
244
A™º∞§∂π∞ ¢π∫∆Àø¡
Ηλεκτρονικό ταχυδροµείο (Electronic mail): Υπηρεσία που επιτρέπει στους χρήστες της την αποστολή και λήψη ηλεκτρονικών µηνυµάτων µέσω δικτύων. Το ηλεκτρονικό ανάλογο του ταχυδροµείου. Κατανεµηµένο υπολογιστικό περιβάλλον (Distributed computing environment): Ένα σύνολο διακριτών υπολογιστικών συστηµάτων που είναι χωρικά διαχωρισµένα και επικοινωνούν µεταξύ τους µε ανταλλαγή µηνυµάτων. Κρυπτογραφία (Cryptography): Η µετατροπή της πληροφορίας έτσι ώστε να διασφαλίζεται η εµπιστευτικότητα ή/και η αυθεντικότητά της. Μηχανισµός ασφάλειας (Security mechanism): Τεχνική που χρησιµοποιείται για την υλοποίηση µιας υπηρεσίας. Για παράδειγµα, ο µηχανισµός των συνθηµατικών χρησιµοποιείται για να υλοποιήσει την υπηρεσία της αυθεντικοποίησης και ο µηχανισµός της κρυπτογράφησης χρησιµοποιείται για να υλοποιήσει την υπηρεσία της εµπιστευτικότητας µηνύµατος. Μοντέλο αναφοράς OSI (OSI reference model): Το βασικότερο µοντέλο για τη δόµηση και την κατανόηση των επικοινωνιακών λειτουργιών σε δίκτυα υπολογιστών και κατανεµηµένα υπολογιστικά περιβάλλοντα. Το µοντέλο αναφοράς για τη διασύνδεση ανοικτών συστηµάτων προτάθηκε αρχικά από την επιτροπή ISO/IEC/JTC1 το 1978. Παγκόσµιος ιστός (World Wide Web): Σύνολο υπηρεσιών που περιλαµβάνει τις υπηρεσίες FTP, Gopher, WAIS και άλλες υπηρεσίες πληροφόρησης, που υλοποιούνται µε το πρωτόκολλο Hypertext Transfer Protocol (HTTP). Προσπέλαση από απόσταση (Remote access): Η προσπέλαση πόρων ενός τοπικού δικτύου µέσω τηλεφωνικής γραµµής. Προστασία (Protection): Παραδοσιακά, σηµαίνει τους µηχανισµούς ασφάλειας του υλικού και των κατώτερων επιπέδων του λειτουργικού συστήµατος. Ο όρος αναφέρεται εδώ στην προστασία της µνήµης συστήµατος. Πρωτόκολλο (Protocol): Καθορισµός της µορφής και του σχετικού χρονισµού µιας πεπερασµένης ακολουθίας µηνυµάτων. Σύστηµα αυθεντικοποίησης (Authentication system): Σύστηµα που υλοποιεί τη διαδικασία επαλήθευσης της ταυτότητας που ισχυρίζεται µια οντότητα. Υπηρεσία ασφάλειας (Security service): Μια από τις λειτουργίες που παρέχει κάποιο σύστηµα για να υποστηρίξει την ασφάλειά του. Παραδείγµατα τέτοιων λειτουργιών είναι η αυθεντικοποίηση χρηστών και η διασφάλιση της εµπιστευτικότητας των µηνυµάτων.