3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis...

19
3 Μοντέλα Ελέγχου Προσπέλασης 3.1 Βασικές Έννοιες Εμπιστευτικότητα. Η υπηρεσία της εμπιστευτικότητας προσφέρει υπηρεσίες έναντι «παθητικών» (passive) επιθέσεων, κατά τις οποίες ο εισβολέας προσπαθεί να αποκτήσει μη εξουσιοδοτημένη πρόσβαση στα δεδομένα. Οι επιθέσεις είναι «παθητικές» υπό την έννοια ότι ο εισβολέας δεν αλλάζει την κατάσταση του συστήματος (π.χ. επιθέσεις εισαγωγής ή αλλοίωσης ή διαγραφής), αλλά απλώς υποκλέπτει «αντίγραφα» των δεδομένων που μεταδίδονται μέσω δικτύου ή που είναι αποθηκευμένα στο σύστημα. Ακεραιότητα. (∆εδομένων-Προγραμμάτων) Η υπηρεσία της ακεραιότητας προσφέρει υπηρεσίες έναντι «ενεργητικών» (active) επιθέσεων κατά τις οποίες ο εισβολέας προσπαθεί να αποκτήσει μη εξουσιοδοτημένη πρόσβαση στα δεδομένα με σκοπό την τροποποίηση / αλλοίωση τους. Ένα σύστημα που προσφέρει ακεραιότητα, λέγεται επίσης ότι προσφέρει προστασία από τη μη εξουσιοδοτημένη εγγραφή (write) στα δεδομένα-προγράμματα. Σημείωση : H αλλοίωση του κώδικα προγραμμάτων μπορεί να είναι αποτέλεσμα μιας επίθεσης που εξαπολύεται από κακόβουλο λογισμικό, με σκοπό την αναπαραγωγή- μετάδοση του (π.χ. ιός, σκουλήκι), ή απλά τη δυσλειτουργία-διακοπή του προγράμματος (σε αυτήν την περίπτωση η επίθεση έχει ως στόχο τη διαθεσιμότητα του συστήματος). ∆ιαθεσιμότητα. Συχνά, οι εφαρμογές λογισμικού δε λειτουργούν σωστά, ή δε λειτουργούν καθόλου. Η αξιοπιστία-βιωσιμότητα και η ανοχή σε λάθη (fault- tolerance) αποτελούν σημαντικό κομμάτι της πολιτικής ασφαλείας ενός συστήματος. Τονίζουμε πως η Ασφάλεια Η/Υ ασχολείται με περιπτώσεις δυσλειτουργίας που σχετίζονται με (ή προκαλούνται από) κακόβουλες επιθέσεις, εξωτερικές ή εσωτερικές, κατά της διαθεσιμότητας του συστήματος. Εξουσιοδότηση (Authorization). Στην ενότητα 2 (ταυτοποίηση) εξετάσαμε πώς οι μηχανισμοί ταυτοποίησης, στα πλαίσια του Ελέγχου Πρόσβασης (Ε.Π.), μας επιτρέπουν να απαντήσουμε σε ερωτήσεις όπως «ποιος είναι αυτός που προσπαθεί να αποκτήσει πρόσβαση στο σύστημα;». Τι γίνεται όπως όταν το υποκείμενο Α, του οποίου την ταυτότητα επιβεβαιώσαμε, αποκτήσει πρόσβαση στο σύστημα; Τι μπορεί να κάνει το υποκείμενο Α στο σύστημα, και συγκεκριμένα ποια είναι τα δικαιώματα που έχει στους πόρους του συστήματος; Το υποσύστημα του ελέγχου λογικής πρόσβασης που ασχολείται με τον καθορισμό των δικαιωμάτων που παρέχονται σε ένα υποκείμενο, ονομάζεται υποσύστημα Εξουσιοδότησης (Authorization) του συστήματος. Σημείωση : Στην βιβλιογραφία, ή εξουσιοδότηση αναφέρεται και συχνά και ως έλεγχος προσπέλασης. Οι έννοιες είναι αλληλένδετες. Συχνά επίσης αναφέρεται και ως έλεγχος πρόσβασης. Στην Ενότητα αυτή, κάνουμε έναν διαχωρισμό των εννοιών για την καλύτερη κατανόηση τους

Transcript of 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis...

Page 1: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

3 Μοντέλα Ελέγχου Προσπέλασης

3.1 Βασικές Έννοιες Εµπιστευτικότητα. Η υπηρεσία της εµπιστευτικότητας προσφέρει υπηρεσίες έναντι «παθητικών» (passive) επιθέσεων, κατά τις οποίες ο εισβολέας προσπαθεί να αποκτήσει µη εξουσιοδοτηµένη πρόσβαση στα δεδοµένα. Οι επιθέσεις είναι «παθητικές» υπό την έννοια ότι ο εισβολέας δεν αλλάζει την κατάσταση του συστήµατος (π.χ. επιθέσεις εισαγωγής ή αλλοίωσης ή διαγραφής), αλλά απλώς υποκλέπτει «αντίγραφα» των δεδοµένων που µεταδίδονται µέσω δικτύου ή που είναι αποθηκευµένα στο σύστηµα. Ακεραιότητα. (∆εδοµένων-Προγραµµάτων) Η υπηρεσία της ακεραιότητας προσφέρει υπηρεσίες έναντι «ενεργητικών» (active) επιθέσεων κατά τις οποίες ο εισβολέας προσπαθεί να αποκτήσει µη εξουσιοδοτηµένη πρόσβαση στα δεδοµένα µε σκοπό την τροποποίηση / αλλοίωση τους. Ένα σύστηµα που προσφέρει ακεραιότητα, λέγεται επίσης ότι προσφέρει προστασία από τη µη εξουσιοδοτηµένη εγγραφή (write) στα δεδοµένα-προγράµµατα. Σηµείωση: H αλλοίωση του κώδικα προγραµµάτων µπορεί να είναι αποτέλεσµα µιας επίθεσης που εξαπολύεται από κακόβουλο λογισµικό, µε σκοπό την αναπαραγωγή-µετάδοση του (π.χ. ιός, σκουλήκι), ή απλά τη δυσλειτουργία-διακοπή του προγράµµατος (σε αυτήν την περίπτωση η επίθεση έχει ως στόχο τη διαθεσιµότητα του συστήµατος). ∆ιαθεσιµότητα. Συχνά, οι εφαρµογές λογισµικού δε λειτουργούν σωστά, ή δε λειτουργούν καθόλου. Η αξιοπιστία-βιωσιµότητα και η ανοχή σε λάθη (fault-tolerance) αποτελούν σηµαντικό κοµµάτι της πολιτικής ασφαλείας ενός συστήµατος. Τονίζουµε πως η Ασφάλεια Η/Υ ασχολείται µε περιπτώσεις δυσλειτουργίας που σχετίζονται µε (ή προκαλούνται από) κακόβουλες επιθέσεις, εξωτερικές ή εσωτερικές, κατά της διαθεσιµότητας του συστήµατος. Εξουσιοδότηση (Authorization). Στην ενότητα 2 (ταυτοποίηση) εξετάσαµε πώς οι µηχανισµοί ταυτοποίησης, στα πλαίσια του Ελέγχου Πρόσβασης (Ε.Π.), µας επιτρέπουν να απαντήσουµε σε ερωτήσεις όπως «ποιος είναι αυτός που προσπαθεί να αποκτήσει πρόσβαση στο σύστηµα;». Τι γίνεται όπως όταν το υποκείµενο Α, του οποίου την ταυτότητα επιβεβαιώσαµε, αποκτήσει πρόσβαση στο σύστηµα; Τι µπορεί να κάνει το υποκείµενο Α στο σύστηµα, και συγκεκριµένα ποια είναι τα δικαιώµατα που έχει στους πόρους του συστήµατος; Το υποσύστηµα του ελέγχου λογικής πρόσβασης που ασχολείται µε τον καθορισµό των δικαιωµάτων που παρέχονται σε ένα υποκείµενο, ονοµάζεται υποσύστηµα Εξουσιοδότησης (Authorization) του συστήµατος. Σηµείωση: Στην βιβλιογραφία, ή εξουσιοδότηση αναφέρεται και συχνά και ως έλεγχος προσπέλασης. Οι έννοιες είναι αλληλένδετες. Συχνά επίσης αναφέρεται και ως έλεγχος πρόσβασης. Στην Ενότητα αυτή, κάνουµε έναν διαχωρισµό των εννοιών για την καλύτερη κατανόηση τους

Page 2: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

2

Αντικείµενα, Υποκείµενα. Ο Ε.Π., στα πλαίσια της πολιτικής ασφάλειας του συστήµατος, καθορίζει εκτός των άλλων τα δικαιώµατα που έχουν οι χρήστες, καθώς και τα προγράµµατα που εκτελούνται εξ‘ ονόµατος των. Οι χρήστες, τα προγράµµατα, καθώς και τα ονόµατα διευθύνσεων Η/Υ που προσπαθούν να ανταλλάξουν δεδοµένα µέσω δικτύου, θεωρούµε ότι ανήκουν στην κατηγορία Υποκείµενα. Αντίστοιχα, οι πόροι του συστήµατος, ή αλλιώς τα Αντικείµενα στα οποία προσπαθεί να αποκτήσει πρόσβαση ένα υποκείµενο, είναι οι περιοχές της µνήµης, οι φάκελοι και τα αρχεία, οι υπηρεσίες (services) που εκτελούνται στο παρασκήνιο, τα προγράµµατα, οι βάσεις δεδοµένων, τα υποσυστήµατα hardware του Η/Υ κ.λ.π. ∆ικαιώµατα. Tα δικαιώµατα που εκχωρούνται σε ένα υποκείµενο και επιτρέπουν την πρόσβαση σε έναν πληροφοριακό πόρο (αντικείµενο). Όταν ένας χρήστης ταυτοποιηθεί, το επίπεδο εξουσιοδότησης καθορίζει τα δικαιώµατα πρόσβασης που µπορεί να έχει. Τα δικαιώµατα συνήθως τυποποιούνται ως εξής: Ανάγνωση (διάβασµα), Εγγραφή (τροποποίηση), Εκτέλεση κ.λ.π. Στη συνέχεια της ενότητας θα δούµε περισσότερο αναλυτικά τα δικαιώµατα επί των αντικειµένων Σηµείωση: Ενίοτε, ένα υποκείµενο µπορεί να µετατραπεί σε αντικείµενο, ανάλογα µε την περίσταση (π.χ. ένα πρόγραµµα τροποποιείται από κάποιο άλλο πρόγραµµα).

Πολιτική Εξουσιοδότησης. Κανόνες οι οποίοι καθορίζουν

Ποια υποκείµενα έχουν τι είδους πρόσβαση σε ποια αντικείµενα Σηµείωση: Ανάλογα µε την περίσταση, ένας χρήστης µπορεί να συνδέεται στο σύστηµα µε ένα ή περισσότερα ονόµατα (user names). Η πολιτική Εξουσιοδότησης αποτελεί τµήµα της Πολιτικής Ασφαλείας της Επιχείρησης/Οργανισµού. Θέτει τους κανόνες ελέγχου των δικαιωµάτων πρόσβασης των χρηστών. Οι κανόνες αυτοί είναι αρκετά γενικοί ώστε να επιτρέπουν την

Έλεγχος Λογικής Πρόσβασης & Εξουσιοδότηση (Authorization)

Αντικείµενα (objects)

Υποκείµενα (Subjects)

Τύπος Πρόσβασης

Οι τεχνικές εξουσιοδότησης εφαρµόζονται σε:Λειτουργικά ΣυστήµαταΒάσεις δεδοµένωνΕξυπηρετητές Web, ∆ίκτυα…

Πόροι που χρειάζονταιπροστασία (περιοχέςµνήµης, αρχεία, φάκελοι, υπηρεσίες, hardware,.)

Οντότητες που ζητούνπρόσβαση σε κάποιον πόρο(χρήστες, εφαρµογές, υπηρεσίες, hosts..)Ανάγνωση, Εγγραφή, Εκτέλεση..

Πολιτική Εξουσιοδότησης: Κανόνες οι οποίοι καθορίζουνποια υποκείµενα έχουν τι είδους πρόσβαση σε ποιααντικείµενα

Page 3: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

3

υλοποίηση τους µε περισσότερους από έναν µηχανισµούς/µοντέλα εξουσιοδότησης. Σε κάθε πληροφοριακό και δικτυακό σύστηµα, κατά τις διαδικασίες ανάπτυξης και συντήρησης του, θα πρέπει να γίνεται µια Ανάλυση Επικινδυνότητας (Ποιος µας απειλεί; Τι είδους συνέπειες µπορεί να έχει η πραγµατοποίηση µιας απειλής;) µε σκοπό την επιλογή µηχανισµών που θα µειώνουν τους κινδύνους σε αποδεκτά για την επιχείρηση / οργανισµό επίπεδα. Τα µοντέλα εξουσιοδότησης θα πρέπει να επιλέγονται βάσει των αποτελεσµάτων της Ανάλυσης Επικινδυνότητας.

Μοντέλα Εξουσιοδότησης. Στη συνέχεια αυτής της ενότητας θα αναφερθούµε στα µοντέλα εξουσιοδότησης MAC, DAC, RBAC. Μηχανισµός Εξουσιοδότησης (Reference Monitor). Αποτελεί τµήµα του κώδικα προγράµµατος του Λ.Σ. ενός Η/Υ (συγκεκριµένα του πυρήνα – kernel), το οποίο ελέγχει την πρόσβαση στα δεδοµένα, προγράµµατα, τη µνήµη και το υλικό του Η/Υ. Κάθε φορά που ένα υποκείµενο υποβάλλει αίτηµα πρόσβασης σε ένα αντικείµενο, ο µηχανισµός εξουσιοδότησης ελέγχει τα δικαιώµατα πρόσβασης που έχουν προ-εκχωρηθεί στο υποκείµενο για το εν λόγω αντικείµενο, και εξουσιοδοτεί ή όχι την πρόσβαση. Μοντέλο «Κατά ∆ιάκριση» (DAC – Discretionary Access Control): Το µοντέλο βασίζεται στην έννοια της κατοχής-ιδιοκτησίας. Η µεταβίβαση-ανάκληση των δικαιωµάτων πρόσβασης είναι στην ευχέρεια των µεµονωµένων χρηστών-υποκειµένων του συστήµατος, οι οποίοι «κατέχουν» ένα ή περισσότερα αντικείµενα (πληροφοριακοί πόροι) του συστήµατος. Μοντέλο «Κατ’ απαίτηση» (MAC – Mandatory Access Control): Το µοντέλο βασίζεται σε ένα σχήµα διαβάθµισης, το οποίο αντανακλά τη συνέπεια που θα είχε για την επιχείρηση/οργανισµό, η µη εξουσιοδοτηµένη αποκάλυψη, τροποποίηση, µη διαθεσιµότητα ή καταστροφή κάποιου πληροφοριακού πόρου. Το µοντέλο προβλέπει την απόδοση Ετικετών (labels) ασφαλείας στα αντικείµενα και τα υποκείµενα του συστήµατος. Οι ετικέτες αυτές απεικονίζουν αντίστοιχα την σηµαντικότητα των

Έλεγχος λογικής πρόσβασης και Εξουσιοδότηση

Referencemonitor

op on o

s oop

s

ΚαταγραφήΕξουσιοδότησηΤαυτοποίηση

Ποιοςείναι ο s? Τι op µπορεί

να κάνει ο sστο o?

Τι έκανε (ήπροσπάθησενα κάνει ο s?

Page 4: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

4

αντικειµένων καθώς και την εξουσιοδότηση (clearance) των υποκειµένων. Ιστορικά, το µοντέλο MAC έχει εφαρµοστεί (και εφαρµόζεται) κυρίως σε στρατιωτικά περιβάλλοντα, στα οποία είναι συνήθης πρακτική η διαβάθµιση των χρηστών και των πληροφοριών σε επίπεδα ασφαλείας (π.χ. αδιαβάθµητο, εµπιστευτικό, απόρρητο, άκρως απόρρητο). Εξουσιοδότηση «Βασισµένη σε Ρόλους» (RBAC – Role based Access Control): Ως ρόλο (role) ορίζουµε ένα σύνολο από ενέργειες-ευθύνες οι οποίες σχετίζονται µε κάποια συγκεκριµένη λειτουργία της επιχείρησης/οργανισµού. Ο έλεγχος πρόσβασης δε βασίζεται στην ταυτότητα των υποκειµένων (DAC) ή στη διαβάθµιση των υποκειµένων-αντικειµένων (MAC), αλλά στο ρόλο που έχει ένα υποκείµενο µια δεδοµένη χρονική στιγµή.

3.2 «Κατά ∆ιάκριση» Μοντέλο DAC Tη στιγµή που δηµιουργείται ο λογαριασµός ενός χρήστη στο σύστηµα, ο χρήστης είναι ιδιοκτήτης - κάτοχος (owner) συγκεκριµένης ποσότητας πληροφοριακών πόρων. Το πλήθος και το είδος των πόρων που κατέχει ο χρήστης καθορίζεται από µια πολιτική εξουσιοδότησης (τµήµα της Πολιτικής Ασφάλειας). Στη διάρκεια της «ζωής» του στο σύστηµα, ο χρήστης µπορεί να δηµιουργήσει καινούριους πόρους (π.χ. αρχεία, φάκελοι, προγράµµατα). Οι πληροφοριακοί πόροι που δηµιουργούνται από ένα χρήστη θεωρούνται επίσης ότι βρίσκονται στην κατοχή του χρήστη. Tο µοντέλο DAC αφήνει στη διακριτική ευχέρεια του χρήστη τον καθορισµό (δηµιουργία, µεταβίβαση, ανάκληση) των δικαιωµάτων πρόσβασης στους πληροφοριακούς πόρους που έχει υπό τον έλεγχο του.

Έλεγχος Λογικής πρόσβασης

Πολιτική ΕξουσιοδότησηςΈνα σύνολο κανόνων που καθορίζει τι επιτρέπεται και τι όχι

Μοντέλο ΕξουσιοδότησηςΈνας πρότυπος τρόπος καθορισµού των εξουσιοδοτηµένωνπροσβάσεων σύµφωνα µε την πολιτική εξουσιοδότησης

∆ιαφορετικά µοντέλα υλοποιούν διαφορετικές πολιτικέςεξουσιοδότησης

DAC, MAC, RBAC,…

Μηχανισµός εξουσιοδότησης (reference monitor)Επιβλέπει την υλοποίηση του µοντέλου ελέγχου πρόσβασης

Στα Λ.Σ, αποτελεί κοµµάτι του πυρήνα (kernel) του Λ.Σ

Page 5: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

5

Πίνακες Ελέγχου Πρόσβασης. Οι πίνακες ελέγχου πρόσβασης (δυσδιάστατοι ή τρισδιάστατοι) µπορούν να χρησιµοποιηθούν για να υλοποιήσουν ή να µοντελοποιήσουν την πολιτική εξουσιοδότησης της επιχείρησης/οργανισµού. Ωστόσο, δεν είναι ιδιαίτερα ευέλικτοι.

Μελέτη περίπτωσης – Ένας πίνακας ελέγχου πρόσβασης σε µια τράπεζα µε 50.000 προσωπικό και 300 εφαρµογές θα είχε µέγεθος 50.000 X 300 = 15.000.000 κελιά. Η διαχείριση ενός τέτοιου πίνακα θα ήταν ιδιαίτερα δύσκολη. Προς αυτήν την κατεύθυνση έχουν περιγραφεί περισσότερο «συµπαγείς» µηχανισµοί υλοποίησης της πολιτικής εξουσιοδότησης: Πιθανές λύσεις θα ήταν α) η χρήση οµάδων (user groups)

Εξουσιοδότηση «Κατά ∆ιάκριση»Discretionary Access Control (DAC)

Κάθε αντικείµενο (πόρος) έχει έναν ιδιοκτήτη (υποκείµενο)Οι ιδιοκτήτες διαχειρίζονται τα δικαιώµατα πρόσβασης για όσααντικείµεναa) .. τους ανήκουνb) .. δηµιουργούν κατά τη διάρκεια της «ζωής» τους στο σύστηµα

Ο ιδιοκτήτης καθορίζει τον τύπο πρόσβασης σε αντικείµενα πουκατέχει, από άλλα υποκείµενα

(π.χ. ανάγνωση, εγγραφή, εκτέλεση)

Ο ιδιοκτήτης µπορεί ναa) .. µεταβιβάσει δικαιώµατα πρόσβασης που ο ίδιος έχει σε άλλα

υποκείµεναb) .. ανακαλέσει δικαιώµατα πρόσβασης σε αντικείµενα που κατέχει από

άλλα υποκείµενα

Εξουσιοδότηση DAC –Πίνακες Ελέγχου Πρόσβασης

Βήµα 1ο: Ταυτοποίηση χρήστη (passwords ή biometrics)

Βήµα 2ο: Τι είδους πρόσβαση θα έχει ο χρήστης (ή µια οµάδαχρηστών) στους πληροφοριακούς πόρους;

Το µοντέλο µπορεί να υλοποιηθεί ως ένας πίνακας ελέγχου πρόσβασης

Η θέση [i,j] καθορίζει τι είδους πρόσβαση έχει ο χρήστης i στοαντικείµενο j

--xrxUser2

rrrrxUser 3

wrrrxProgram1

rrrwxorwxUser1

file3program1file2file1

r – read, x – execute, w, write, o- own

Ένας πίνακας ελέγχου πρόσβασης (Access Control Matrix)

Page 6: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

6

ή ρόλων χρηστών (RBAC) για τη διαχείριση των δικαιωµάτων πρόσβασης οµάδων χρηστών µε παρόµοιες αρµοδιότητες, ή β) η διάσπαση του πίνακα ελέγχου πρόσβασης σε στήλες (Λίστες Ελέγχου Πρόσβασης - ACLs) ή σε γραµµές (Λίστες δυνατοτήτων - Capability Lists).

Σηµείωση: Οι λίστες ελέγχου πρόσβασης απαντούν στο ερώτηµα «Ποια είναι τα δικαιώµατα πρόσβασης στο αντικείµενο;» ενώ οι Λίστες ∆υνατοτήτων απαντούν στο ερώτηµα «Τι είδους δικαιώµατα πρόσβασης έχει το υποκείµενο;»

… Ένας πίνακας ελέγχου πρόσβασης δεν προσαρµόζεται εύκολα σεαύξηση του µεγέθους των χρηστών ή/και των πόρων…

Μη προσαρµοστικότητα (Scalability)

∆υσκολία διαχείρισης

Στην πράξη το µοντέλο υλοποιείται µε:Λίστες Ελέγχου Πρόσβασης (ACL)

Ένας πίνακας ελέγχου πρόσβασης ανά αντικείµενο

Λίστες ∆υνατοτήτων (Capabilities)

Ένας πίνακας ελέγχου πρόσβασης ανά υποκείµενο

Εξουσιοδότηση DAC –Λίστες Ελέγχου Πρόσβασης (ACLs)

Εξουσιοδότηση DAC – Οµάδες χρηστών (Groups)

Η έννοια της οµάδας (group) µπορεί να οδηγήσει στηναπλοποίηση της εξουσιοδότησης

Χρήστες µε «παρεµφερή» δικαιώµατα πρόσβασης, µπορούν νακαταχωρηθούν σε µια οµάδα (user group)

Στη συνέχεια, εφαρµόζεται η πολιτική εξουσιοδότησης στηνοµάδα που δηµιουργήθηκε

G1 G2 G3

S1 S2 S3 S4 S5

O1 O2 O3 O4 O5 O6

Υποκείµενα

Οµάδες

Αντικείµενα

Page 7: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

7

DAC και οµάδες. Ο καθορισµός των δικαιωµάτων πρόσβασης σε αντικείµενα βασίζεται είτε στην ταυτότητα (identity) των υποκειµένων είτε στην οµάδα (user group) στην οποία ανήκουν: Χρήστες µε παρεµφερείς αρµοδιότητες-δικαιώµατα µπορούν να κατηγοριοποιηθούν σε µια οµάδα (π.χ οµάδα Guest, οµάδα Administrators, κ.λ.π) και στη συνέχεια να εφαρµοστεί η πολιτική εξουσιοδότησης στην οµάδα, χωρίς να χρειάζεται να καθοριστούν τα δικαιώµατα πρόσβασης για κάθε χρήστη της οµάδας ξεχωριστά. Κάθε χρήστης «κληρονοµεί» τα δικαιώµατα της οµάδας στην οποία ανήκει. Λίστες Ελέγχου Πρόσβασης (Access Control Lists) Οι Λ.Ε.Π. είναι προσανατολισµένες στα αντικείµενα του συστήµατος. Τα περισσότερα Λ.Σ. υλοποιούν το µοντέλο DAC µε Λ.Ε.Π για την υλοποίηση της πολιτικής εξουσιοδότησης. Οι Λ.Ε.Π. είναι ιδανικές για την προστασία συστηµάτων µικρής κλίµακας (πολλά αντικείµενα, λίγοι χρήστες ή καλά καθορισµένες οµάδες χρηστών), όπου οι χρήστες καθoρίζουν τα δικαιώµατα πρόσβασης για τους πόρους των οποίων είναι ιδιοκτήτες. Σε µεγάλα και πολύπλοκα συστήµατα ωστόσο, όπου ο πληθυσµός (ή οι αρµοδιότητες των χρηστών) του συστήµατος µπορεί να µεταβάλλεται συχνά, οι Λ.Ε.Π. παρουσιάζουν προβλήµατα. Μελέτη περίπτωσης: Σε µια µεγάλη επιχείρηση που υλοποιεί το µοντέλο DAC µε Λ.Ε.Π, ένας υπάλληλος Α απολύεται. Ο διαχειριστής του συστήµατος θα πρέπει να αλλάξει τα δικαιώµατα πρόσβασης σε κάθε αντικείµενο του συστήµατος ώστε να αποµακρυνθεί η ταυτότητα του Α από τις Λ.Ε.Π. Λίστες ∆υνατοτήτων: Οι λίστες δυνατοτήτων απαντούν στο ερώτηµα «Ποια δικαιώµατα πρόσβασης έχει το υποκείµενο;» Είναι προσανατολισµένες στα υποκείµενα του συστήµατος. Ως υποκείµενο µπορεί να θεωρηθεί ένας χρήστης ή µια Οµάδα Χρηστών (User Group). Οι λίστες δυνατοτήτων θεωρούνται κατάλληλες για δυναµικά περιβάλλοντα όπου τα υποκείµενα αλλάζουν συνεχώς. Ουσιαστικά υλοποιούν τον Πίνακα Ελέγχου Πρόσβασης (Access Control Matrix) ανά γραµµές.

Εξουσιοδότηση DAC – Λίστες ∆υνατοτήτων

Λίστες δυνατοτήτων:Βασίζονται στα υποκείµεναΚατάλληλες για δυναµικά περιβάλλοντα (όπου τα υποκείµενα αλλάζουνσυνεχώς)Παραδείγµατα

Win2k: Πολιτικές Οµάδων (Group policy), Τοµέα (domain policy), …Πιστοποιητικά ∆ηµόσιου Κλειδιού (Public Key certificates)

Plotter – PrintPrinter1 – PrintPrinter2 – No AccessAccounting.xls – Full ControlAccounting.doc – Read, WritePayroll.xls – No AccessClipart – Full Control

Capability TableUser (Subject)http://www.cs.uwf.edu/~rdavid/CEN4540/sec3.ppt

Page 8: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

8

Για παράδειγµα, µια λίστα δυνατοτήτων αναφέρει όλα τα αντικείµενα που µπορεί να προσπελάσει ένα συγκεκριµένο υποκείµενο, καθώς και τα δικαιώµατα πρόσβασης για κάθε ένα από τα αντικείµενα αυτά. Παράδειγµα Λίστας δυνατοτήτων αποτελούν οι πολιτικές οµάδων (group policies) στα Windows 2000 και Windows 2003. Επίσης, ένα Πιστοποιητικό ∆ηµόσιου Κλειδιού, ψηφιακά υπογεγραµµένο από µια έµπιστη οντότητα, στο οποίο αναγράφονται τα δικαιώµατα του κατόχου του, µπορεί να θεωρηθεί ως µια λίστα δυνατοτήτων.

3.2.1 ∆ικαιώµατα Πρόσβασης σε Συστήµατα Windows (NTFS) ∆ικαιώµατα Πρόσβασης (Windows) – Στα λειτουργικά συστήµατα τύπου Windows µε σύστηµα αρχείων NTFS, κάθε αρχείο ή φάκελος αποθηκεύεται στο δίσκο ή στην κατάτµηση (partition) του συστήµατος, µαζί µε µια Λ.Ε.Π (ACL). Η λίστα αυτή απαριθµεί τους χρήστες ή τις οµάδες χρηστών (user groups) του συστήµατος (ή/και του τοπικού δικτύου) που έχουν πρόσβαση στο αρχείο/φάκελο, καθώς και το είδος των δικαιωµάτων πρόσβασης. Συχνά αναφέρονται και ως δικαιώµατα NTFS διότι προκειµένου να εφαρµοστεί η πολιτική εξουσιοδότησης στους πόρους ενός δίσκου ή κατάτµησης (partition), θα πρέπει ο δίσκος αυτός (ή η κατάτµηση) να έχει διαµορφωθεί (format) µε βάση το σύστηµα αρχείων NTFS. Στη συνέχεια αναφέρονται ενδεικτικά τα βασικότερα δικαιώµατα πρόσβασης σε αρχεία ενός συστήµατος NTFS: • Ανάγνωση (Read): Ανάγνωση των περιεχοµένων, του ιδιοκτήτη και των

δικαιωµάτων του αρχείου • Εγγραφή (Write): Εγγραφή ή προσθήκη στα περιεχόµενα του αρχείου • Ανάγνωση & Εκτέλεση (Read and Execute): Ανάγνωση των περιεχοµένων, του

ιδιοκτήτη και των δικαιωµάτων του αρχείου, και εκτέλεση του αρχείου (αν το αρχείο είναι πρόγραµµα).

• Τροποποίηση (Modify): Ανάγνωση, Εγγραφή, Εκτέλεση, ∆ιαγραφή • Πλήρης Έλεγχος (Full Control) – Τροποποίηση, Αλλαγή δικαιωµάτων, Αλλαγή

Ιδιοκτήτη (owner) Αντίστοιχα δικαιώµατα (µε ορισµένες διαφοροποιήσεις) ισχύουν και για τους φακέλους (folders) του συστήµατος. Για ακόµη µεγαλύτερο έλεγχο και ακρίβεια, σε συστήµατα NTFS υπάρχει η δυνατότητα καθορισµού πρόσθετων ή ειδικών δικαιωµάτων, όπου µπορούν να επιλεχθούν συνδυασµοί δύο ή περισσοτέρων χαρακτηριστικών από τα βασικά δικαιώµατα (Επιλογή «Για Προχωρηµένους» - βλέπε Σχήµα).

Page 9: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

9

Σηµείωση: Τα δικαιώµατα λειτουργούν «αθροιστικά» (cumulative). Αυτό σηµαίνει ότι τα τελικά δικαιώµατα ενός χρήστη προκύπτουν ως το άθροισµα των δικαιωµάτων που έχουν εκχωρηθεί στο χρήστη και των δικαιωµάτων που έχουν εκχωρηθεί στις οµάδες (user groups) που ανήκει ο χρήστης. Για παράδειγµα, αν ο Bob έχει δικαιώµατα Ανάγνωσης (Read) και η οµάδα ∆ΙΑΧΕΙΡΙΣΤΕΣ_ΑΣΦΑΛΕΙΑΣ (στην οποία ανήκει ή γίνεται µέλος ο Bob) έχει δικαιώµατα Τροποποίησης (Modify) στον φάκελο «Ασφάλεια», τότε ο Bob έχει δικαιώµατα Ανάγνωσης και Τροποποίησης στον φάκελο «Ασφάλεια». Άρνηση ∆ικαιώµατος. Ο ιδιοκτήτης ενός πόρου µπορεί να αρνηθεί (Deny) ένα ή περισσότερα δικαιώµατα πρόσβασης σε χρήστες ή/και οµάδες χρηστών. Σε αυτήν την περίπτωση, η εξουσιοδότηση δε λειτουργεί αθροιστικά. Για παράδειγµα ο χρήστης στον οποίο αρνείται η Ανάγνωση (Read) ενός αρχείου, δε θα έχει το δικαίωµα να διαβάσει τα περιεχόµενα του αρχείου, ακόµα και αν η Οµάδα στην οποία ανήκει έχει δικαιώµατα Ανάγνωσης. Σηµείωση - Περίπτωση: Στα Windows NT/2000/XP ένας χρήστης του Η/Υ µε αυξηµένα δικαιώµατα (π.χ. ο ∆ιαχειριστής) επιθυµεί να αποκτήσει πρόσβαση στο web µε περιορισµένα δικαιώµατα (ώστε να περιοριστούν οι συνέπειες από µια επίθεση κακόβουλου λογισµικού). Η λύση είναι να αποσυνδεθεί ο χρήστης και να συνδεθεί ως ένας χρήστης µε λιγότερα δικαιώµατα. Στη συνέχεια της Ενότητας, θα δούµε πώς η εξουσιοδότηση Βασισµένη σε Ρόλους (RBAC) επιλύει τέτοιου είδους προβλήµατα.

Εξουσιοδότηση DAC – Λίστες Ελέγχου Πρόσβασης(ACL) στα Windows XP Professional (NTFS)

Λίστες Ελέγχου ΠρόσβασηςΒασίζονται στα αντικείµενα

Συνήθως χρησιµοποιούνταιγια την προστασία τωνπληροφοριακών πόρων σεπολύ-χρηστικά (multi-user) λειτουργικά συστήµατα.

Page 10: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

10

3.2.2 ∆ικαιώµατα Πρόσβασης σε Συστήµατα τύπου Unix ∆ικαιώµατα Πρόσβασης (τύπου Unix). Κάθε αρχείο η φάκελος σε ένα σύστηµα αρχείων UNIX ανήκει σε κάποιον χρήστη. Σε συστήµατα αρχείων Unix, τα αρχεία και οι φάκελοι προστατεύονται επίσης από Λ.Ε.Π (ACLs). Σε κάθε αρχείο ή φάκελο, τη στιγµή της δηµιουργίας του ορίζονται τα δικαιώµατα πρόσβασης (permissions) που θα έχει ένας χρήστης (ιδιοκτήτης), η οµάδα στην οποία ο χρήστης ανήκει (group), και οι υπόλοιποι χρήστες του συστήµατος (world). Για κάθε υποκείµενο του συστήµατος, η λίστα των δικαιωµάτων εµφανίζεται ως µια συµβολοσειρά µήκους 10 χαρακτήρων. Ο πρώτος χαρακτήρας περιγράφει τον τύπο του αντικειµένου (αν είναι «-» τότε είναι ένα απλό αρχείο, ενώ αν είναι «d» τότε είναι φάκελος). Επίσης, η λίστα των δικαιωµάτων συµπληρώνεται µε 3 οµάδες των 3 χαρακτήρων για την απεικόνιση των δικαιωµάτων του Ιδιοκτήτη, της Οµάδας του Ιδιοκτήτη, και των Υπολοίπων (όπως φαίνεται και στο Σχήµα). Κάθε χαρακτήρας συµβολίζει την ύπαρξη ή απουσία (-) ενός εκ των βασικών δικαιωµάτων της ανάγνωσης (r), της εγγραφής (w) και της εκτέλεσης (x). • Ανάγνωση – Read (αρχείο): δικαίωµα ανάγνωσης των περιεχοµένων του αρχείου • Εγγραφή – Write (αρχείο): δικαίωµα αλλαγής (τροποποίηση & διαγραφή) στο

αρχείο • Εκτέλεση – eXecute (αρχείο): δικαίωµα εκτέλεσης του αρχείου (εφόσον περιέχει

εκτελέσιµο κώδικα). Τα δικαιώµατα πρόσβασης έχουν ελαφρώς διαφορετικό νόηµα στους φακέλους (directories).

Εξουσιοδότηση DACΆρνηση ∆ικαιωµάτων (Deny) σε συστήµατα NTFS

http://securitytf.cs.kuleuven.ac.be/teaching/ClassicAccessControlTechniques.ppt

Page 11: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

11

• Ανάγνωση – Read (φάκελος): ∆ικαίωµα ανάγνωσης των περιεχοµένων του φακέλου (π.χ. λήψη της λίστας των περιεχοµένων µε την εντολή ls)

• Εγγραφή – Write (φάκελος): ∆ικαίωµα αλλαγής των περιεχοµένων του

φακέλου( π.χ. δηµιουργία, µετακίνηση ή διαγραφή αρχείων στον φάκελο).

Σηµείωση: ένας χρήστης µπορεί να σβήσει το αρχείο ενός φακέλου στον οποίο έχει δικαίωµα Εγγραφής, ακόµα και αν δεν έχει δικαίωµα Εγγραφής στο αρχείο αυτό. Ωστόσο, για να τροποποιήσει το περιεχόµενο του αρχείου, θα πρέπει να έχει δικαίωµα εγγραφής στο αρχείο. • Εκτέλεση - eXecute (φάκελος): ∆ικαίωµα πρόσβασης στα περιεχόµενα του

φακέλου Σηµείωση (παράδειγµα): • Εάν ο χρήστης έχει δικαίωµα Ανάγνωσης αλλά όχι Εκτέλεσης για έναν φάκελο,

τότε το µόνο δικαίωµα που έχει στον φάκελο είναι η ανάγνωση της λίστας µε τα περιεχόµενα του φακέλου. ∆ηλαδή, µπορεί να δει τη λίστα µε τα περιεχόµενα του Α χρησιµοποιώντας π.χ. την εντολή ls, αλλά όχι να µεταβεί στον φάκελο Α (µε την εντολή cd) ή να κάνει οποιαδήποτε άλλη ενέργεια στα περιεχόµενα του φακέλου.

• Αν ο χρήστης έχει δικαίωµα Εκτέλεσης αλλά όχι Ανάγνωσης για τον φάκελο Α,

αυτό σηµαίνει ότι µπορεί να µεταβεί στον φάκελο Α (µε την εντολή cd) και να διαχειριστεί τα περιεχόµενα του (π.χ. να σβήσει ένα αρχείο του φακέλου για το οποίο έχει δικαίωµα εγγραφής), αλλά δεν µπορεί να δει τη λίστα µε τα περιεχόµενα του (άρα, για να σβήσει το αρχείο, θα πρέπει να γνωρίζει από πριν το όνοµα του). Επειδή η διαφορά γίνεται δύσκολα αντιληπτή, συχνά σε έναν φάκελο

Εξουσιοδότηση DAC -Λίστες Ελέγχου Πρόσβασης (ACL) σε συστήµατα τύπου Unix

1 : Τύπος αρχείου.2 – 4 : Τα δικαιώµατα του ιδιοκτήτη (owner).5 – 7 : Τα δικαιώµατα της οµάδας (group).8 – 10 : Ta δικαιώµατα των υπολοίπων (world).

Φάκελος. Μόνον ο ιδιοκτήτης δικαιούται Ανάγνωση, Εγγραφήκαι Εκτέλεση

d rwx --- ---

Αρχείο. Όλοι δικαιούνται Ανάγνωση και Εκτέλεση αλλά µόνο οιδιοκτήτης δικαιούται εγγραφή.

- rwx r-x r-x

Αρχείο. Όλοι δικαιούνται Ανάγνωση, Εγγραφή και Εκτέλεση- rwx rwx rwx

Σηµασία∆ικαιώµατα

Page 12: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

12

είτε εκχωρούνται δικαιώµατα Ανάγνωσης & Εκτέλεσης (r-x) , είτε δεν εκχωρούνται καθόλου δικαιώµατα).

3.2.3 Πλεονεκτήµατα και Μειονεκτήµατα του µοντέλου DAC Το µοντέλο εξουσιοδότησης DAC είναι σχετικά εύκολο στην υλοποίηση, χρησιµοποιείται ευρέως σε Web-based εφαρµογές και προσφέρει υψηλό βαθµό ευελιξίας, καθώς οι χρήστες του συστήµατος µπορούν να ελέγξουν οι ίδιοι την πρόσβαση στους πληροφοριακούς πόρους των οποίων έχουν την ευθύνη. Στον αντίποδα, τα µοντέλα DAC δεν προσφέρουν επαρκείς τρόπους διασφάλισης της ροής των πληροφοριών, αφού στην πραγµατικότητα καθιστούν τους χρήστες υπεύθυνους για την επιβολή της πολιτικής ασφάλειας (βλέπε Μελέτη Περίπτωσης, στη συνέχεια). Ως εκ τούτου η διαχείριση των µηχανισµών υλοποίησης της πολιτικής εξουσιοδότησης, αλλά και η επίβλεψη των αποτελεσµάτων τους καθίσταται δύσκολη. Σε µεγάλα και πολύπλοκα συστήµατα, όπου συνήθως απαιτείται η κεντρική διαχείριση της ασφάλειας των συστηµάτων, ή υπάρχει η ανάγκη για πολλαπλά επίπεδα ασφαλείας, το µοντέλο DAC τίθεται υπό αµφισβήτηση. Οι µηχανισµοί DAC περιορίζουν την πρόσβαση στα αντικείµενα του συστήµατος, βάσει της ταυτότητας των υποκειµένων που προσπαθούν να τα προσπελάσουν. Στα περισσότερα συστήµατα, κάθε πρόγραµµα «κληρονοµεί» τα δικαιώµατα πρόσβασης του εκάστοτε χρήστη που το εκτελεί. Η ακόλουθη µελέτη περίπτωσης περιγράφει τον τρόπο µε τον οποίο ένας ∆ούρειος Ίππος (Trojan Horse) µπορεί να οδηγήσει στη µη εξουσιοδοτηµένη ροή της πληροφορίας από ένα υψηλό σε ένα χαµηλότερο επίπεδο ασφαλείας.

Μελέτη Περίπτωσης (NCSC, 1987): Έστω ένα πολυχρηστικό σύστηµα που υλοποιεί τη πολιτική εξουσιοδότησης µε Λίστες Ελέγχου Πρόσβασης (ACLs – Λ.Ε.Π). Ο «τίµιος» χρήστης Robert διαθέτει ένα αρχείο που περιέχει εµπιστευτικά (classified)

RobertRobert’’s Classifieds Classified

RobertRobert’’s Classifieds Classified

Robert: read, writeRobert: read, write

Ivan, Robert: read, writeIvan, Robert: read, write

RobertRobert

IvanIvan

Address Address Book Book

ManagerManager

Inserts Trojan HorseInserts Trojan HorseInto shared programInto shared program

Uses shared programUses shared program

THTHReads Reads

ClassifiedClassified

THTHCopiesCopies

ClassifiedClassifiedTo IvanTo Ivan’’ssDirectoryDirectory

http://my.fit.edu/~tgillett/swe5900/week1/Access%20Control%20Concepts.ppt

Εξουσιοδότηση DAC - Μελέτη ΠερίπτωσηςΕπίθεση ∆ούρειου Ίππου (Trojan horse attack)

Page 13: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

13

δεδοµένα. Ο Robert δηµιουργεί µια Λ.Ε.Π η οποία επιτρέπει δικαιώµατα ανάγνωσης µόνο στο υποκείµενο Robert. Στον αντίποδα, ο «κακός» χρήστης Ivan επιθυµεί να αποκτήσει δικαιώµατα ανάγνωσης στο αρχείο του Robert. Ο Ivan, o οποίος είναι δεινός προγραµµατιστής, κατασκευάζει ένα πρόγραµµα διαχείρισης τηλεφωνικού καταλόγου και το συστήνει στον Robert, πείθοντας τον περί της χρησιµότητας του. Το πρόγραµµα, περιέχει έναν ∆ούρειο Ίππο (που, έχει συνενωθεί – wrapping- µε το πρόγραµµα τηλεφωνικού καταλόγου): Όταν ο Robert το εγκαταστήσει και στη συνέχεια το εκτελέσει, το trojan (εκτελούµενο πλέον µε τα δικαιώµατα του Robert) αντιγράφει τα περιεχόµενα του αρχείου του Robert στον φάκελο του Ivan. Ο Robert δεν θα αντιληφθεί ποτέ τι συνέβη, και η επίθεση ολοκληρώνεται επιτυχώς.

3.3 «Κατ’ Απαίτηση» Μοντέλο MAC Εξουσιοδότηση «Κατ’ Απαίτηση» (MAC). Το µοντέλο βασίζεται σε ένα σχήµα διαβάθµισης και συνήθως βρίσκει εφαρµογή σε πολύπλοκα συστήµατα που περιέχουν πληροφορίες ποικίλων διαβαθµίσεων, δηλαδή πληροφορίες που ανήκουν ή κατατάσσονται σε διαφορετικά (πολλαπλά) επίπεδα ασφαλείας (Multi Level Security - MLS). Ως εκ τούτου, τα υποκείµενα του συστήµατος πρέπει επίσης να διαβαθµιστούν σε διαφορετικά (πολλαπλά) επίπεδα εξουσιοδότησης. Πιο συγκεκριµένα, το µοντέλο εξουσιοδότησης MAC καθορίζει εκ των προτέρων τα εξής: 1. ∆ιαβάθµιση πληροφοριών. Στα αντικείµενα του συστήµατος εκχωρούνται

ετικέτες ασφαλείας (classification ή security labels). Οι ετικέτες αυτές αποδίδουν την ευαισθησία (sensitivity) των αντικειµένων και αντικατοπτρίζουν την πιθανή ζηµιά – συνέπεια που θα µπορούσε να υποστεί το σύστηµα από τη µη εξουσιοδοτηµένη διαρροή των πληροφοριών.

2. Βαθµός εξουσιοδότησης. Σε κάθε υποκείµενο του συστήµατος εκχωρείται

επίσης µια ετικέτα ασφαλείας (classification ή security label). Η ετικέτα αυτή αντικατοπτρίζει το βαθµό στον οποίο το υποκείµενο κρίνεται αξιόπιστο ώστε να µη διοχετεύσει εµπιστευτικές πληροφορίες σε µη έµπιστα υποκείµενα.

Σε κάθε υποκείµενο και αντικείµενο λοιπόν, αποδίδονται ετικέτες (labels) που χαρακτηρίζουν το επίπεδο ασφαλείας στο οποίο έχουν κατηγοριοποιηθεί. Ο στόχος του µοντέλου MAC είναι η ασφαλέστερη διαχείριση της ροής πληροφορίας από και προς διαφορετικά επίπεδα. Τα µοντέλο µπορεί να εγγυηθεί µια συγκεκριµένη κατεύθυνση στη ροή των πληροφοριών και είναι υποχρεωτικό, υπό την έννοια ότι η εφαρµογή της πολιτικής εξουσιοδότησης δε βρίσκεται πλέον στη διακριτική ευχέρεια των χρηστών του συστήµατος (π.χ. σε αντίθεση µε το DAC, ένα υποκείµενο δεν µπορεί να µεταβιβάσει δικαιώµατα σε άλλα υποκείµενα). Οι επιλογή των ετικετών ασφαλείας γίνεται από µια διατεταγµένη λίστα ετικετών π.χ.

άκρως απόρρητο (top secret) > απόρρητο (secret) >

εµπιστευτικό (confidential) > αδιαβάθµητο (unclassified))

Page 14: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

14

3.3.1 Το Μοντέλο Bell-LaPadula Τα µοντέλα MAC εγγυώνται µια συγκεκριµένη κατεύθυνση στη ροή των πληροφοριών. H πλέον γνωστή υλοποίηση του «κατ’ απαίτηση» µοντέλου οφείλεται στους Bell και LaPadula. Το µοντέλο δίνει έµφαση στην εµπιστευτικότητα, καθώς αποτρέπει τη ροή πληροφοριών υψηλής εµπιστευτικότητας προς αντικείµενα-υποκείµενα χαµηλότερης εµπιστευτικότητας. Το µοντέλο έχει δυο βασικούς κανόνες (βλέπε σχήµα). Ο πρώτος αφορά την ανάγνωση δεδοµένων και ο δεύτερος την εγγραφή σε δεδοµένα. Παραδείγµατα:

• Εάν ένας χρήστης έχει διαβαθµιστεί ως ΑΠΟΡΡΗΤΟΣ, µπορεί να διαβάσει δεδοµένα που έχουν τη διαβάθµιση Α∆ΙΑΒΑΘΜΗΤΟ, ΕΜΠΙΣΤΕΥΤΙΚΟ, ΑΠΟΡΡΗΤΟ, αλλά δεν µπορεί να διαβάσει δεδοµένα µε τη διαβάθµιση ΑΚΡΩΣ ΑΠΟΡΡΗΤΟ.

• Εάν ένας χρήστης έχει διαβαθµιστεί ως ΑΠΟΡΡΗΤΟΣ, µπορεί να

δηµιουργήσει δεδοµένα µε τη διαβάθµιση ΑΠΟΡΡΗΤΟ, ή/και ΑΚΡΩΣ ΑΠΟΡΡΗΤΟ, αλλά δε µπορεί να δηµιουργήσει δεδοµένα µε τη διαβάθµιση ΕΜΠΙΣΤΕΥΤΙΚΟ, Α∆ΙΑΒΑΘΜΗΤΟ.

Σηµείωση: Ο δεύτερος κανόνας (o οποίος συνιστά και την καινοτοµία που εισήγαγε το µοντέλο των Bell-LaPadula) αντιµετωπίζει επιθέσεις παρόµοιες µε την επίθεση ∆ουρείου Ίππου που περιγράψαµε νωρίτερα. Σε µια παραλλαγή αυτής της επίθεσης ένας χρήστης ΑΠΟΡΡΗΤΟΣ (ή ένας δούρειος ίππος - trojan) έχει ως σκοπό την αποστολή, µέσω ηλεκτρονικής αλληλογραφίας, ενός εγγράφου µε τη διαβάθµιση ΑΠΟΡΡΗΤΟ σε έναν κακόβουλο χρήστη. Ο δούρειος ίππος θα µπορούσε να δηµιουργήσει ένα έγγραφο Α∆ΙΑΒΑΘΜΗΤΟ, και στη συνέχεια να αντιγράψει τα δεδοµένα του απορρήτου εγγράφου στο αδιαβάθµητο έγγραφο, προτού το αποστείλει µέσω ηλεκτρονικής αλληλογραφίας στον κακόβουλο παραλήπτη. Το σύστηµα που

Το µοντέλο Bell-LaPadulaΈµφαση στην εµπιστευτικότητα (confidentiality)

1. Κανένα υποκείµενο δε µπορεί να διαβάσει δεδοµένα ενόςυψηλότερου επιπέδου

2. Κανένα υποκείµενο δε µπορεί να γράψει δεδοµένα σε έναχαµηλότερο επίπεδο (η *-ιδιότητα)

Το µοντέλο BibaΈµφαση στην ακεραιότητα (integrity)

1. Κανένα υποκείµενο δε µπορεί να γράψει δεδοµένα σε έναυψηλότερο επίπεδο,

2. Κανένα υποκείµενο δε µπορεί να διαβάσει δεδοµένα σε έναχαµηλότερο επίπεδο

Εξουσιοδότηση «Κατ’ Απαίτηση»Mandatory Access Control (MAC)

Page 15: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

15

εκτελεί το µοντέλο Bell-Lapadula δεν θα επιτρέψει τέτοιες επιθέσεις, αφού η πολιτική ασφαλείας δεν επιτρέπει εγγραφή σε δεδοµένα χαµηλότερης διαβάθµισης.

3.3.2 Το Μοντέλο Biba To µοντέλο Biba. Το µοντέλο δίνει έµφαση στην διασφάλιση της ακεραιότητας των δεδοµένων του συστήµατος. Οι χρήστες δε µπορούν να δηµιουργούν πληροφορία µε ετικέτα διαβάθµισης υψηλότερη από τη δική τους. Επίσης, το µοντέλο αποτρέπει τη ροή πληροφοριών χαµηλής εµπιστευτικότητας προς αντικείµενα-υποκείµενα υψηλής εµπιστευτικότητας. Το µοντέλο έχει δυο βασικούς κανόνες. Ο πρώτος αφορά την εγγραφή σε δεδοµένα και ο δεύτερος την ανάγνωση δεδοµένων. Παραδείγµατα:

1. Εάν ένας χρήστης έχει διαβαθµιστεί ως ΑΠΟΡΡΗΤΟΣ, µπορεί να δηµιουργήσει δεδοµένα που έχουν τη διαβάθµιση Α∆ΙΑΒΑΘΜΗΤΟ, ΕΜΠΙΣΤΕΥΤΙΚΟ, ΑΠΟΡΡΗΤΟ, αλλά δεν µπορεί να δηµιουργήσει δεδοµένα µε τη διαβάθµιση ΑΚΡΩΣ ΑΠΟΡΡΗΤΟ.

2. Εάν ένας χρήστης έχει διαβαθµιστεί ως ΑΠΟΡΡΗΤΟΣ, µπορεί να διαβάσει

δεδοµένα µε τη διαβάθµιση ΑΠΟΡΡΗΤΟ, ή/και ΑΚΡΩΣ ΑΠΟΡΡΗΤΟ, αλλά δε µπορεί να διαβάσει δεδοµένα µε τη διαβάθµιση ΕΜΠΙΣΤΕΥΤΙΚΟ, Α∆ΙΑΒΑΘΜΗΤΟ.

Σηµείωση: Το µοντέλο Biba θα µπορούσε να χρησιµοποιηθεί για να αποτραπεί µια επίθεση κακόβουλου λογισµικού. Έστω ένας χρήστης του συστήµατος µε τη διαβάθµιση ΑΠΟΡΡΗΤΟΣ «κατεβάζει» (download) από το Internet ένα πρόγραµµα που φέρει έναν ιό (virus). Κατά τη λήψη του, το πρόγραµµα αυτόµατα διαβαθµίζεται εξ’ ορισµού ως Α∆ΙΑΒΑΘΜΗΤΟ. Όταν εκτελεστεί, o ιός προσπαθεί να πραγµατοποιήσει αλλαγές (να δηµιουργήσει δηλαδή µια εγγραφή) στο Μητρώο του συστήµατος (το Μητρώο έχει διαβάθµιση: ΑΠΟΡΡΗΤΟ) ώστε να εκτελείται κατά την εκκίνηση του Λ.Σ. Το µοντέλο Biba (1ος κανόνας) αντιµετωπίζει τέτοιου είδους επιθέσεις. Σε ένα άλλο παράδειγµα, καµιά διεργασία υψηλού επιπέδου δεν θα έπρεπε να λαµβάνει δεδοµένα από διεργασίες χαµηλότερου επιπέδου (2ος κανόνας). Σηµείωση: Ο 2ος κανόνας θα µπορούσε να βρει εφαρµογή σε ιατρικά περιβάλλοντα. Για παράδειγµα, ένας ιατρός µε διαβάθµιση ΑΠΟΡΡΗΤΟΣ διαχειρίζεται τον φάκελο µε τα προσωπικά δεδοµένα ενός ασθενούς. Ο φάκελος αυτός δε θα πρέπει να είναι αναγνώσιµος από ένα υποκείµενο µε υψηλότερη διαβάθµιση, αφού κάτι τέτοιο θα παραβίαζε τα προσωπικά δεδοµένα του ασθενούς.

Page 16: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

16

3.4 Εξουσιοδότηση Βασισµένη σε Ρόλους (RBAC) Εξουσιοδότηση «Βασισµένη σε ρόλους». Όπως δηλώνει το όνοµα του, το µοντέλο βασίζεται στην έννοια των ρόλων (roles): ρόλος είναι ένα σύνολο από ενέργειες και αρµοδιότητες που σχετίζονται µε τη λειτουργία του συστήµατος. Ο ρόλος ως έννοια είναι διαφορετικός από το υποκείµενο:

• Ένα υποκείµενο µπορεί να λειτουργήσει µε περισσότερους από έναν ρόλους. Για

παράδειγµα, µπορεί να έχει το ρόλο του διαχειριστή συστήµατος, του απλού

ΠλεονεκτήµαταΤο σύστηµα ελέγχει την επιβολή της πολιτικής εξουσιοδότησηςκαι όχι οι χρήστεςΚαλύτερος έλεγχος στη ροή της πληροφορίας από ασφαλή προςµη ασφαλή επίπεδα και αντίστροφαΑντιµετωπίζει µε επιτυχία προβλήµατα τύπου «επίθεση∆ουρείου Ίππου –trojan»Μπορεί να υλοποιηθεί µε µια εκ των δύο κατευθύνσεων

Έµφαση στην εµπιστευτικότητα (Bell-LaPadula)Έµφαση στην ακεραιότητα (Biba)

ΜειονεκτήµαταΈλλειψη ευελιξίας (κυρίως για εφαρµογές Internet)

Εξουσιοδότηση «Κατ’ Απαίτηση»Mandatory Access Control (MAC)

Role-based Access Control (RBAC)

palace

weapons

uniform

AthosAthos

PorthosPorthos

AramisAramis

D'ArtagnanD'Artagnan

Musketeer

palace

weapons

uniform

AthosAthosPorthosPorthosAramisAramis

D'ArtagnanD'Artagnan

DAC

RBAC

http://my.fit.edu/~tgillett/swe5900/week1/Access%20Control%20Concepts.ppt

Page 17: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

17

χρήστη, του υπεύθυνου καθηγητή ενός µαθήµατος. Τα δικαιώµατα που έχει το υποκείµενο, απορρέουν από τα δικαιώµατα του ρόλου του υποκειµένου, και ισχύουν για όσο διάστηµα το υποκείµενο λειτουργεί µε τον ρόλο αυτό.

• Ένας ρόλος µπορεί να ανήκει σε περισσότερους από έναν χρήστες (όχι

απαραίτητα την ίδια χρονική στιγµή). Τα δικαιώµατα πρόσβασης σε ένα αντικείµενο-δεδοµένο του συστήµατος εκχωρούνται σε συγκεκριµένα ονόµατα ρόλων. Μόνων όσοι χρήστες είναι εξουσιοδοτηµένοι να αναλαµβάνουν τους συγκεκριµένους ρόλους µπορούν να έχουν πρόσβαση στο αντικείµενο.

Παράδειγµα: Ο χρήστης Α, όταν αναλαµβάνει το ρόλο του ΚΑΘΗΓΗΤΗ µπορεί να διεκπεραιώνει, σύµφωνα µε την αρχή του ελάχιστου προνοµίου (least privilege), λειτουργίες όπως: Παραγγελία Βιβλίων και Επεξεργασία ∆ικτυακού Τόπου Μαθήµατος. Όταν ο Α θελήσει να επισκεφθεί µια σελίδα στο Web, τότε θα αναλάβει αυτόµατα π.χ. το ρόλο ΧΡΗΣΤΗΣ WEB, µε σαφώς περιορισµένα δικαιώµατα. Αν η σελίδα που επισκέπτεται περιέχει κακόβουλο κινητό κώδικα, π.χ. ActiveX, τότε το κακόβουλο λογισµικό θα εκτελεστεί «κληρονοµώντας» τα (περιορισµένα) δικαιώµατα του ρόλου ΧΡΗΣΤΗΣ WEB.

Ο διαχωρισµός των ρόλων από τους χρήστες του συστήµατος, προσφέρει ευελιξία σε περιβάλλονται όπου τα υποκείµενα (αλλά και οι αρµοδιότητες ενός υποκειµένου) υπόκεινται σε αλλαγές. Κατ’ αυτόν τον τρόπο, η πολιτική εξουσιοδότησης απλοποιείται καθώς µπορεί να αποσυνδεθεί από τα πρόσωπα που λαµβάνουν µέρος στο σύστηµα και να επικεντρωθεί στους ρόλους που έχει κάποιο υποκείµενο µια δεδοµένη χρονική στιγµή στο σύστηµα. Σηµείωση: Η διαφορά του ρόλου από την οµάδα. Στο κατά διάκριση µοντέλο DAC, µια Oµάδα (user group) είναι ένα σύνολο από υποκείµενα µε τα ίδια δικαιώµατα πρόσβασης. Στο µοντέλο RBAC, ρόλος είναι µία αρµοδιότητα ή ένα σύνολο από

Εξουσιοδότηση «Βασισµένη σε Ρόλους»Role-based Access Control (RBAC)

Ο Γιώργος, έχει το ρόλο «υπεύθυνος µισθολογίας»Ο Γιώργος, κάποια στιγµή, παραιτείταιΗ Μαρία, προσλαµβάνεται στην επιχείρησηΗ Μαρία, αποκτά το ρόλο «υπεύθυνος µισθολογίας»

Η πρόσβαση στο αρχείο µισθολογίας, επιτρέπεται στο ρόλο«υπεύθυνος µισθολογίας» (όχι στο Γιώργο ή στη Μαρία)Η Μαρία «κληρονοµεί» τα ελάχιστα δικαιώµατα που έχουν προ-εκχωρηθεί στο συγκεκριµένο ρόλο

Σε ένα ιεραρχικό σύστηµα, η Μαρία µπορεί να κληρονοµήσεικαι τα δικαιώµατα των ρόλων των ανώτερων επιπέδων

Σε αντίθεση µε το DAC, η Μαρία δε µπορεί να µεταβιβάσειδικαιώµατα

Page 18: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

18

αρµοδιότητες µε τα ίδια δικαιώµατα πρόσβασης, τις οποίες διεκπεραιώνουν ένα ή περισσότερα υποκείµενα. Το µοντέλο RBAC συνδυάζει µερικά από τα καλύτερα χαρακτηριστικά των δυο άλλων διαδεδοµένων µοντέλων εξουσιοδότησης: • Τον έλεγχο της ροής πληροφορίας του µοντέλου MAC: η πολιτική

εξουσιοδότησης ασκείται κεντρικά, αποδίδοντας δικαιώµατα πρόσβασης στους ρόλους και όχι στους χρήστες του συστήµατος. Σε αντίθεση µε το µοντέλο DAC, ο τελικός χρήστης στον οποίο επιτρέπεται η πρόσβαση σε ένα αντικείµενο δεν είναι ιδιοκτήτης-κάτοχος του αντικειµένου. O χρήστης είναι εξουσιοδοτηµένος να αναλάβει έναν ρόλο, και ο ρόλος έχει τα συγκεκριµένα δικαιώµατα πρόσβασης στο αντικείµενο. Τα δικαιώµατα πρόσβασης ενός ρόλου στο µοντέλο RBAC είναι τα ελάχιστα δικαιώµατα που χρειάζεται ο ρόλος για να λειτουργήσει, κάτι που αναφέρεται και ως η Αρχή των ελάχιστων προνοµίων (least privilege).

• Την ευελιξία του µοντέλου DAC. Σε κάθε χρήστη ανατίθενται ένας ή

περισσότεροι ρόλοι, και σε κάθε ρόλο εκχωρούνται συγκεκριµένα δικαιώµατα προσπέλασης. Τα δικαιώµατα αυτά αποκτώνται από κάθε χρήστη που αναλαµβάνει το συγκεκριµένο ρόλο. Οποιαδήποτε µεταβολή στις αρµοδιότητες ενός χρήστη δεν αποτελεί πρόβληµα, αφού είναι εύκολο να γίνει ανάκληση ενός ρόλου από έναν χρήστη και να του ανατεθεί κάποιος νέος ρόλος (ή νέοι ρόλοι). Επίσης, η αποµάκρυνση ενός χρήστη από το σύστηµα δεν αποτελεί πρόβληµα, αφού είναι εύκολο να ανακληθούν όλοι οι ρόλοι από έναν χρήστη. Νέες αρµοδιότητες-ευθύνες σε ένα σύστηµα µπορούν να οδηγήσουν στη δηµιουργία νέων ρόλων (και αντίστοιχα, στην ανάθεση των ρόλων αυτών σε χρήστες που έχουν την ικανότητα να τους αναλάβουν). Τέλος, σε αντίθεση µε το µοντέλο DAC, τα δικαιώµατα των διαφορετικών ρόλων που µπορεί να έχει ένας χρήστης δε λειτουργούν αθροιστικά: ο χρήστης έχει τα δικαιώµατα που απορρέουν από το ρόλο που αναλαµβάνει, για όσο χρονικό διάστηµα τον αναλαµβάνει.

Εξουσιοδότηση RBAC – Σύγκριση µε MAC, DAC

Ο χρήστης έχει πρόσβαση σε ένα αντικείµενο µόνον εάν ο ρόλος τουτη συγκεκριµένη στιγµή έχει τα δικαιώµατα

Οι χρήστες αλλάζουν συχνά, οι ρόλοι όµως όχι

Role 1

Role 2

Role 3

Server 1

Server 3

Server 2

http://cs.uccs.edu/~frsn/docs/RoleBasedAccesscontrol.ppt

Page 19: 3 Μοντέλα Ελέγχου Προσπέλασης195.130.124.90/~emagos/security/2/Simeiwseis Mathimatos - Author… · µνήµης, οι φάκελοι και τα αρχεία,

19

Ιεραρχίες Ρόλων. Στο µοντέλο RBAC, η έννοια του ρόλου αναβαθµίζεται µέσα από τις ιεραρχίες των ρόλων. Στους περισσότερους οργανισµούς-επιχειρήσεις, ορισµένες εργασίες-αρµοδιότητες είναι κοινές για ένα σύνολο χρηστών. Σε ένα σύστηµα όπου θα οριζόταν εκ νέου οι κοινές αυτές εργασίες σε κάθε ρόλο, ο διαχειριστικός φόρτος θα ήταν µεγάλος. Για αυτόν το λόγο δηµιουργήθηκε η ανάγκη δηµιουργίας µιας ιεραρχίας ρόλων, όπου ο ρόλος ενός επιπέδου θα κληρονοµεί τα δικαιώµατα πρόσβασης των ρόλων που βρίσκονται στο επίπεδο πάνω από αυτόν.

Σηµείωση: ∆εν υπάρχουν “καλά” και “κακά” µοντέλα ελέγχου πρόσβασης / εξουσιοδότησης. Όλα τα συστήµατα δεν έχουν τις ίδιες απαιτήσεις ασφάλειας. Έτσι, µοντέλα εξουσιοδότησης που είναι κατάλληλα για ένα σύστηµα µπορεί να είναι ακατάλληλα για ένα άλλο σύστηµα. Η επιλογή του µοντέλου εξουσιοδότησης εξαρτάται από τα επιµέρους χαρακτηριστικά του συστήµατος που πρόκειται να προστατευθεί, ως αποτέλεσµα της διαδικασίας Ανάλυσης Επικινδυνότητας.