Professional Documents
Culture Documents
Lecture 5 - Security
Lecture 5 - Security
και Νέφους
ΘΕΜΑΤΑ & ΜΗΧΑΝΙΣΜΟΙ
ΑΣΦΑΛΕΙΑΣ ΣΤΟ ΝΕΦΟΣ
Κυριάκος Κρητικός
Αναπλ. Καθηγητής
Τμήμα Μηχανικών Πληροφοριακών και
Επικοινωνιακών Συστημάτων
Περίγραμμα – Θέματα Ασφάλειας
• Θεμελιώσεις
• Παράγοντες Επίδρασης στην Ασφάλεια
• Πράκτορες Απειλών
• Απειλές στην Ασφάλεια του Νέφους
• Επιπρόσθετα Θέματα Ασφάλειας
• Μηχανισμοί & Τεχνικές Ασφάλειας
Ασφάλεια
• Βασικό θέμα και στόχος σε ένα νέφος είναι η
προστασία όλων των πόρων που φιλοξενούνται
και προσφέρονται
• Πόροι μπορεί να είναι:
▫ Αρχεία, δεδομένα, βάσεις
▫ Λογισμικό, υπηρεσίες
▫ Εικονικοί πόροι (π.χ., εικονικοί εξυπηρετητές,
εικονικές συσκευές αποθήκευσης)
▫ Φυσικοί πόροι (π.χ., φυσικοί εξυπηρετητές,
φυσικές συσκευές αποθήκευσης)
Βασικές Αρχές – Εμπιστευτικότητα
(Confidentiality)
• Πρόσβαση σε πόρο μόνο από εξουσιοδοτημένα
μέρη
• Είδη πόρων προς προστασία:
▫ Υπολογιστικοί πόροι
▫ Διαβατικά δεδομένα
▫ Δεδομένα αποθηκευμένα σε χώρους αποθήκευσης
Βασικές Αρχές – Ακεραιότητα
(Integrity)
• Μη τροποποίηση πόρου από μη εξουσιοδοτημένο
μέρος
• Σημαντικό ζήτημα για δεδομένα:
▫ Τα δεδομένα παράδοσης από έναν καταναλωτή
συμφωνούν με αυτά που λήφθηκαν από την
αντίστοιχη υπηρεσία
• Για δεδομένα, η ακεραιότητα επεκτείνεται ως προς
πως
▫ τα δεδομένα αποθηκεύονται
▫ γίνεται η επεξεργασία σε αυτά
▫ επαναφέρονται από υπηρεσίες και άλλα είδη πόρων
στο ΥΝ
Πηγή: [1]
Βασικές Αρχές – Αυθεντικότητα
(Authenticity)
• Παροχή πόρου από μια εξουσιοδοτημένη πηγή
• Περιλαμβάνει την μη αποκήρυξη (non-repudiation)
που είναι η αδυναμία ενός μέρους να αρνηθεί ή να
αμφισβητήσει την αυθεντικότητα μιας
αλληλεπίδρασης
• Πολύ χρήσιμη στην διενέργεια συναλλαγών που
έχουν εμπορικό & οικονομικό αντίκτυπο
▫ Παράδειγμα:
Ένας χρήστης δεν μπορεί να προσπελάσει ένα αρχείο μη
αποκήρυξης, μετά την έκδοση μιας απόδειξης, χωρίς να
παράγει μια εγγραφή για αυτή την πρόσβαση
Βασικές Αρχές – Διαθεσιμότητα
Πηγή: [2]
Γενικά Είδη Απειλών – Απειλές σε Δεδομένα
• 4 είδη απειλών:
▫ Παραβίαση δεδομένων (data breach)
Κατάσταση ή συμβάν όπου η εμπιστευτικότητα της ιδιωτικής πληροφορίας ενός
ατόμου (πχ. οικονομικές πληροφορίες ή εγγραφές υγείας) φανερώνονται σε μη
εξουσιοδοτημένα άτομα
▫ Απώλεια δεδομένων (data loss)
Μπορεί να συμβεί οποιαδήποτε στιγμή για διάφορους λόγους όπως φυσικές
καταστροφές, αποτυχία εξυπηρετητών, ανθρώπινα λάθη και λάθη δικτύου
▫ Κλείδωμα δεδομένων (data lock-in)
Αναφέρεται στην κατάσταση όπου οι καταναλωτές νέφους κλειδώνονται σε
έναν πάροχο λόγω χρήσης ιδιόκτητων τεχνολογιών, διεπαφών και νομικών
συμβολαίων
Δεν είναι βέβαιο τι θα συμβεί στα δεδομένα κατά την μετανάστευση σε άλλο
πάροχο
Τα δεδομένα μπορεί να τροποποιηθούν για λόγους συμβατότητας
▫ Αυτό μπορεί να έχει αρνητική επίδραση στην ακεραιότητα δεδομένων
▫ Διαφυγή δεδομένων (data remanence)
Αναφέρεται στην διατήρηση των δεδομένων ακόμη και μετά από μια διαγραφή
Πχ. τα δεδομένα υπό διαγραφή μπορεί απλώς να σημειώνονται και όχι να διαγράφονται
πραγματικά
Το φαινόμενο αυτό μπορεί να οδηγήσει τόσο σε εσκεμμένη ή ακούσια
αποκάλυψη ευαίσθητης πληροφορίας σε μη εξουσιοδοτημένα άτομα
Γενικά Είδη Απειλών – Απειλές σε Εφαρμογές
• Υπάρχουν 4 απειλές
▫ Έκχυση κακόβουλου λογισμικού (malware injection)
Αναφέρεται στο γεγονός έκχυσης κακόβουλου λογισμικού σε μια εφαρμογή από έναν
επιτιθέμενο, ο οποίος εκμεταλλεύεται τις τρωτότητες της εφαρμογής
Η εκτέλεση του κακόβουλου λογισμικού θα οδηγήσει σε ανεπιθύμητες ενέργειες, η επίδραση
των οποίων μπορεί να ποικίλλει
Να τονιστεί πως ένας επιτιθέμενος μπορεί να εκχύσει μια κακόβουλη εικόνα ιδεατής
μηχανής ή υπηρεσία σε ένα σύστημα νέφους
▫ Επιλογές πίσω πόρτας & αποσφαλμάτωσης (backdoor & debug options)
Αποτελούν κοινές πρακτικές ανάπτυξης των προγραμματιστών για λόγους αποσφαλμάτωσης
Αν κώδικας πίσω πόρτας παραμείνει σε μια εφαρμογή σε περιβάλλον παραγωγής, τότε
μπορεί να ανιχνευθεί και να γίνει εκμεταλλεύσιμος από επιτιθέμενους
▫ Κρυφά πεδία σε φόρμες ιστού (hidden fields in web forms)
Κρυφά πεδία φόρμας σε κώδικα HTML που περιέχουν μεταβλητές κατάστασης στις οποίες
καταχωρείται κρίσιμη πληροφορία όπως κωδικοί
Αυτά μπορεί να γίνουν ορατά όταν οπτικοποιείται ο πηγαίος κώδικας μιας ιστοσελίδας
Οπότε ένας επιτιθέμενος μπορεί είτε να προσπελάσει κρίσιμη πληροφορία ή να αλλάξει το
περιεχόμενό της
▫ Κακή διαμόρφωση εφαρμογών (application misconfiguration)
Αν οι εφαρμογές διαμορφωθούν με λιγότερο ασφαλής ρυθμίσεις, είναι δυνατή η
εκμετάλλευσή των αντίστοιχων κενών από επιτιθέμενους
Πχ. ένας εξυπηρετητής ιστού μπορεί να έχει διαμορφωθεί ώστε να επιτρέπει στην πλοήγηση και
πρόσβαση σε διάφορα ευρετήρια, δεδομένα και πόρους του συστήματος
Πχ. προκαθορισμένες εφαρμογές και υπηρεσίες web container που είναι ευάλωτες όσον αφορά
την ασφάλεια
Γενικά Είδη Απειλών – Απειλές σε
Εξυπηρετητές & Δίκτυο
• Μπορεί να είναι παθητικές ή ενεργές και χωρίζονται σε:
▫ Υποκλοπή της κυκλοφορίας (traffic eavesdropping)
Παθητική υποκλοπή δεδομένων από τον επιτιθέμενο / ενδιάμεσο που οδηγεί σε
παραβίαση εμπιστευτικότητας δεδομένων
▫ Επίθεση επανάληψης (replay attack)
Ο επιτιθέμενος μπορεί να υποκλέψει ένα μήνυμα και να επαναλάβει την αποστολή του
μηνύματος στον παραλήπτη, ο οποίος υποθέτει πως το μήνυμα έρχεται από τον
αρχικό/γνήσιο αποστολέα
▫ Επίθεση ενδιάμεσου (man-in-the-middle attack)
Ο επιτιθέμενος μπαίνει ανάμεσα στον καταναλωτή και τον πάροχο/υπηρεσία νέφους
Μπορεί παθητικά να υποκλέψει πληροφορία ή μπορεί να πλαστογραφήσει τον
καταναλωτή ώστε να εκτελέσει ενεργές επιθέσεις
Μπορεί επίσης να πλαστογραφείται ο πάροχος/υπηρεσίας έτσι ώστε ο καταναλωτής να
ξεγελαστεί ώστε να επικοινωνεί με τον επιτιθέμενο κι όχι με τον πάροχο/υπηρεσία
▫ Επιθέσεις έκχυσης κακόβουλου λογισμικού (malware injection attack)
Ο επιτιθέμενος εισάγει μια κακόβουλη υπηρεσία ή κώδικα στις υπηρεσίες που παρέχονται
από τον αντίστοιχο πάροχο εκμεταλλευόμενος τρωτότητες στο λογισμικό του νέφους
Το κακόβουλο λογισμικό αντιστοιχεί σε ενεργό περιεχόμενο όπως ιούς ή σκουλήκια
Το αυξανόμενο πλήθος στον αριθμό των κινητών συσκευών και κοινωνικών μέσων που
χρησιμοποιούνται έχει οδηγήσει σε αύξηση της δημιουργίας κακόβουλων λογισμικών
Διαφορετικά είδη κακόβουλου λογισμικού στοχεύουν σε διαφορετικούς πόρους της υποδομής
νέφους όπως εξυπηρετητές, συσκευές αποθήκευσης δεδομένων και δικτυακές συσκευές
Πηγή: [2]
Γενικά Είδη Απειλών – Απειλές σε
Εξυπηρετητές & Δίκτυο
▫ Πειρατεία συνόδων (session hijacking)
Ο επιτιθέμενος ψάχνει σε ένα δίκτυο με υψηλή κίνηση για χρήστες που
χρησιμοποιούν λιγότερο ασφαλή πρωτόκολλα και παρεμβάλλεται ώστε
να υποκλέψει την ταυτότητα συνόδου τους και να τους
πλαστογραφήσει με την βοήθεια εργαλείων λογισμικού για υποκλοπή
πακέτων και σάρωση θυρών
▫ Άρνηση υπηρεσίας (denial-of-service)
Στοχεύει στην διακοπή των υπηρεσιών προς νόμιμους χρήστες από
έναν εξυπηρετητή νέφους είτε για συγκεκριμένο χρονικό διάστημα ή
και για πάντα
Ο επιτιθέμενος προσπαθεί να καταναλώσει το διαθέσιμο εύρος ζώνης
δικτύου και να επιτεθεί στον εξυπηρετητή πλημμυρίζοντάς τον με
ψευδή δεδομένα ή αιτήσεις ώστε ο εξυπηρετητής και οι υποκείμενοι
πόροι του να κατακλυστούν
Μπορεί να πάρει απλή ή κατανεμημένη μορφή
Απλή μορφή: οι επιθέσεις πραγματοποιούνται μόνο από πια πηγή
Κατανεμημένη μορφή: οι επιθέσεις πραγματοποιούνται από ένα δίκτυο από
ξενιστές (πχ. δίκτυο από υπολογιστές ζόμπι)
Είδη Επιθέσεων Άρνησης Υπηρεσίας
Πηγή: [2]
Είδη Επιθέσεων Άρνησης Υπηρεσίας
• Επίθεση πλημμυρίσματος (flooding attack)
▫ Ο επιτιθέμενος πλαστογραφεί έναν νόμιμο χρήστη και αποκτά πρόσβαση στο νέφος ως
ταυτοποιημένος χρήστης
▫ Έπειτα, δημιουργεί μεγάλες ψευδείς αιτήσεις ICMP (Internet Control Message
Protocol) και τις στέλνει σε εξυπηρετητές νέφους
▫ Οι εξυπηρετητές θα προσπαθήσουν να επικυρώσουν την αυθεντικότητα των ψευδών
αιτήσεων αντί να εξυπηρετήσουν τους νόμιμους χρήστες
• Επίθεση βασιζόμενη στο πρωτόκολλο (protocol-based attack)
▫ Επίθεση ping of death
Σύμφωνα με το πρωτόκολλο IP το μέγεθος ενός ping/IP πακέτου με το ωφέλιμό του φορτίο
είναι 65535 bytes αλλά συνήθως το μέγεθος των ping πακέτων που στέλνονται είναι
αρκετά μικρότερο
Τα περισσότερα ΛΣ δεν γνωρίζουν πως να χειριστούν μεγάλα ping πακέτα οπότε είτε
κρασάρουν ή επανεκκινούνται
▫ Επίθεση SYN
Αφορά αδυναμία της διαδικασίας χειραψίας του TCP πρωτοκόλλου
Ο επιτιθέμενος στέλνει ένα μεγάλο αριθμό από SYN αιτήσεις με πλαστές διευθύνσεις πηγής
Σε κάθε αίτηση, ο εξυπηρετητής αναγκάζεται να ανοίξει σύνδεση με την πλαστή διεύθυνση, να
στείλει μια απάντηση SYN-ACK και έπειτα να αναμένει πίσω μια απάντηση ACK από τον
υποτιθέμενο πελάτη (πράγμα που δεν συμβαίνει)
Οπότε, η ουρά TCP του εξυπηρετητή θα γεμίσει και δεν θα μπορεί πια να εξυπηρετήσει
πραγματικούς πελάτες
Επίσης, οι ανοικτές συνδέσεις καταναλώνουν πόρους κάνοντας τον εξυπηρετητή πολύ αργό
Πηγή: [2]
Είδη Επιθέσεων Άρνησης Υπηρεσίας
• Υπερχείλιση αποταμιευτή (buffer overflow)
▫ Ο επιτιθέμενος στέλνει ψευδή δεδομένα με περισσότερο μέγεθος σε σχέση με
αυτό του αποταμιευτή, επαναγράφοντας με αυτό τον τρόπο τα πραγματικά
δεδομένα
▫ Μπορεί να επαναγραφούν και δεδομένα στην κύρια μνήμη πέρα από τα όρια
του αποταμιευτή, οδηγώντας σε λανθάνουσα συμπεριφορά προγραμμάτων,
συμπεριλαμβανομένου λαθών πρόσβασης στη μνήμη, λανθασμένων
αποτελεσμάτων και κρασαρισμάτων
• Δύσμορφα Πακέτα (malformed packet)
▫ Ο επιτιθέμενος αποστέλλει πακέτα με λανθασμένη μορφοποίηση στον
εξυπηρετητή
Υπάρχουν 2 είδη επιθέσεων που μπορούν να συμβούν μέσω IP πακέτων
Επίθεση διεύθυνσης ΙΡ
▫ Χρήση ίδιας διεύθυνσης πηγής και προορισμού. Ο εξυπηρετητής δεν γνωρίζει τι να κάνει
με το κακόβουλο πακέτο και μπορεί να κρασάρει
Επίθεση επιλογής
▫ Ο επιτιθέμενος συμπληρώνει όλες τις επιλογές του ΙΡ πακέτου
▫ Οπότε, παίρνει πολύ περισσότερο χρόνο η επεξεργασία του πακέτου από τον εξυπηρετητή
▫ Αν σταλούν πολλά δύσμορφα πακέτα, τότε ο εξυπηρετητής δεν μπορεί να καταναλώσει
χρόνο για την εξυπηρέτηση πραγματικών, εύμορφων πακέτων
Πηγή: [2]
Είδη Επιθέσεων Άρνησης Υπηρεσίας
• Επίθεση ανάκλασης (reflection attack)
▫ Ο επιτιθέμενος χρησιμοποιεί πολλά ενδιάμεσα συστήματα (ένα botnet)
για να επιτεθεί σε έναν εξυπηρετητή
▫ Το δίκτυο των ενδιάμεσων συστημάτων διαμορφώνεται ώστε να ανακλά
ή να προωθεί ψευδής αιτήσεις στον εξυπηρετητή
Μπορεί επίσης να χρησιμοποιηθεί ένα κυμαινόμενο εύρος από IP
διευθύνσεις ώστε και το ίδιο το δίκτυο να παραμείνει μη ανιχνεύσιμο
• Επίθεση ενίσχυσης (amplification attack)
▫ Παρόμοια με την επίθεση ανάκλασης αλλά πιο αφόρητη
▫ Ο επιτιθέμενος χρησιμοποιεί πρωτόκολλα όπως το NTP (Network Time
Protocol) που μπορεί να περιλαμβάνουν επερωτήσεις που μπορεί να
οδηγούν σε πολύ μεγάλες απαντήσεις
Πχ. η επερώτηση MON_GETLIST αφορά τις διευθύνσεις με τις οποίες
έχει επικοινωνήσει ο εξυπηρετητής
Η απάντηση σε μια τέτοια επερώτηση είναι μεγάλη διότι μπορεί να
περιλαμβάνει τις διευθύνσεις μέχρι 600 μηχανημάτων
▫ Οπότε, αποστέλλει ένα μεγάλο πλήθος από τέτοιες επερωτήσεις για να
κατακλύσει τους πόρους των αντίστοιχων εξυπηρετητών (στο νέφος)
Πηγή: [2]
Γενικά Είδη Απειλών
• Τρωτότητες σε APIs Νεφών
▫ Οι υπηρεσίες νέφους συνήθως προσφέρονται κι μέσω ενός API
▫ Οπότε, οποιαδήποτε τρωτότητα αφορά ένα τέτοιο API μπορεί να
έχει αντίκτυπο στην ασφάλεια των υποκείμενων πόρων και
υπηρεσιών
Πχ. λάθος προσδιορισμός κανόνων πρόσβασης, μη χρήση
κρυπτογράφησης, κλπ.
• Εσωτερικές Απειλές
▫ Απειλή που τίθεται από ένα εξουσιοδοτημένο άτομο, το οποίο
κακομεταχειρίζεται τα δικαιώματά του
▫ Μπορεί να οδηγήσει σε μεγαλύτερο αντίκτυπο διότι ένα τέτοιο
άτομο έχει περισσότερα δικαιώματα από έναν εξωτερικό
επιτιθέμενο
▫ Το άτομο αυτό μπορεί να εργάζεται για τον πάροχο ή για μια
επιχείρηση που χρησιμοποιεί τις υπηρεσίες που προσφέρονται
από το νέφος
Ελαττωματικές Υλοποιήσεις
• Η ακεραιότητα, εμπιστευτικότητα και
διαθεσιμότητα των πόρων ΤΠ ενός νέφους (τόσο
των φυσικών πόρων ΤΠ του πάροχου όσο και των
εικονικών πόρων ΤΠ των καταναλωτών που
φιλοξενούνται από τους φυσικούς) μπορεί να
επηρεαστεί αρνητικά από τρωτότητες που
εισάγονται λόγω ανεπαρκής σχεδίασης, υλοποίησης
ή συγκρότησης υπηρεσιών νέφους
• Παράδειγμα:
▫ Λανθασμένα υλοποιημένη υπηρεσία νέφους οδηγεί σε
κατάρρευση του εικονικού εξυπηρετητή που την
φιλοξενεί
Αυτό έχει επίπτωση και στα άλλα στιγμιότυπα ή
υπηρεσίες νέφους που εξυπηρετούνται από τον ίδιο
εξυπηρετητή
Πηγή: [1]
Πηγή: [2]
Πηγή: [2]
Απειλές λόγω Εικονικοποίησης στο
Επίπεδο IaaS
• Επίθεση στον hypervisor μέσω του ΛΣ φιλοξενίας
▫ Η εικονικοποίηση πραγματοποιείται συνήθως στο ΛΣ φιλοξενίας
λόγω κόστους
▫ Οπότε, είναι δυνατό ένας επιτιθέμενος να εκμεταλλευτεί τρωτότητες
αυτού του ΛΣ ώστε να επιτεθεί στον hypervisor και στις ιδεατές
μηχανές πάνω από αυτόν
• Επίθεση απόδρασης ιδεατής μηχανής (VM escape attack)
▫ Μια ιδεατή μηχανή είναι ένα απομονωμένο υπολογιστικό περιβάλλον
που προσφέρεται στους καταναλωτές ώστε να μπορούν να
διατάσσουν το φιλοξενούμενο ΛΣ και άλλα είδη λογισμικού πάνω
από αυτό χωρίς να διαταράσσεται αυτό το περιβάλλον
▫ Σε αυτό το είδος επίθεσης, ο επιτιθέμενος μπορεί να τρέξει
κακόβουλο κώδικα στην ιδεατή μηχανή που επιτρέπει στο
φιλοξενούμενο ΛΣ της να εκμεταλλευτεί τρωτότητες της ιδεατής
μηχανής ώστε να αλληλεπιδράσει με τον υποκείμενο hypervisor ή με
άλλες ιδεατές μηχανές που διαμοιράζονται το ίδιο υλικό
Πηγή: [2]
Απειλές Λόγω Εικονικοποίησης στο
Επίπεδο IaaS
• Επίθεση Πειρατείας (hyperjacking attack)
▫ Ο επιτιθέμενος δανείζεται μια ιδεατή μηχανή ώστε να εγκαταστήσει
ένα κακόβουλο ΛΣ, το οποίο εκμεταλλεύεται τρωτότητες του
υποκείμενου hypervisor
Μπορεί να αλλάξει τον πηγαίο κώδικα του hypervisor ώστε να πάρει
τον έλεγχο της μνήμης και των δεδομένων άλλων (φιλοξενούμενων)
ιδεατών μηχανών
• Επίθεση πλευρικού καναλιού (cache-based side channel virtual
machine attack)
▫ Κάθε ΚΜΕ σε μια αρχιτεκτονική υλικού πολλαπλών ΚΜΕ έχει
ξεχωριστή κρυφή μνήμη μόνο για 2 επίπεδα (L1 & L2). Όμως, η
κρυφή μνήμη για το τρίτο επίπεδο (L3) είναι κοινή για περισσότερες
από μια ΚΜΕ
▫ Αυτό το γεγονός μπορεί να γίνει εκμεταλλεύσιμο από έναν
επιτιθέμενο
Λόγω ανεπαρκούς λογικής απομόνωσης στο επίπεδο L3, είναι δυνατή η
έκθεση δεδομένων και πληροφορίας από την ιδεατή μηχανή με την
οποία συνφιλοξενείται η ιδεατή μηχανή του επιτιθέμενου
Αυτό πραγματοποιείται μέσω μια επίθεσης πλευρικού καναλιού
Πηγή: [2]
Απειλές Λόγω Εικονικοποίησης στο
Επίπεδο IaaS
• Επίθεση μετανάστευσης ιδεατής μηχανής (VM migration attack)
▫ Μια ιδεατή μηχανή είναι απλώς ένα σύνολο από αρχεία αποθηκευμένα σε έναν ξενιστή.
Μπορεί να καταναλώσει διάφορα είδη πόρων
▫ Η μετανάστευση ιδεατών μηχανών αναφέρεται στην διαδικασία μετακίνησης μιας
ιδεατής μηχανής (δηλ. των αρχείων της) και της κατάστασης των πόρων της από έναν
φυσικό ξενιστή σε έναν άλλο
Μπορεί να πραγματοποιηθεί για διάφορους λόγους: εξισορρόπηση φορτίου, διαθεσιμότητα,
αξιοπιστία, διαχείριση ενέργειας, διατήρηση και ανάνηψη από αποτυχία ξενιστή
Η μετανάστευση πραγματοποιείται με την βοήθεια της ενότητας μετανάστευσης (migration
module)
Μπορεί να πραγματοποιηθεί με 2 τρόπους
Ψυχρή μετανάστευση (cold migration)
▫ Οι εφαρμογές που εκτελούνται στο φιλοξενούμενο ΛΣ παύονται πριν την μετανάστευση και
ανακινούνται μετά από αυτήν
▫ Οδηγούν σε υψηλό χρόνο αργίας (downtime)
Ζωντανή μετανάστευση (live migration)
▫ Η εκτέλεση των εφαρμογών δεν παύεται
▫ Από την μεριά της ασφάλειας, υπάρχουν 3 περιοχές σχετικές με την μετανάστευση
ιδεατών μηχανών που μπορούν να υποστούν επίθεση
Οι διεπαφές κονσόλας διοίκησης, τα περιεχόμενα ή δεδομένα της ιδεατής μηχανής & η
ενότητα μετανάστευσης
Πηγή: [2]
Επιθέσεις Μετανάστευσης
• Επίθεση στην διεπαφή κονσόλας διοίκησης (administrative
console interface attack)
▫ Η μετανάστευση ιδεατών μηχανών είναι υπό τον έλεγχο του
διαχειριστή (όταν πραγματοποιείται χειρωνακτικά)
Αυτός πρέπει να πραγματοποιήσει ορισμένες ενέργειες μέσω της
κονσόλας διοίκησης όπως προετοιμασία για την μετανάστευση,
εγκαθίδρυση των απαραίτητων πόρων στους ξενιστές πηγής και
προορισμού, μεταφορά των καταστάσεων της διαδικασίας και της
μνήμης, την δημιουργία νέας ιδεατής μηχανής, την ενεργοποίησή της
και την διαγραφή της αντίστοιχης ιδεατής μηχανής στον πηγαίο
ξενιστή
▫ Συνεπώς, οποιοδήποτε είδος τρωτότητας στην κονσόλα διοίκησης
μπορεί να οδηγήσει σε διάφορες επιθέσεις και αντίστοιχες
ανεπιθύμητες ενέργειες:
Ανεπιθύμητη μετανάστευση (εκκινούμενη από τον επιτιθέμενο) με
πιθανό στόχο που θα μπορούσε να προσδιοριστεί από τον επιτιθέμενο
Άρνησης υπηρεσίας (δημιουργία πολλαπλών ιδεατών μηχανών και
υπερφόρτωση του ΛΣ φιλοξενίας)
Επιθέσεις Μετανάστευσης
• Επίθεση στην κατάσταση ιδεατής μηχανής κατά την
μετανάστευση
▫ Ο επιτιθέμενος μπορεί να διενεργήσει παθητικές και
ενεργές επιθέσεις στην κατάσταση όσον αφορά την
ΚΜΕ, την κύρια μνήμη και το δίκτυο κατά την
μετανάστευση μιας ιδεατής μηχανής όταν
χρησιμοποιείται ένα μη κρυπτογραφημένο κανάλι
Κατά τις παθητικές επιθέσεις μπορεί να αντλήσει
πληροφορία όπως δεδομένα εφαρμογής, μηνύματα,
διαπιστευτήρια και tokens ασφάλειας
Κατά τις ενεργητικές επιθέσεις, μπορεί να αλλάξει την
κατάσταση της εφαρμογής, των διαδικασιών και της
κύριας μνήμης
Επιθέσεις Μετανάστευσης
• Επίθεση στην ενότητα μετανάστευσης
▫ Ο στόχος είναι η μετέπειτα επίθεση στον hypervisor
ώστε να αναληφθεί ο έλεγχός του και άρα και των
ιδεατών μηχανών που αυτός διαχειρίζεται
Απειλές Λόγω Εικονικοποίησης στο
Επίπεδο IaaS
• Επίθεση στην φιλοξενούμενη εικόνα (guest image
attack)
▫ Η δημιουργία πολλών εικόνων φιλοξενούμενων ΛΣ και η
αποθήκευσή τους στον δίσκο όχι μόνο καταναλώνει
πόρους αποθήκευσης αλλά δημιουργεί το ρίσκο επίθεσης
ως προς την πρόσβαση αυτών των δεδομένων με μη
εξουσιοδοτημένο τρόπο
▫ Ο επιτιθέμενος μπορεί να αντλήσει πληροφορία για το
σημείο ελέγχου ιδεατής μηχανής (VM checkpoint),
δηλαδή ενός checkpoint για το περιεχόμενο φυσικής
μνήμης της ιδεατής μηχανής
Αυτό μπορεί να οδηγήσει στην έκθεση εμπιστευτικών
δεδομένων
Οπότε θα πρέπει να περιορίζεται αισθητά η δημιουργία
εικόνων φιλοξενούμενων ΛΣ
Συν-ευθυνότητες στο Επίπεδο IaaS
Πηγή: [2]
Μέτρα Πρόληψης Επιθέσεων στην
Εικονικοποίηση στο Επίπεδο IaaS
• Οι επιθέσεις στην εικονικοποίηση οφείλονται στην απουσία
φυσικής απομόνωσης σε σχέση με την λογική απομόνωση που
έχει ήδη επιτευχθεί
• Οπότε θα πρέπει να ληφθούν μέτρα προς αυτή την κατεύθυνση:
▫ Η φυσική υποδομή νέφους θα πρέπει να διατηρηθεί ασφαλής από
εσωτερικές επιθέσεις
Θα πρέπει να εξασφαλιστεί πως δωμάτια εξυπηρετητών, οι
εξυπηρετητές, οι συσκευές αποθήκευσης και δικτύωσης και άλλα είδη
φυσικών υποδομών είναι ασφαλή
Θα πρέπει να ληφθεί υπόψη η συμπεριφορά των εσωτερικών χρηστών
λόγω της πιθανής χρήσης κοινωνικής μηχανικής (social engineering)
από τους επιτιθέμενους
▫ Περιορισμός με αυστηρά δικαιώματα της κονσόλας hypervisor
▫ Διατήρηση της ακεραιότητας κώδικα του hypervisor με την βοήθεια
εργαλείων όπως το HyperSage
▫ Σκλήρυνση του hypervisor
Διαδικασία αφαίρεσης μη υποχρεωτικού ή επιθυμητού λογισμικού από
τον hypervisor στην συγκεκριμένη περίπτωση
Μέτρα Πρόληψης Επιθέσεων στην
Εικονικοποίηση στο Επίπεδο IaaS
• Οπότε θα πρέπει να ληφθούν μέτρα προς αυτή την κατεύθυνση
(συνέχεια):
▫ Η επικοινωνία μεταξύ του hypervisor και των ιδεατών μηχανών θα πρέπει να
διαμορφωθεί κατάλληλα
▫ Ο hypervisor θα πρέπει να ανανεωθεί με patches ενάντια στις τρέχουσες
απειλές και πιθανά σφάλματα (bugs)
▫ Εγκατάσταση μηχανισμών τειχών προστασίας (firewalls) και συστημάτων
πρόληψης εισβολών (intrusion prevention systems) για την πρόληψη
επιθέσεων δικτύου
▫ Τα φιλοξενούμενα ΛΣ και οι ιδεατές μηχανές θα πρέπει να εξοπλισθούν με
εργαλεία ασφάλειας όπως αντι-ιικά καθώς και να σκληρυνθούν
▫ Τα αρχεία φιλοξενούμενων ΛΣ πρέπει να σαρωθούν για την ανίχνευση ιών,
σκουληκιών, κακόβουλου λογισμικού εν γένει
▫ Τα δεδομένα μιας ιδεατής μηχανής όταν αυτή μεταναστεύσει σε άλλον
ξενιστή θα πρέπει να διαγράφονται. Το ίδιο πρέπει να ισχύει και για τα
αντίγραφα ασφαλείας των ιδεατών μηχανών
▫ Οι μη χρειαζούμενες εικόνες φιλοξενούμενων ΛΣ θα πρέπει επίσης να
διαγράφονται
Απειλές Εικονικοποίησης & Άλλα
Θέματα Ασφάλειας στο Επίπεδο PaaS
• Οι πάροχοι PaaS υπηρεσιών πρέπει να γνωρίζουν πως υπάρχουν επιπρόσθετοι περιορισμοί και
επιπλέον απειλές ασφάλειας λόγω της χρήσης διαφόρων εικονικοποιημένων συστατικών μερών
σε περιβάλλοντα PaaS
▫ Οπότε θα πρέπει να διατηρηθεί η ακεραιότητα του περιβάλλοντος ανάπτυξης και διάταξης καθώς και
των σχετικών εφαρμογών
• Απειλές ασφάλειας στο επίπεδο αυτό
▫ Ετερογενής πόροι και κακή διαμόρφωση εφαρμογών
Η ετερογένεια των διαφορετικών πόρων υλικού και λογισμικού μπορεί να δημιουργήσει προβλήματα
στην διαμόρφωση ρυθμίσεων ασφάλειας λόγω της ετερογένειας αυτών των ρυθμίσεων
Αν ο προγραμματιστής εφαρμογής διαμορφώσει λανθασμένα μια εφαρμογή με φτωχές ή λιγότερο
ασφαλής ρυθμίσεις, τότε η διαμόρφωση αυτή είναι τρωτή ως προς επιθέσεις ασφάλειας
▫ Μετανάστευση εφαρμογών και έλλειψη προτυποποίησης σε APIs πρόσβασης πόρων
Οι εφαρμογές μπορεί να μεταναστεύουν κατά μήκος ΛΣ και ξενιστών για διάφορους λόγους (απόδοση,
διαθεσιμότητα, κλιμακωσιμότητα, κλπ.)
Επειδή οι πόροι είναι ετερογενής και διαφορετικοί ως προς την φύση τους, η πρόσβαση σε αυτούς δεν
είναι ομοιόμορφη
Η πρόσβαση πραγματοποιείται μέσω APIs
Η ανομοιομορφία των APIs πρόσβασης μπορεί να οδηγήσει σε υποχρησιμοποίηση πόρων ή στο σταμάτημά
τους
Η έλλειψη προτυποποίησης επίσης οδηγεί σε μη κατάλληλες ρυθμίσεις ασφάλειας στα συστήματα
Πχ. η ίδια ρύθμιση μπορεί να κάνει ένα σύστημα πιο ασφαλές και να εισάγει τρωτότητα σε ένα άλλο
Επομένως, η μετανάστευση εφαρμογών κατά μήκος διαφορετικών πόρων ανοίγει νέους δρόμους για απειλές
ασφάλειας
Απειλές Εικονικοποίησης & Άλλα Θέματα
Ασφάλειας στο Επίπεδο PaaS
• Απειλές ασφάλειας στο επίπεδο αυτό (συνέχεια)
▫ Εικονικοποίηση & πολλαπλή μίσθωση
Επειδή μια υπηρεσία PaaS χρησιμοποιεί περισσότερο την εικονικοποίηση, εφαρμόζονται 2
επίπεδα απομόνωσης
Απομόνωση στο επίπεδο του hypervisor
Απομόνωση στο επίπεδο της εφαρμογής για το διαμοιρασμό του ίδιου φιλοξενούμενου ΛΣ από
πολλαπλές εφαρμογές
Ουσιαστικά, μια εφαρμογή μπορεί να διαταχθεί κατά μήκος πολλαπλών συστημάτων
Σε κάθε περίπτωση, η περαιτέρω εικονικοποίηση μπορεί να οδηγήσει σε περισσότερες τρωτότητες
Οπότε, είναι αναγκαία η χρήση επιπρόσθετων μηχανισμών ασφάλειας
▫ Τρωτότητες στις εφαρμογές χρηστών
Οι τρωτότητες σε εφαρμογές χρηστών όπως κώδικας πίσω πόρτας και κρυφά πεδία φορμών
μπορεί να δημιουργήσουν απειλές ασφάλειας από άλλους χρήστες και επιτιθέμενους
Θα πρέπει να χρησιμοποιηθεί ασφαλής προγραμματισμός και μηχανισμοί ασφάλειας για την
μείωση των απειλών
▫ Τρωτότητες στα λειτουργικά επίπεδα του PaaS και διαμοιρασμένες υπευθυνότητες
ασφάλειας
Ένα PaaS δεν έχει μόνο διαφορετικά λειτουργικά συστήματα αλλά παρέχει και διαφορετικές
υπηρεσίες όπως εξισορρόπησης φορτίου, ενορχήστρωσης, ενοποίησης, διασύνδεσης και
κρυφής μνήμης
Επίσης, μπορεί να έχει ένα κύριο στρώμα διαχείρισης και ένα στρώμα ασφάλειας
Το στρώμα διαχείρισης είναι υπεύθυνο για την τροφοδοσία, παρακολούθηση και διαχείριση πόρων
Το στρώμα ασφάλειας είναι υπεύθυνο για την διαχείριση απειλών και επιθέσεων ασφάλειας οπότε
θα πρέπει να προστατεύσει όλα τα (λειτουργικά) επίπεδα PaaS από επιθέσεις σε φιλοξενούμενα
ΛΣ, εικονικοποίηση, άρνησης υπηρεσίας, ενδιάμεσου, API, εργαλείων ανάπτυξης και διάταξης
τρίτων μερών, βάσεων δεδομένων, πλαισίων εφαρμογών και μεσισμικού
Απομόνωση στο Επίπεδο Εφαρμογής
Πηγή: [2]
Συν-ευθυνότητες στο Επίπεδο PaaS
Πηγή: [2]
Μέτρα Πρόληψης Επιθέσεων στο
Επίπεδο PaaS
• Παροχή από τους παρόχους PaaS πρότυπων τρόπων
πρόσβασης σε πόρους
▫ Αυτό μειώνει θέματα διαλειτουργικότητας και ασφάλειας
• Υλοποίηση κρυπτογράφησης, αυστηρής αυθεντικοποίησης,
εξουσιοδότησης και ανιχνευσιμότητας (traceability)
• Σκλήρυνση πλατφόρμων, εργαλείων, πλαισίων και APIs
• Ανίχνευση και αποθήκευση γεγονότων και δραστηριοτήτων
• Προστασία ιδεατών μηχανών και εργαλείων λογισμικού με
αντι-ιικά εργαλεία
• Εφαρμογή τελευταίων patches σε όλα τα εργαλεία
• Όλη η ασφάλεια περιμέτρου και τελικών σημείων πρέπει να
είναι στενή ώστε η επιφάνεια επιθέσεων στο νέφος να
διατηρηθεί ελαχιστοποιημένη
Απειλές Εικονικοποίησης & Άλλα
Θέματα Ασφάλειας στο Επίπεδο SaaS
• Οι πάροχοι υπηρεσιών SaaS μπορεί έμμεσα να εφαρμόζουν την
εικονικοποίηση σε διαφορετικά επίπεδα
▫ Απομόνωση σε επίπεδο hypervisor
▫ Απομόνωση σε επίπεδο εφαρμογής όσον αφορά το φιλοξενούμενο ΛΣ
▫ Απομόνωση σε επίπεδο εφαρμογής όσον αφορά το σύνολο δεδομένων
▫ Απομόνωση σε επίπεδο δεδομένων ώστε το ίδιο στιγμιότυπο
εφαρμογής να διαμοιράζεται με παραπάνω από ένα σύνολα
δεδομένων
▫ Διάταξη ενός στιγμιότυπου της εφαρμογής σε πολλαπλά στιγμιότυπα
ιδεατών μηχανών με βάση απαιτήσεις απόδοσης, κλιμακωσιμότητας
& διαθεσιμότητας
• Οι εφαρμογές SaaS προσπελαύνονται μέσω φυλλομετρητών και
διεπαφών διαδικτυακών υπηρεσιών
▫ Οπότε, μπορεί να δεχθούν επιθέσεις που μπορεί να αφορούν τον
φυλλομετρητή, την XML και τις διαδικτυακές υπηρεσίες
Πηγή: [2]
Απειλές Εικονικοποίησης & Άλλα
Θέματα Ασφάλειας στο Επίπεδο SaaS
• Απειλές
▫ Μη προβλεψιμότητα και σταθερότητα
Αν και ένας πάροχος SaaS μπορεί να προσφέρει εφαρμογές υψηλής ποιότητας, δεν είναι
σίγουρο ότι δεν θα σταματήσει να λειτουργεί. Οπότε εγείρονται θέμα όπως μετανάστευση
(σε άλλο πάροχο παρόμοιας υπηρεσίας SaaS) και απώλεια δεδομένων (που αφορούν έναν
χρήστη)
▫ Αδιαφάνεια
Δεν είναι σίγουρο τι ακριβώς κάνει ένας πάροχος ώστε να διατηρεί τα δεδομένων των
πελατών του ασφαλή λόγω έλλειψης διαφάνειας από την μεριά του (όσον αφορά τους
μηχανισμούς και πρωτόκολλα ασφάλειας που εφαρμόζει)
▫ Αβεβαιότητα στην τοποθεσία δεδομένων
Δεν αποκαλύπτεται η τοποθεσία της υποδομής που χρησιμοποιείται για τις
προσφερόμενες εφαρμογές (όπου υπάρχει περίπτωση πολλαπλά κέντρα δεδομένων
γεωγραφικά κατανεμημένα να γίνονται εκμεταλλεύσιμα)
▫ Έλλειψη απευθείας ελέγχου στα δεδομένα χρηστών
Συνήθως, ο έλεγχος που προσφέρεται στους χρήστες για τα δεδομένα τους μπορεί να είναι
έμμεσος ή περιορισμένος
Επίσης, μερικοί πάροχοι μπορεί να επιβάλλουν στον χρήστη την εφαρμογή κατάλληλης
ασφάλειας ως προς τα δεδομένα του (διαμοιρασμένη υπευθυνότητα)
▫ Μη συμμόρφωση με μοντέρνα πρότυπα ασφάλειας
Μπορεί να μην εφαρμόζονται πρότυπα ασφάλειας ή να είναι απαρχαιωμένα (outdated)
Επίσης, μπορεί οι χρήστες να υπογράφουν μακροπρόθεσμες συμφωνίες, το οποίο μπορεί
να μεγεθύνει το πρόβλημα (αν τα δεδομένα είναι ασφαλή τώρα μπορεί να μην είναι σε 2-3
χρόνια από τώρα αν ο πάροχος δεν ενημερώνει τα πρότυπα ασφάλειας που εφαρμόζει)
Συν-ευθυνότητες στο Επίπεδο SaaS
Πηγή: [2]
Επιπλέον Θέματα Ασφάλειας
• Ασφάλεια Αποθηκευμένων Δεδομένων
▫ Εξασφάλιση της προστασίας των αποθηκευμένων
δεδομένων (εμπιστευτικότητα, ακεραιότητα &
διαθεσιμότητα)
▫ Οι χρήστες τυπικά θα πρέπει να εμπιστευθούν
απόλυτα τον πάροχο
Αυτός όμως μπορεί είτε πλημμελώς να φροντίζει για την
ασφάλεια των δεδομένων ή να εφαρμόζει μηχανισμούς
ασφάλειας που να του επιτρέπουν να έχει πλήρη
πρόσβαση στα δεδομένα αυτά
▫ Μηχανισμοί προστασίας δεδομένων
Κρυπτογράφηση πριν την αποθήκευση, κυρίως με
συμμετρικό τρόπο που είναι πιο αποδοτική για την
εξασφάλιση εμπιστευτικότητας & ακεραιότητας των
δεδομένων
Μηχανισμοί Προστασίας Δεδομένων
• Τμηματοποίηση (fragmentation)
▫ Η εκλεπτυσμένη ανάκτηση δεδομένων απαιτεί την χρήση της τμηματοποίησης
αντί για την κρυπτογράφηση, ειδικά όταν θα πρέπει να προστατευθούν οι
συσχετίσεις μεταξύ των τιμών δεδομένων και όχι οι τιμές οι ίδιες
▫ Η τμηματοποίηση προστατεύει τις ευαίσθητες συσχετίσεις τμηματοποιώντας
τα δεδομένα και αποθηκεύοντάς τα σε μη συνδεόμενα μέρη/τμήματα
Για την προστασία όσον αφορά την επεξεργασία των δεδομένων, ένα τρίτο
μέρος χρησιμοποιείται για την επεξεργασία περιορισμένου αριθμού δεδομένων
που είναι είτε ευαίσθητα από μόνα τους ή η ορατότητά τους μπορεί να εκθέσει
ευαίσθητες συσχετίσεις
▫ Μπορεί να εφαρμοσθεί σε συνδυασμό με την κρυπτογράφηση. Υπάρχουν 2
εναλλακτικές προσεγγίσεις
“two can keep a secret”
Ο κάτοχος των δεδομένων βασίζεται σε 2 πάροχους που δεν επικοινωνούν μεταξύ τους
ώστε να αποθηκεύσει σε αυτούς μέρη των δεδομένων με την κρυπτογράφηση να
εφαρμόζεται μόνο σε τιμές δεδομένων που είτε είναι ευαίσθητες ή δεν μπορούν να
αποθηκευθούν αυτούσιες χωρίς να αποκαλύψουν ευαίσθητες συσχετίσεις
“multiple fragments”
Μόνο ιδιότητες με ευαίσθητες τιμές κρυπτογραφούνται
Μηχανισμοί Προστασίας των Δεδομένων
• Υπογραφές
▫ Θα πρέπει να εξασφαλιστεί πως οι κάτοχοι δεδομένων έχουν την δυνατότητα
επικύρωσης των δεδομένων ως προς την μη εξουσιοδοτημένη τροποποίησή τους και
ως προς την συμμόρφωση του παρόχου όσον αφορά την διαχείρισή τους με βάση SLAs
▫ Η ακεραιότητα των δεδομένων μπορεί να επικυρωθεί με την εφαρμογή σχημάτων
υπογραφής όπου τα δεδομένα υπογράφονται ψηφιακά ώστε να ανιχνεύονται οι
ακατάλληλες/μη νόμιμες τροποποιήσεις τους
▫ Οι υπογραφές παρέχουν ντετερμινιστική εξασφάλιση της ακεραιότητας δεδομένων
• Έλεγχοι (checks)
▫ Προσφέρουν πιθανοκρατικές εγγυήσεις
Πχ. περίπτωση χρήσης φρουρών (sentinels) σε λύσεις απόδειξης της ανάκτησης (proof of
retrievability – POR), που εφαρμόζονται σε κρυπτογραφημένα δεδομένα
Πχ. ετικέτες ομομορφικά επικυρώσιμες (homomorphic verifiable tags) σε λύσεις πιθανής
διάθεσης δεδομένων (proof of data possession – PDP) που εφαρμόζονται σε γενικά
σύνολα δεδομένων
• Αναπαραγωγή (replication)
▫ Εξασφαλίζει την διαθεσιμότητα των δεδομένων παρά την ύπαρξη σφαλμάτων ή μη
συμμόρφωσης από τους παρόχους
▫ Τα δεδομένα μπορεί να αναπαραχθούν με την χρήση τεχνικών αναπαραγωγής που
μπορεί να τα κατανείμουν κατά μήκος διαφορετικών παρόχων
• Ασφαλής διαγραφή
▫ Κατάλληλη και ασφαλής διαγραφή των δεδομένων με την χρήση κατάλληλων
τεχνικών που πραγματικά διαγράφουν τα δεδομένα και δεν τα μαρκάρουν απλώς ως
διεγραμμένα
Επιπλέον Θέματα Ασφάλειας
• Εκλεπτυσμένη πρόσβαση στα δεδομένα (fine-grained data access)
▫ Εφόσον τα δεδομένα κρυπτογραφούνται και έπειτα αποθηκεύονται
στο νέφος, τότε θα πρέπει να υποστηρίζεται και η κατάλληλη
ανάκτηση και επεξεργασία τους με εκλεπτυσμένο τρόπο
▫ Μηχανισμοί – 2 εναλλακτικές προσεγγίσεις
Απευθείας εφαρμογή επερωτήσεων στα κρυπτογραφημένα δεδομένα
Είναι δυνατή με την χρήση συγκεκριμένων τεχνικών κρυπτογράφησης (πχ.
ομομορφική κρυπτογράφηση)
Κύρια μειονεκτήματα:
▫ Κυρίως εφαρμόζονται σε αναζητήσεις για λέξεις κλειδιά και βασικές λειτουργίες
▫ Περιορισμένα είδη πρόσβασης
▫ Υπολογιστική πολυπλοκότητα των λύσεων
Τελευταία, υπάρχουν και λύσεις (πχ. CryptDB) που επιτρέπουν την
εξασφάλιση επιπλέον υποστήριξης για λειτουργίες και την αποδοτικότητα.
Αυτές βασίζονται σε διαφορετικά επίπεδα κρυπτογράφησης, το καθένα από
τα οποία υποστηρίζει συγκεκριμένες λειτουργίες
Εκλεπτυσμένη Πρόσβαση στα Δεδομένα
• Μηχανισμοί – 2 εναλλακτικές προσεγγίσεις (συνέχεια)
▫ Προσκόλληση στα κρυπτογραφημένα δεδομένα μεταδεδομένων (ευρετηρίων) που
έπειτα χρησιμοποιούνται για εκλεπτυσμένη ανάκτηση πληροφορίας και εκτέλεση
επερωτήσεων
Πχ. σε ένα σχεσιακό πίνακα που οι πλειάδες έχουν κρυπτογραφηθεί, διαφορετικά
ευρετήρια (indexes) μπορούν να οριστούν σε διαφορετικές ιδιότητες στις οποίες συνθήκες
θα πρέπει να αποτιμηθούν
Τα ευρετήρια θα πρέπει να είναι ακριβή και αποτελεσματικά ως προς την εκτέλεση
επερωτήσεων αλλά συγχρόνως να μην αποκαλύπτουν πληροφορία
Η προστασία θα πρέπει να εξασφαλιστεί τόσο από στατικές (όσον αφορά τα
κρυπτογραφημένα και ευρετηριασμένα δεδομένα) όσο και από δυναμικές (όσον αφορά τις
επερωτήσεις που εκτελούνται στα δεδομένα αυτά) παρατηρήσεις
Διαφορετικά είδη ευρετηρίων έχουν μελετηθεί όπως απευθείας ευρετηριασμός (1-1
αντιστοίχιση καθαρού κειμένου και τιμών ευρετηρίου), βασισμένος σε κατακερματισμό
ευρετηριασμός (Ν-1 αντιστοίχιση μεταξύ καθαρού κειμένου και τιμών ευρετηρίου) και
επίπεδος (flat) ευρετηριασμός (1-Ν αντιστοίχιση)
Άλλα είδη ευρετηρίων σχετίζονται με δομές δεδομένων βασιζόμενες σε δένδρα καθώς και
λύσεις διατήρησης σειράς ή ομομορφικής κρυπτογράφησης για την παροχή υποστήριξης
σε επερωτήσεις εύρους και λειτουργίες συσσωμάτωσης (aggregation functions)
Διαφορετικές προσεγγίσεις στον ευρετηριασμό παρέχουν διαφορετικές εξασφαλίσεις
προστασίας και διαφορετικά επίπεδα απόδοσης στην εκτέλεση επερωτήσεων
Πχ. οι Ν-1 & 1-Ν προσεγγίσεις παρέχουν καλύτερη προστασία εμπιστευτικότητας του
ευρετηριασμού σε σχέση με την 1-1 αντιστοίχιση αλλά δημιουργούν επιπλέον πολυπλοκότητα
στην διαδικασία των επερωτήσεων
Οι προσεγγίσεις ευρετηριασμού με κρυπτογράφηση διατήρησης σειράς (order-preserving)
παρέχουν υποστήριξη για επερωτήσεις εύρους αλλά εκτίθενται σε κάποια έκθεση
πληροφορίας
Πηγή: [3]
Επιπλέον Θέματα Ασφάλειας
• Επιλεκτική πρόσβαση στα δεδομένα (selective access to data)
▫ Σε πολλές περιπτώσεις, η πρόσβαση στα δεδομένα πρέπει να είναι
επιλεκτική
Διαφορετικοί χρήστες ή ομάδες χρηστών θα πρέπει να έχουν
διαφορετικές οπτικές και αντίστοιχη πρόσβαση στα δεδομένα
Πως εφαρμόζονται τέτοιοι περιορισμοί ελέγχου πρόσβασης είναι το
ζητούμενο
Πχ. πολλές υπηρεσίες αποθήκευσης νέφους όπως η Amazon S3 υποστηρίζουν
τον ορισμό λιστών ελέγχου πρόσβασης αλλά η εφαρμογή των λιστών
εξουσιοδοτείται στον πάροχο της υπηρεσίας
Όμως, μια τέτοια λύση δεν είναι πάντοτε δυνατή, εφόσον, πχ, οι πολιτικές
ελέγχου πρόσβασης θα πρέπει να είναι εμπιστευτικές
Η ανάθεση του ελέγχου πρόσβασης στο νέφος απαιτεί απόλυτη εμπιστοσύνη
στον πάροχο
Από την άλλη μεριά, η αποφυγή τέτοιων λύσεων οδηγεί στο γεγονός πως ο
ιδιοκτήτης δεδομένων θα πρέπει να διαμεσολαβεί για κάθε αίτηση
πρόσβασης ώστε να εξασφαλίσει πως μόνο οι εξουσιοδοτημένες προσβάσεις
επιτρέπονται, το οποίο είναι μη πρακτικό και εφαρμόσιμο
Επιλεκτική Πρόσβαση στα Δεδομένα
• Μηχανισμοί / Προσεγγίσεις Προστασίας
▫ Προσέγγιση συνδυασμού ελέγχου πρόσβασης και κρυπτογράφησης
Τα δεδομένα κρυπτογραφούνται με διαφορετικά κλειδιά ανάλογα με
την εξουσιοδότηση χρηστών
Προκλήσεις
Οι χρήστες δεν θα πρέπει να διατηρούν πολλά κλειδιά για τους
διαφορετικούς πόρους/δεδομένα που πρέπει να προσπελάσουν
Κάθε πόρος πρέπει να διατηρείται μόνο μια φορά (η κρυπτογράφηση
διαφορετικών αντιγράφων με διαφορετικά κλειδιά πρέπει να αποφευχθεί
διότι η διαχείρισή τους θα είναι μη πρακτική)
Λύση
Εφαρμογή μεθόδων παραγωγής κλειδιού (key derivation methods) όπου οι
χρήστες παράγουν τα κλειδιά (που απαιτούνται για την πρόσβαση σε
επιθυμητούς πόρους) από ένα απλό κλειδί που έχει ανατεθεί σε αυτούς και
δημόσια tokens
▫ Ο έλεγχος πρόσβασης εφαρμόζονται μέσω κατάλληλης οργάνωσης των
κλειδιών σε μια ιεραρχία που ανακλά την εξουσιοδότηση όπου το κλειδί που
αντιστοιχεί σε μια λίστα ελέγχου πρόσβασης επιτρέπει την πρόσβαση σε
κλειδιά που έχουν συσχετιστεί με όλες τις λίστες ελέγχου πρόσβασης που είναι
υπερσύνολό της
Επιλεκτική Πρόσβαση στα Δεδομένα
• Μηχανισμοί / Προσεγγίσεις Προστασίας
▫ Προσέγγιση συνδυασμού ελέγχου πρόσβασης και κρυπτογράφησης
(συνέχεια)
Ανανεώσεις στην πολιτική ελέγχου πρόσβασης μπορεί να απαιτήσουν την
αλλαγή του κλειδιού με το οποίο οι πόροι έχουν κρυπτογραφηθεί
Οπότε απαιτείται το κατέβασμα των πόρων από το νέφος και την έκδοση μιας νέας
κρυπτογραφημένης εκδοχής τους
Αυτός ο φόρτος μπορεί να αποφευχθεί υποθέτοντας κάποιο είδος συνεργασίας από
τους εξωτερικούς πάροχους ως προς την εφαρμογή των αλλαγών πολιτικής όπου αυτοί
θα πρέπει να εφαρμόσουν ένα επιπλέον επίπεδο κρυπτογράφησης που ονομάζεται
overencryption επιπρόσθετα σε αυτό που εφαρμόζεται από τους ιδιοκτήτες των
δεδομένων
▫ Η πρόσβαση σε ένα πόρο r απαιτεί το πέρασμα και από τα 2 επίπεδα κρυπτογράφησης
▫ Εναλλακτική προσέγγιση
Χρήση τεχνικών κρυπτογράφησης βασιζόμενης σε ιδιότητες (attribute-based
encryption – ABE), πιθανώς συνδυαζόμενων με άλλες τεχνικές
κρυπτογράφησης όπως proxy & lazy re-encryption
Η ABE είναι κρυπτογράφηση δημόσιου κλειδιού που ελέγχει την πρόσβαση
στα δεδομένα σύμφωνα με περιγραφικές ιδιότητες που σχετίζονται με αυτά
ή/και τους χρήστης και τις πολιτικές που ορίζονται με βάση αυτές τις ιδιότητες
Μπορεί να υλοποιηθεί ως Ciphertext-Policy ή ως Key-policy ΑΒΕ ανάλογα με
το πως οι ιδιότητες και πολιτικές σχετίζονται με τα δεδομένα ή/και τους
χρήστες
Πηγή: [3]
Άλλα Θέματα Ασφάλειας
• Ιδιωτικότητα χρηστών (User privacy)
▫ Συχνά απαιτείται η παροχή άδειας για πρόσβαση στα δεδομένα σε μη εγγεγραμμένους χρήστες
χωρίς την απαίτηση οι χρήστες αυτοί να δηλώσουν την ταυτότητά τους
Σε αυτή την περίπτωση, η εξουσιοδότηση και εφαρμογή ελέγχου πρόσβασης θα πρέπει να βασιστεί σε
ιδιότητες των χρηστών, οι οποίες τυπικά παρέχονται από ιδιότητες που αφορούν ψηφιακά
υπογεγραμμένα πιστοποιητικά
Οι λύσεις ελέγχου πρόσβασης που υποστηρίζουν αυτή την περίπτωση ονομάζονται βασιζόμενες σε
ιδιότητες, σε διαπιστευτήρια ή σε πιστοποιητικά ώστε να τονιστεί η αναχώρηση από την ταυτότητα
στην θεώρηση πιστοποιημένων ιδιοτήτων για τις αποφάσεις πρόσβασης ή έλεγχος πρόσβασης που
επεκτείνει την ιδιωτικότητα ώστε να τονιστεί η ιδιωτικότητα που προσφέρεται από την αναχώρηση από
την ταυτοποίηση χρηστών
Τα θέματα που πρέπει να αντιμετωπισθούν αφορούν την γλώσσα για την έκφραση των
εξουσιοδοτήσεων, την μηχανή ελέγχου πρόσβασης για την αποτίμηση των αιτήσεων χρηστών, τον
πιθανό διάλογο και διαπραγμάτευση που πρέπει να υποστηριχθεί μεταξύ παρόχων και χρηστών, την
υποστήριξη ως προς τις προτιμήσεις των χρηστών σε σχέση με τις ιδιότητες που επιθυμούν να εκδώσουν
για την λήψη υπηρεσιών και τους περιορισμούς δευτερεύουσας χρήσης
Γλώσσα: με βάση την λογική (logic-based) αρχικά και έπειτα διατηρώντας την ισορροπία μεταξύ
εκφραστικότητας και απλότητας
Για τον διάλογο, μελετήθηκαν διαφορετικές στρατηγικές όπως διαπραγματεύσεις πολλαπλών βημάτων
▫ Πρόσφατες προτάσεις στοχεύουν στην εξισορρόπηση της ανταλλαγής πληροφορίας ώστε να εγκαθιδρυθεί
εμπιστοσύνη μεταξύ χρηστών και παρόχων και της απλότητας του διαλόγου ώστε να είναι κατάλληλος για
πρακτικές εφαρμογές
Για τις προτιμήσεις χρηστών, αρχικές προσεγγίσεις θεωρούσαν πως οι χρήστες ελέγχουν την έκδοση των
διαπιστευτηρίων και ιδιοτήτων τους με έλεγχο πρόσβασης που είναι παρόμοιος με αυτό τον παρόχων ενώ
πιο πρόσφατες μελετούν λύσεις που στοχεύουν ιδίως σε χρήστες και στον φυσικό τρόπο σκέψης ως προς τις
προτιμήσεις τους
Πρότυπα όπως η XACML έχει επίσης χρησιμοποιηθεί για την υποστήριξη διαλειτουργικότητας των
πολιτικών ελέγχου πρόσβασης
Άλλα Θέματα Ασφάλειας
• Ιδιωτικότητα επερωτήσεων (Query privacy)
▫ Μερικές φορές η πρόσβαση στα δεδομένα θα πρέπει να είναι εμπιστευτική
Ειδικότερα η εμπιστευτικότητα θα πρέπει να εξασφαλιστεί ακόμη και στα
μάτια του παρόχου ως προς την πρόσβαση σε συγκεκριμένα δεδομένα
(εμπιστευτικότητα πρόσβασης) ή ως προς το γεγονός πως 2 προσβάσεις
προσβλέπουν στα ίδια δεδομένα (εμπιστευτικότητα μοτίβων – pattern
confidentiality)
Οι παραδοσιακές προσεγγίσεις για την εξασφάλιση αυτών των 2 ιδιοτήτων
βασίζονται σε τεχνικές ιδιωτικής ανάκτησης πληροφορίας (private
information retrieval – PIR) που υποθέτουν πως μια βάση δεδομένων
μοντελοποιημένη ως ένα αλφαριθμητικό N-bit παρέχει πρωτόκολλα για την
ανάκτηση του i-οστού bit στο αλφαριθμητικό χωρίς να εκθέσει στον πάροχο το
bit που προσπελαύνεται
Εκτός από τους περιορισμούς μιας τέτοιας μοντελοποίησης και του γεγονότος της μη
θεώρησης της εμπιστευτικότητας δεδομένων, υπάρχει και θέμα υψηλούς
υπολογιστικής πολυπλοκότητας και κόστους επικοινωνίας
Πρόσφατες προσπάθειες εστιάζουν στην εφαρμοσιμότητα και πρακτικότητα
της PIR
Προστατεύουν την εμπιστευτικότητα δεδομένων με την κρυπτογράφηση και την
εμπιστευτικότητα πρόσβασης και μοτίβων με την δυναμική τροποποίηση σε κάθε
πρόσβαση της φυσικής τοποθεσίας των δεδομένων ώστε να καταστραφεί η στατική
αντιστοίχιση μεταξύ των δεδομένων και των φυσικών μπλοκ όπου αυτά έχουν
αποθηκευθεί
Επίσης, εφαρμόζουν κρυφή μνήμη για την διατήρηση ορισμένων δεδομένων στην
πλευρά του πελάτη
Άλλα Θέματα Ασφάλειας
• Ιδιωτικότητα επερωτήσεων (Query privacy)
▫ Μερικές φορές η πρόσβαση στα δεδομένα θα πρέπει να είναι
εμπιστευτική
Πρόσφατες προσπάθειες εστιάζουν στην εφαρμοσιμότητα και
πρακτικότητα της PIR (συνέχεια)
Εκτός από την χρήση της κρυφής μνήμης και την δυναμική ανάθεση, η
προσέγγιση Path ORAM προϋποθέτει μια δεντρική δομή όπου οι κόμβοι
μπορούν να περιέχουν εκτός από κανονικά και πλαστά μπλοκ για να
διασφαλίσουν ότι οι κόμβοι έχουν πάντοτε το ίδιο μέγεθος
Το ευρετήριο ανακατέματος (Shuffle index) προϋποθέτει πως για κάθε
πρόσβαση επιπρόσθετες ψευδείς επερωτήσεις, με όνομα επερωτήσεις
κάλυψης, εκτελούνται μαζί με την πραγματική αναζήτηση
▫ Οι επερωτήσεις κάλυψης συγχέουν τον πάροχο όσον αφορά το μπλοκ που
στοχεύεται
▫ Σε κάθε πρόσβαση, το περιεχόμενο των μπλοκ που προσπελαύνονται και στην
κρυφή μνήμη ανακατεύεται και επαναγράφεται
▫ Αυτό δυναμικά τροποποιεί την δέσμευση των κόμβων οπότε ο πάροχος μπορεί
μόνο να παρατηρήσει ότι ορισμένα μπλοκ έχουν διαβαστεί και γραφθεί
▫ Αν υποθέσουμε μια ιεραρχική οργάνωση των δεδομένων με βάση την τιμή τους
(δηλ. ένα B-tree με κρυπτογραφημένο περιεχόμενο κόμβων και χωρίς δείκτη
μεταξύ των φύλλων), το Shuffle index μπορεί να υποστηρίξει επερωτήσεις
εύρους
Πηγή: [3]
Άλλα Θέματα Ασφάλειας
• Ακεραιότητα Επερωτήσεων και Υπολογισμών (Query & computation
integrity)
▫ Εφόσον δεν υπάρχει πλήρης εμπιστοσύνη σε έναν πάροχο, ο κάτοχος
δεδομένων ή ο χρήστης θα πρέπει να έχει την δυνατότητα να αποτιμήσει αν
ένα αποτέλεσμα που επιστρέφεται από μια επερώτηση / υπολογισμό είναι
σωστό, ολοκληρωμένο και φρέσκο
Η ορθότητα σημαίνει πως το αποτέλεσμα έχει υπολογιστεί πάνω από τα αρχικά
δεδομένα και ο υπολογισμός πραγματοποιήθηκε σωστά
Η πληρότητα (completeness) σημαίνει πως κανένα δεδομένο δεν λείπει από το
αποτέλεσμα
Η φρεσκάδα (freshness) σημαίνει πως ο υπολογισμός/επερώτηση έχει γίνει
πάνω από την πιο πρόσφατη έκδοση των δεδομένων
▫ Μηχανισμοί / Προσεγγίσεις
Οι περισσότερες προσεγγίσεις εστιάζουν στην παροχή εγγυήσεων για την
πληρότητα και ορθότητα ενώ προτείνονται και συμπληρωματικές προτάσεις με
την χρήση χρονοσφραγίδων και περιοδικής ανανέωσης (periodical refreshing)
για την παροχή εγγυήσεων φρεσκάδας
Οι τρέχουσες λύσεις μπορούν να ταξινομηθούν σε δύο κατηγορίες:
ντετερμινιστικές και πιθανοκρατικές
Ντετερμινιστικές Προσεγγίσεις
• Παρέχονται από αυθεντικοποιημένες δομές δεδομένων, οι οποίες,
όπως και τα σχήματα υπογραφών για στατικά δεδομένα,
επιτρέπουν την ανίχνευση παραβιάσεων ακεραιότητας με ένα
επίπεδο σιγουριάς
▫ Τα σχήματα αλυσίδας υπογραφών επιτρέπουν την επικύρωση της σειράς
μεταξύ των πλειάδων και έπειτα μπορούν να χρησιμοποιηθούν για την
επικύρωση της ακεραιότητας των επερωτήσεων εύρους, όπου η συνθήκη
επιλογής βασίζεται στις ιδιότητες στις οποίες το σχήμα υπογραφής έχει
εφαρμοστεί
▫ Τα δένδρα Merkle και οι εκδόσεις τους οργανώνουν τα δεδομένα σε μια
δενδρική δομή πάνω από μια δεδομένη ιδιότητα (πχ. κλειδί αναζήτησης).
Το αποτέλεσμα επερώτησης με συνθήκες επιλογής ως προς τις ιδιότητες
περιλαμβάνει, εκτός από τις πλειάδες αποτελέσματος, ένα αντικείμενο
επικύρωσης που επιτρέπει την αποτίμηση της ακεραιότητας της
επερώτησης
• Αυτές οι δομές δεδομένων αυθεντικοποίησης παρέχουν
ντετερμινιστικές εγγυήσεις ακεραιότητας μόνο για επερωτήσεις που
περιέχουν ιδιότητες με βάση τις οποίες έχει οργανωθεί η δομή
δεδομένων
Παράδειγμα Δένδρου Merkle
Πηγή: [3]
Πιθανοκρατικές Προσεγγίσεις
• Οι ακόλουθες προσεγγίσεις έχουν εφαρμοστεί μεμονωμένα ή σε συνδυασμό για
την παροχή πιθανοκρατικών εγγυήσεων ακεραιότητας
▫ Εισαγωγή ψευδών πλειάδων στα δεδομένα που αν δεν περιλαμβάνονται στο αποτέλεσμα
επερώτησης σηματοδοτούν παραβίαση ακεραιότητας
▫ Αναπαραγωγή μέρους των δεδομένων με αντίγραφα που δεν αναγνωρίζονται ως
αναπαραγωγές έτσι ώστε η εμφάνιση διπλότυπων δεδομένων όπου το αντίγραφο λείπει
σηματοδοτεί παραβίαση ακεραιότητας
▫ Προϋπολογισμός tokens που συσχετίζονται με επιλεγμένα αποτελέσματα επερωτήσεων
που επιτρέπει την επικύρωση της ακεραιότητας των επερωτήσεων αυτών
• Αν και η απουσία μιας αναμενόμενης ψευδής πλειάδας ή αντιγράφουν
σηματοδοτεί ένα πρόβλημα ακεραιότητας, η παρουσία τέτοιων σημαδιών δεν μας
επιτρέπει να αποφανθούμε πως η ακεραιότητα δεν έχει παραβιαστεί διότι μπορεί
απλώς οι πάροχοι να ήταν τυχεροί ώστε να μην υπάρχει έλλειψη των ελέγχων που
εισάγονται από τους ιδιοκτήτες δεδομένων
• Η πιθανότητα ανίχνευσης παραβίασης ακεραιότητας τυπικά εξαρτάται από το
πλήθος των ελέγχων που εφαρμόζονται όπου περισσότερος ο έλεγχος,
περισσότερες είναι οι εγγυήσεις αλλά και υψηλότερο είναι και το επιπρόσθετο
τίμημα απόδοσης της επικύρωσης
• Η χρήση πολλαπλών παρόχων στην αποθήκευση ή τον υπολογισμό περιπλέκει τα
πράγματα και απαιτεί την επινόηση επιπρόσθετων ελέγχων
▫ Μια πιθανή λύση για την αποτίμηση της ακεραιότητας των joins που υπολογίζονται από
ένα μη έμπιστο πάροχο πάνω από δεδομένα που αποθηκεύονται σε 2 επιστευμένους
πάροχους αποθήκευσης υποθέτει την συνεργασία των τελευταίων για την εισαγωγή
πληροφορίας ελέγχου που αποτελείται από ψευδής και διπλότυπες πλειάδες ώστε η
απουσία τέτοιων σημαδιών να οδηγήσει στην σηματοδότηση μη πληρότητας
Άλλα Θέματα Ασφάλειας
• Συνεργατική εκτέλεση επερωτήσεων από πολλούς πάροχους (collaborative
query execution by multiple providers)
▫ Τα δεδομένα που αποθηκεύονται και διαχειρίζονται από διαφορετικούς πάροχους
μπορεί να διαμοιραστούν και προσπελαστούν επιλεκτικά με ένα συνεργατικό τρόπο
Αυτό μπορεί να γίνει στα πλαίσια και διαφορετικών ιδιοκτητών δεδομένων
Σε αυτή την περίπτωση, η ανταλλαγή δεδομένων και οι συνεργατικοί υπολογισμοί πρέπει
να ελεγχθούν ώστε να εξασφαλίσουν πως η πληροφορία δεν προσπελαύνεται, εκδίδεται ή
εκτίθεται με αντικανονικό τρόπο
Πχ τα δεδομένα που έχουν αποθηκευθεί σε έναν πάροχο μπορεί επιλεκτικά να εκδοθούν μόνο
σε συγκεκριμένους παρόχους και μέσα σε συγκεκριμένα πλαίσια (contexts)
Κάποιες λύσεις έχουν αντιμετωπίσει το πρόβλημα του ιδιωτικού και ασφαλούς
υπολογισμού από πολλαπλά μέρη
Παρέχουν την ικανότητα για διαφορετικά μέρη να εκτελέσουν έναν συνεργατικό υπολογισμό
μαθαίνοντας μόνο τα αποτελέσματα των επερωτήσεων και τίποτε για τις εισόδους αυτών
Στην ίδια γραμμή, υπάρχουν λύσεις για τον υπολογισμό κυρίαρχων joins πάνω από
δεδομένα για την ανάκτηση αποτελεσμάτων από μια join λειτουργία πάνω σε
διαφορετικούς πίνακες με την εξασφάλιση εμπιστευτικότητας της πληροφορίας που δεν
ανήκει στο αποτέλεσμα
Πρόσφατες προσεγγίσεις αντιμετωπίζουν ένα πιο γενικό σενάριο όπου διαφορετικά μέρη
(κάτοχοι δεδομένων ή πάροχοι νέφους) πρέπει να συνεργαστούν και να διαμοιράσουν
πληροφορία για την κατανεμημένη εκτέλεση μιας επερώτησης με επιλεγμένη έκθεση των
δεδομένων
Έχει επίσης μελετηθεί το πρόβλημα του προσδιορισμού ενός αποδοτικού και ασφαλούς
πλάνου εκτέλεσης για τον υπολογισμό επερωτήσεων στο οποίο διαφορετικοί πάροχοι
συνεργάζονται εκδίδοντας στους άλλους την εξουσιοδοτημένη πληροφορία που
απαιτείται για τον υπολογισμό της απάντησης για την επερώτηση
Διαχείριση Ασφάλειας Νέφους