diff --git a/Bibliography.bib b/Bibliography.bib index eb70d99..560a16e 100644 --- a/Bibliography.bib +++ b/Bibliography.bib @@ -187,12 +187,49 @@ howpublished="\url{https://ine.com/blog/why-your-virtual-servers-may-be-more-secure-than-their-physical-counterparts}" } +@misc{ParavirtualizationVmware, + title={Understanding Full Virtualization, Paravirtualization and Hardware Assisted Virtualization}, + author={VMware}, + howpublished="\url{https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/VMware_paravirtualization.pdf}" +} + +@article{arif2015virtualization, + title={Virtualization security: analysis and open challenges}, + author={Arif, Muhammad and Shakeel, Haroon}, + journal={International Journal of Hybrid Information Technology}, + volume={8}, + number={2}, + pages={237--246}, + year={2015} +} + +@inproceedings{wen2008sevmm, + title={Sevmm: Vmm-based security control model}, + author={Wen-Zhi, Chen and Hong-Wei, Zhu and Wei, Huang}, + booktitle={2008 International Conference on Cyberworlds}, + pages={820--823}, + year={2008}, + organization={IEEE} +} + @misc{ibmHypervisorDefinition, title={What are hypervisors?}, author={IBM}, howpublished="\url{https://www.ibm.com/topics/hypervisors}" } +@misc{ibmContainerizationDefinition, + title={What is containerization?}, + author={IBM}, + howpublished="\url{https://www.ibm.com/topics/containerization}" +} + +@misc{ciaTriad, + title={What is the CIA triad (confidentiality, integrity and availability)?}, + author={Wesley Chai}, + howpublished="\url{https://www.techtarget.com/whatis/definition/Confidentiality-integrity-and-availability-CIA}" +} + @misc{redhatVirtualizationDefinition, title={Understanding virtualization}, author={Red Hat}, diff --git a/Chapters/2.Background.tex b/Chapters/2.Background.tex index e1edc68..5ac04b4 100644 --- a/Chapters/2.Background.tex +++ b/Chapters/2.Background.tex @@ -707,13 +707,171 @@ \renewcommand{\arraystretch}{1} \end{table} +\section{Ασφάλεια στην εικονικοποίηση} \label{virtualizationSecurity} + +Η χρήση της εικονικοποίησης παρέχει αρκετά εγγενή οφέλη ασφαλείας. Ένα +σημαντικό αυτών είναι η ικανότητα επαναφοράς εικονικών μηχανών που έχουν +μολυνθεί με κακόβουλο λογισμικό σε μια χρονική περίοδο πριν τη μόλυνση τους και +η δυνατότητα διαγραφής και αναδημιουργίας τους με έναν αυτοματοποιημένο τρόπο +σε περίπτωση που η επαναφορά για οποιονδήποτε λόγο δεν είναι εφικτή. Κάτι το +οποίο είναι αρκετές φορές αδύνατο να συμβεί με ένα φυσικό μηχάνημα διότι το +κακόβουλο λογισμικό συχνά μπορεί να είναι βαθιά ριζωμένο στα βασικά συστατικά +του συστήματος. + +Παρ'' όλα αυτά η εικονικοποίηση δεν είναι απαλλαγμένη από κινδύνους καθώς +παραβιάζοντας τον \textlatin{hypervisor}, ένας επιτιθέμενος έχει πρόσβαση σε +όλες τις εικονικές μηχανές που διαχειρίζονται μέσω αυτού και είναι δυσκολότερο +να εντοπιστεί λόγω της ικανότητας του \textlatin{hypervisor} να επιτρέπει στις +εικονικές μηχανές τη μεταξύ τους επικοινωνία χωρίς την αλληλεπίδραση με το +φυσικό δίκτυο. Επιπροσθέτως, η ακεραιότητα ενός \textlatin{hypervisor} +εξαρτάται άμεσα και από τον τύπου του αφού στην κατηγορία \textlatin{hosted +hypervisor} αρκεί να παραβιαστεί το λειτουργικό σύστημα στο οποίο εκτελείται. + +\subsection{Απειλές στην εικονικοποίηση} \label{virtualizationThreats} + +Όλες οι μορφές εικονικοποίησης είναι ευάλωτες σε επιθέσεις. Όπως αναφέρεται και +στο \cite{wen2008sevmm} μέσω του \cite{arif2015virtualization}, πολλές φορές δε +δύναται ο διαχειριστής εικονικών μηχανών, το λειτουργικό σύστημα ή ακόμα και το +\textlatin{Mandatory Access Control} του \textlatin{Linux} να ανταπεξέλθουν +στις απαιτήσεις ασφαλείας όλων των εφαρμογών. Το παράδειγμα που παρουσιάζεται +στο \cite{arif2015virtualization} αναφέρεται στην εικονικοποίηση χώρου +αποθήκευσης μέσω δικτύου αλλά πολλές από τις απειλές δεν περιορίζονται μόνο σε +αυτό. Ουσιαστικά κάθε εικονική μηχανή που έχει πρόσβαση στο διαδίκτυο είναι +ευάλωτη σε απειλές όπως \textlatin{Trojans}, ιούς και κακόβουλα λογισμικά που +μπορεί να μεταφερθούν από έναν \textlatin{hypervisor} σε κάθε εικονική μηχανή. + +Πολλές από τις απειλές που θα αναφερθούν παρακάτω μπορούν να συνοψιστούν και ως εξής: + +\begin{table}[h!] +\renewcommand{\arraystretch}{1.5} +\centering +\newcolumntype{C}{>{\centering\arraybackslash}m{6cm}} +\begin{tabular}{||C|C||} +\hline + +Πηγή απειλής & Περιγραφή \\ [0.5ex] + +\hline\hline + +\textlatin{NW $\Rightarrow$ VMM} & + +Απειλές που προέρχονται από το δίκτυο και στοχεύουν τον \textlatin{hypervisor}. +\\ + +\hline + +\textlatin{NW $\Rightarrow$ VM} & + +Απειλές που προέρχονται από το δίκτυο και στοχεύουν τις εικονικές μηχανές. \\ + +\hline + +\textlatin{VMM $\Rightarrow$ VM} & + +Απειλές που προέρχονται από τον \textlatin{hypervisor} και στοχεύουν τις +εικονικές μηχανές. \\ + +\hline + +\textlatin{VM $\Rightarrow$ VM} & + +Απειλές που προέρχονται από τις εικονικές μηχανές και στοχεύουν άλλες εικονικές +μηχανές. \\ + +\hline + +\textlatin{Admin $\Rightarrow$ VMM} & + +Απειλές που προέρχονται από τον διαχειριστή εικονικών μηχανών και στοχεύουν τον +\textlatin{hypervisor}. \\ + +\hline + +\textlatin{Admin $\Rightarrow$ VM} & + +Απειλές που προέρχονται από τον διαχειριστή εικονικών μηχανών και στοχεύουν τις +εικονικές μηχανές. \\ + +\hline +\end{tabular} +\caption{Απειλές στην εικονικοποίηση} +\label{table:virtualizationThreats} +\renewcommand{\arraystretch}{1} +\end{table} + \pagebreak -\section{Ασφάλεια στο \textlatin{Cloud Computing} Στις Μέρες Μας} \label{cloudComputingSecurityNowadays} +\subsubsection{Επιθέσεις στον πάροχο νέφους} \label{cloudProviderAttack} -Πλέον όλοι γνωρίζουμε τη σημασία της ασφάλειας. +Τη σήμερον ημέρα όλο και περισσότερες επιχειρήσεις θα προτιμήσουν να βασιστούν +σε έναν πάροχο νέφους για την απόκτηση υποδομών προκειμένου να ξεκινήσουν να +εξυπηρετούν τους δυνητικούς πελάτες τους έναντι της παραδοσιακής διαδικασίας +αγοράς ρύθμισης και διαχείρισης φυσικών διακομιστών. Η ταχύτερη εκκίνηση +παροχής υπηρεσιών και η ευκολία διαχείρισης της υποδομής τους, δεν αφήνουν +περιθώρια αμφιβολίας της ορθότητας αυτής της απόφασης. Όπως αναφέραμε όμως στο +\ref{cloudComputingSecurity}, εισάγεται έτσι ένα αναγκαίο μοντέλο εμπιστοσύνης +ανάμεσα στον πάροχο νέφους και τις επιχειρήσεις. -\subsection{\textlatin{Attack Vector Mitigation}} \label{attackVectorMitigation} +Ένα από τα σημαντικότερα ζητήματα που απασχολεί μια επιχείρηση είναι η +ασφάλεια. Επιλέγοντας να χρησιμοποιήσουν τις υπηρεσίες ενός παρόχου νέφους όμως +παραχωρούν ουσιαστικά πρόσβαση στις εφαρμογές τους και στα ευαίσθητα δεδομένα +αυτών διότι η ευθύνη προστασίας των υποδομών ανήκει στον ιδιοκτήτη τους και +στην προκειμένη περίπτωση αυτός είναι ο πάροχος νέφους. Έτσι κακόβουλοι +εισβολείς θα προσπαθήσουν να βρουν ατασθαλίες στη διαδικασία παράδοσης των +υπηρεσιών του παρόχου εκτελώντας επιθέσεις τύπου \textlatin{Cross side +scripting, SQL injection}, χειραγώγηση \textlatin{cookies} ή εκμετάλλευση μη +ασφαλούς ρύθμισης, θέτοντας έτσι σε κίνδυνο ευαίσθητες πληροφορίες και δεδομένα +των επιχειρήσεων. + +\subsubsection{Επιθέσεις μέσω του δικτύου} \label{attackOverNetwork} + +Για να μπορούν οι επιχειρήσεις να παρέχουν τις υπηρεσίες τους στους τελικούς +χρήστες είναι απαραίτητη η μεταφορά δεδομένων από την επιχείρηση προς τον +πάροχο νέφους στου οποίου τις υποδομές στεγάζονται οι εφαρμογές τους. Όλα τα +δίκτυα όμως είναι επιρρεπή σε επιθέσεις αν δεν έχουν ληφθεί τα κατάλληλα μέτρα +προστασίας. Στις επιθέσεις αυτές περιλαμβάνονται η κατασκοπεία και διείσδυση +δικτύου και η εκμετάλλευση αδυναμιών του. Αυτές οι επιθέσεις όμως συνήθως +καταπολεμούνται με χρήση κρυπτογραφημένης σύνδεσης κατά τη μεταφορά δεδομένων. + +\subsubsection{Ακεραιότητα δεδομένων} \label{dataIntegrity} + +Η ακεραιότητα των δεδομένων αποτελεί είναι ένα από τα τρία βασικά στοιχεία της +ασφάλειας \cite{ciaTriad} δίχως την οποία οι επιχειρήσεις δε θα μπορούσαν να +παραμείνουν λειτουργικές. Απαιτείται μεγάλη προσοχή κατά τον σχεδιασμό των +βάσεων δεδομένων και της συντήρησης τους σε περιβάλλοντα νέφους αλλά και η +χρήση ορθών πρακτικών όπως ένα σχέδιο επαναφοράς εφεδρικών αντιγράφων +προκειμένου να μην υπάρξει απώλεια σημαντικών δεδομένων της επιχείρησης. + +\subsubsection{Εμπιστευτικότητα δεδομένων} \label{dataConfidentiality} + +Όπως η ακεραιότητα, έτσι και η εμπιστευτικότητα των δεδομένων είναι κάτι για το +οποίο μια επιχείρηση πρέπει να φροντίσει εκ των προτέρων. Ένα κενό ασφαλείας +στην τελική εφαρμογή ενός χρήστη μπορεί να δώσει πρόσβαση σε έναν εισβολέα +παραβιάζοντας έτσι τις βάσεις δεδομένων της επιχείρησης. Επειδή σε ένα +περιβάλλον νέφους δεν έχει η ίδια η επιχείρηση πρόσβαση στις υποδομές που +χρησιμοποιεί, είναι απαραίτητη η επικοινωνία με τον πάροχο νέφους προκειμένου +να διαπιστωθεί ο τρόπος εξασφάλισης της εμπιστευτικότητας των δεδομένων από +μεριάς του. + +\subsubsection{Διαθεσιμότητα δεδομένων} \label{dataAvailability} + +Η διαθεσιμότητα των δεδομένων που είναι και το τελευταίο στοιχείο της ασφάλειας +εξαρτάται άμεσα από τη συνεχή παροχή υποδομών προς την επιχείρηση. Είναι +απαραίτητη λοιπόν η εμπιστοσύνη προς τον πάροχο νέφους και γι'' αυτό τον λόγο +είθισται να επιλέγουν οι επιχειρήσεις μεγάλα ονόματα στον κλάδο της +υπολογιστικής νέφους. Ένας διαχειριστής εικονικών μηχανών έχει τον πλήρη έλεγχο +της λειτουργίας τους και το ίδιο ισχύει και για τον πάροχο νέφους μέσω του +οποίου έχει πρόσβαση ο διαχειριστής. Όλες οι ιδέες περί προστασίας και +ασφάλειας των εικονικών μηχανών λειτουργούν υπό την προϋπόθεση ότι υπάρχει +εμπιστοσύνη προς τον πάροχο. Είναι λοιπόν απαραίτητη όχι μόνο η έρευνα για +καλύτερη προστασία εικονικών περιβαλλόντων αλλά και για την ορθότερη επιλογή +παρόχου νέφους. + +\section{\textlatin{Containerization}} \label{containerizationDefinition} + + + +\section{\textlatin{Docker Attack Vector Mitigation}} \label{dockerAttackVectorMitigation} Με βάση το μοντέλο που περιγράφει το \cite{reshetova2014security} όπως αναφέρεται στο \cite{bui2015analysis} όπου έχουμε ένα μηχάνημα στο οποίο