Stuff
This commit is contained in:
@@ -130,37 +130,13 @@ MySQL \footfullcite{mysql} και το διακομιστή ιστού Nginx \fo
|
|||||||
η μηχανή δοχείων θα πρέπει να ανακτήσει, να αποθηκεύσει και με βάση αυτήν να
|
η μηχανή δοχείων θα πρέπει να ανακτήσει, να αποθηκεύσει και με βάση αυτήν να
|
||||||
δημιουργήσει το αντιστοιχούμενο δοχείο που αυτή περιγράφει.
|
δημιουργήσει το αντιστοιχούμενο δοχείο που αυτή περιγράφει.
|
||||||
|
|
||||||
Τα δοχεία αποτελούν μια ελαφρύτερη εναλλακτική λύση σε σύγκριση με τις
|
Η δοχειοποίηση αποτελεί μια ελαφρύτερη εναλλακτική λύση σε σύγκριση με την
|
||||||
εικονικές μηχανές και είθισται να προτιμώνται για την ανάπτυξη και διάθεση
|
εικονικοποίηση και είθισται να προτιμάται για την ανάπτυξη και διάθεση
|
||||||
εφαρμογών. Αυτό οφείλεται στο γεγονός ότι η μεταφορά και αναδημιουργία τους
|
εφαρμογών. Αυτό οφείλεται στο γεγονός ότι η μεταφορά και αναδημιουργία των
|
||||||
μπορεί να πραγματοποιηθεί σε κάθε περιβάλλον και νέφος, καθώς και στο γεγονός
|
δοχείων μπορεί να πραγματοποιηθεί σε κάθε περιβάλλον και νέφος, καθώς και στο
|
||||||
ότι απαιτούν λιγότερους πόρους σε σχέση με τις εικονικές μηχανές διότι οι
|
γεγονός ότι αυτά απαιτούν λιγότερους πόρους σε σχέση με τις εικονικές μηχανές
|
||||||
υποκείμενοι πόροι του συστήματος μπορούν να μοιραστούν μεταξύ των διαφορετικών
|
διότι οι υποκείμενοι πόροι του συστήματος μπορούν να μοιραστούν μεταξύ των
|
||||||
δοχείων.
|
διαφορετικών δοχείων.
|
||||||
|
|
||||||
\subsection{Μηχανές δοχείων και εικονικοποίηση σε επίπεδο ΛΣ} \label{osVirtualization}
|
|
||||||
|
|
||||||
Πολλά λειτουργικά συστήματα, ειδικά αυτά που κάνουν χρήση του πυρήνα Linux
|
|
||||||
διαθέτουν μηχανισμούς απομόνωσης διεργασιών και δυνατότητες εικονικοποίησης
|
|
||||||
(λειτουργικού συστήματος), όπως είναι οι ομάδες ελέγχου (control groups) με τις
|
|
||||||
οποίες μπορεί να επιτευχθεί ο περιορισμός πόρων σε ένα υποσύνολο διεργασιών,
|
|
||||||
καθώς και οι χώροι ονομάτων χρηστών (user namespaces) που προσφέρουν την
|
|
||||||
δυνατότητα περιορισμού των δικαιωμάτων που έχει μια διεργασία στο σύστημα
|
|
||||||
αρχείων. Με την βοήθεια των εργαλείων που έχουν οι μηχανές δοχείων στην διάθεσή
|
|
||||||
τους, δύναται να πραγματοποιηθεί εικονικοποίηση σε επίπεδο ΛΣ. Μια μέθοδος
|
|
||||||
εικονικοποίησης διακομιστών όπου ο πυρήνας ενός ΛΣ επιτρέπει την ύπαρξη
|
|
||||||
πολλαπλών απομονωμένων περιβαλλόντων \cite{teimouriOsVirtualizationDefinition},
|
|
||||||
τα οποία συμπεριφέρονται ως ξεχωριστοί διακομιστές
|
|
||||||
\cite{webopediaOsVirtualizationDefinition}.
|
|
||||||
|
|
||||||
Μια από τις υποχρεώσεις της μηχανής δοχείων είναι η επικοινωνία με τον πυρήνα
|
|
||||||
του λειτουργικού συστήματος φιλοξενίας για να επιτευχθεί αυτή η εικονικοποίηση.
|
|
||||||
Πρόκειται για μια διαδικασία κατά την οποία ένα λειτουργικό σύστημα επιτρέπει
|
|
||||||
την απομόνωση των διεργασιών που εκτελούνται σε χώρους ονομάτων και την ανάθεση
|
|
||||||
αποκλειστικών πόρων συστήματος σε αυτές. Με αυτό τον τρόπο, οι διεργασίες είναι
|
|
||||||
ανεξάρτητες μεταξύ τους και απομονωμένες ενώ διαμοιράζονται με ασφαλή τρόπο (σε
|
|
||||||
ένα βαθμό) τους πόρους του συστήματος. Ένα δοχείο μπορεί να θεωρηθεί πως
|
|
||||||
αντιστοιχεί σε μια τέτοια απομονωμένη διεργασία.
|
|
||||||
|
|
||||||
\subsection{Πλεονεκτήματα δοχείων έναντι εικονικών μηχανών} \label{containerAdvantages}
|
\subsection{Πλεονεκτήματα δοχείων έναντι εικονικών μηχανών} \label{containerAdvantages}
|
||||||
|
|
||||||
@@ -189,8 +165,6 @@ MySQL \footfullcite{mysql} και το διακομιστή ιστού Nginx \fo
|
|||||||
λειτουργικό σύστημα ούτως ώστε κάθε δοχείο να περιέχει μόνο την εφαρμογή, τις
|
λειτουργικό σύστημα ούτως ώστε κάθε δοχείο να περιέχει μόνο την εφαρμογή, τις
|
||||||
βιβλιοθήκες και τις εξαρτήσεις της \cite{ibmContainerVsVm}.
|
βιβλιοθήκες και τις εξαρτήσεις της \cite{ibmContainerVsVm}.
|
||||||
|
|
||||||
\clearpage
|
|
||||||
|
|
||||||
\noindent Το Σχήμα \ref{fig:containerVsVm} παρουσιάζει τις διαφορές ανάμεσα
|
\noindent Το Σχήμα \ref{fig:containerVsVm} παρουσιάζει τις διαφορές ανάμεσα
|
||||||
στην αρχιτεκτονική της εικονικοποίησης και των δοχείων.
|
στην αρχιτεκτονική της εικονικοποίησης και των δοχείων.
|
||||||
|
|
||||||
|
|||||||
@@ -1635,6 +1635,30 @@ migration and rollback attacks). Από την άλλη, όσον αφορά τ
|
|||||||
μηχανές, όπου κάθε νέο στιγμιότυπό τους απαιτεί την επαναληπτική εκτέλεση των
|
μηχανές, όπου κάθε νέο στιγμιότυπό τους απαιτεί την επαναληπτική εκτέλεση των
|
||||||
βημάτων δημιουργίας τους.
|
βημάτων δημιουργίας τους.
|
||||||
|
|
||||||
|
\subsection{Μηχανές δοχείων και εικονικοποίηση σε επίπεδο ΛΣ} \label{osVirtualization}
|
||||||
|
|
||||||
|
Πολλά λειτουργικά συστήματα, ειδικά αυτά που κάνουν χρήση του πυρήνα Linux
|
||||||
|
διαθέτουν μηχανισμούς απομόνωσης διεργασιών και δυνατότητες εικονικοποίησης
|
||||||
|
(λειτουργικού συστήματος), όπως είναι οι ομάδες ελέγχου (control groups) με τις
|
||||||
|
οποίες μπορεί να επιτευχθεί ο περιορισμός πόρων σε ένα υποσύνολο διεργασιών,
|
||||||
|
καθώς και οι χώροι ονομάτων χρηστών (user namespaces) που προσφέρουν την
|
||||||
|
δυνατότητα περιορισμού των δικαιωμάτων που έχει μια διεργασία στο σύστημα
|
||||||
|
αρχείων. Με την βοήθεια των εργαλείων που έχουν οι μηχανές δοχείων στην διάθεσή
|
||||||
|
τους, δύναται να πραγματοποιηθεί εικονικοποίηση σε επίπεδο ΛΣ. Μια μέθοδος
|
||||||
|
εικονικοποίησης διακομιστών όπου ο πυρήνας ενός ΛΣ επιτρέπει την ύπαρξη
|
||||||
|
πολλαπλών απομονωμένων περιβαλλόντων \cite{teimouriOsVirtualizationDefinition},
|
||||||
|
τα οποία συμπεριφέρονται ως ξεχωριστοί διακομιστές
|
||||||
|
\cite{webopediaOsVirtualizationDefinition}.
|
||||||
|
|
||||||
|
Μια από τις υποχρεώσεις της μηχανής δοχείων είναι η επικοινωνία με τον πυρήνα
|
||||||
|
του λειτουργικού συστήματος φιλοξενίας για να επιτευχθεί αυτή η εικονικοποίηση.
|
||||||
|
Πρόκειται για μια διαδικασία κατά την οποία ένα λειτουργικό σύστημα επιτρέπει
|
||||||
|
την απομόνωση των διεργασιών που εκτελούνται σε χώρους ονομάτων και την ανάθεση
|
||||||
|
αποκλειστικών πόρων συστήματος σε αυτές. Με αυτό τον τρόπο, οι διεργασίες είναι
|
||||||
|
ανεξάρτητες μεταξύ τους και απομονωμένες ενώ διαμοιράζονται με ασφαλή τρόπο (σε
|
||||||
|
ένα βαθμό) τους πόρους του συστήματος. Ένα δοχείο μπορεί να θεωρηθεί πως
|
||||||
|
αντιστοιχεί σε μια τέτοια απομονωμένη διεργασία.
|
||||||
|
|
||||||
\section{Δοχειοποίηση} \label{containerizationDefinition}
|
\section{Δοχειοποίηση} \label{containerizationDefinition}
|
||||||
|
|
||||||
Πέραν της πλήρους εικονικοποίησης και της παρα-εικονικοποίησης, εδώ και αρκετά
|
Πέραν της πλήρους εικονικοποίησης και της παρα-εικονικοποίησης, εδώ και αρκετά
|
||||||
@@ -1707,6 +1731,8 @@ migration and rollback attacks). Από την άλλη, όσον αφορά τ
|
|||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
\item \textbf{Mεταφερσιμότητα}:
|
\item \textbf{Mεταφερσιμότητα}:
|
||||||
|
|
||||||
Τα δοχεία είναι ανεξάρτητα από το λειτουργικό σύστημα και το περιβάλλον
|
Τα δοχεία είναι ανεξάρτητα από το λειτουργικό σύστημα και το περιβάλλον
|
||||||
@@ -1736,8 +1762,6 @@ migration and rollback attacks). Από την άλλη, όσον αφορά τ
|
|||||||
εφαρμογών σε περιβάλλοντα νέφους όπου η αποδοτικότητα αξιοποίησης των
|
εφαρμογών σε περιβάλλοντα νέφους όπου η αποδοτικότητα αξιοποίησης των
|
||||||
υπολογιστικών πόρων αντανακλάται σε άμεση εξοικονόμηση κόστους.
|
υπολογιστικών πόρων αντανακλάται σε άμεση εξοικονόμηση κόστους.
|
||||||
|
|
||||||
\clearpage
|
|
||||||
|
|
||||||
\item \textbf{Απομόνωση σφαλμάτων}:
|
\item \textbf{Απομόνωση σφαλμάτων}:
|
||||||
|
|
||||||
Εφόσον κάθε δοχείο είναι απομονωμένο και λειτουργεί ανεξάρτητα από τα
|
Εφόσον κάθε δοχείο είναι απομονωμένο και λειτουργεί ανεξάρτητα από τα
|
||||||
@@ -1750,6 +1774,8 @@ migration and rollback attacks). Από την άλλη, όσον αφορά τ
|
|||||||
αποσφαλμάτωση και εν τέλει στην πιο γρήγορη ανάπτυξη και συντήρηση
|
αποσφαλμάτωση και εν τέλει στην πιο γρήγορη ανάπτυξη και συντήρηση
|
||||||
προγραμμάτων.
|
προγραμμάτων.
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
\item \textbf{Αποδοτικότητα}:
|
\item \textbf{Αποδοτικότητα}:
|
||||||
|
|
||||||
Το γεγονός ότι τα δοχεία μοιράζονται το ίδιο ΛΣ και κοινά κομμάτια μιας
|
Το γεγονός ότι τα δοχεία μοιράζονται το ίδιο ΛΣ και κοινά κομμάτια μιας
|
||||||
@@ -1861,8 +1887,6 @@ Docker να δουλεύουν ευκολότερα σε διαφορετικέ
|
|||||||
τον πυρήνα του Linux προκειμένου να χρησιμοποιήσει χαρακτηριστικά όπως οι
|
τον πυρήνα του Linux προκειμένου να χρησιμοποιήσει χαρακτηριστικά όπως οι
|
||||||
ομάδες ελέγχου (control groups) για να δημιουργήσει δοχεία.
|
ομάδες ελέγχου (control groups) για να δημιουργήσει δοχεία.
|
||||||
|
|
||||||
\clearpage
|
|
||||||
|
|
||||||
\subsection{Ασφάλεια στο Docker} \label{dockerSecurityMore}
|
\subsection{Ασφάλεια στο Docker} \label{dockerSecurityMore}
|
||||||
|
|
||||||
Οι εφαρμογές σε δοχεία έχουν ένα εγγενές επίπεδο ασφαλείας αφού μπορούν να
|
Οι εφαρμογές σε δοχεία έχουν ένα εγγενές επίπεδο ασφαλείας αφού μπορούν να
|
||||||
@@ -1876,8 +1900,9 @@ Docker να δουλεύουν ευκολότερα σε διαφορετικέ
|
|||||||
δυνητικά να επηρεάσει όλα τα δοχεία.
|
δυνητικά να επηρεάσει όλα τα δοχεία.
|
||||||
|
|
||||||
Σχετικά με τις εικόνες δοχείων που αναφέρθηκαν στο
|
Σχετικά με τις εικόνες δοχείων που αναφέρθηκαν στο
|
||||||
\ref{virtualizationTechnologiesIntroduction}, τα κομμάτια δηλαδή από τα οποία
|
\ref{virtualizationTechnologiesIntroduction} και το
|
||||||
μια εφαρμογή σε μορφή δοχείου αποτελείται και αντιστοιχούν σε καλούπια μέσω των
|
\ref{containersAndContainerImages}, τα κομμάτια δηλαδή από τα οποία μια
|
||||||
|
εφαρμογή σε μορφή δοχείου αποτελείται και αντιστοιχούν σε καλούπια μέσω των
|
||||||
οποίων παράγονται τα δοχεία της εφαρμογής, η ασφάλεια δεν είναι πάντα
|
οποίων παράγονται τα δοχεία της εφαρμογής, η ασφάλεια δεν είναι πάντα
|
||||||
εγγυημένη. Αυτό είναι κάτι που συμβαίνει διότι ο καθένας έχει την δυνατότητα να
|
εγγυημένη. Αυτό είναι κάτι που συμβαίνει διότι ο καθένας έχει την δυνατότητα να
|
||||||
ανεβάσει μια εικόνα δοχείου προς χρήση από τρίτους. Σε περίπτωση που δεν
|
ανεβάσει μια εικόνα δοχείου προς χρήση από τρίτους. Σε περίπτωση που δεν
|
||||||
@@ -1900,8 +1925,6 @@ Docker να δουλεύουν ευκολότερα σε διαφορετικέ
|
|||||||
περιορισμό χρήσης πόρων και του εύρους του συστήματος στο οποίο έχει πρόσβαση η
|
περιορισμό χρήσης πόρων και του εύρους του συστήματος στο οποίο έχει πρόσβαση η
|
||||||
μηχανή δοχείων \cite{ibmContainerizationDefinition}.
|
μηχανή δοχείων \cite{ibmContainerizationDefinition}.
|
||||||
|
|
||||||
\clearpage
|
|
||||||
|
|
||||||
\subsubsection{Μετριασμός επιθέσεων στο Docker με χρήση χώρων ονομάτων} \label{dockerAttackVectorMitigation}
|
\subsubsection{Μετριασμός επιθέσεων στο Docker με χρήση χώρων ονομάτων} \label{dockerAttackVectorMitigation}
|
||||||
|
|
||||||
Με βάση το μοντέλο που περιγράφει το \cite{reshetova2014security}, όπως
|
Με βάση το μοντέλο που περιγράφει το \cite{reshetova2014security}, όπως
|
||||||
@@ -1981,8 +2004,6 @@ Linux capabilities, που θα μπορούσαν να εισάγουν ένα
|
|||||||
να χρησιμοποιήσουν όσες δυνατότητες είναι απαραίτητες προκειμένου να
|
να χρησιμοποιήσουν όσες δυνατότητες είναι απαραίτητες προκειμένου να
|
||||||
ανταπεξέλθουν σε κάθε επίθεση ανάλογα με το περιβάλλον και τις ανάγκες τους.
|
ανταπεξέλθουν σε κάθε επίθεση ανάλογα με το περιβάλλον και τις ανάγκες τους.
|
||||||
|
|
||||||
\clearpage
|
|
||||||
|
|
||||||
\subsubsection{Συχνά είδη επιθέσεων σε δοχεία και μέθοδοι πρόληψής τους} \label{commonAttacksAndPrevention}
|
\subsubsection{Συχνά είδη επιθέσεων σε δοχεία και μέθοδοι πρόληψής τους} \label{commonAttacksAndPrevention}
|
||||||
|
|
||||||
Μερικά είδη επιθέσεων σε δοχεία με τους τρόπους αντιμετώπισής τους, όπως
|
Μερικά είδη επιθέσεων σε δοχεία με τους τρόπους αντιμετώπισής τους, όπως
|
||||||
@@ -2007,6 +2028,8 @@ Linux capabilities, που θα μπορούσαν να εισάγουν ένα
|
|||||||
αρχείων, να απενεργοποιηθεί η επικοινωνία μεταξύ δοχείων και να
|
αρχείων, να απενεργοποιηθεί η επικοινωνία μεταξύ δοχείων και να
|
||||||
αποφευχθεί η εγκατάσταση περιττών προγραμμάτων σε αυτά.
|
αποφευχθεί η εγκατάσταση περιττών προγραμμάτων σε αυτά.
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
\item \textbf{Άρνηση υπηρεσίας}:
|
\item \textbf{Άρνηση υπηρεσίας}:
|
||||||
|
|
||||||
Μια από τις πιο συνηθισμένες επιθέσεις σε πόρους διαθέσιμους μέσω
|
Μια από τις πιο συνηθισμένες επιθέσεις σε πόρους διαθέσιμους μέσω
|
||||||
@@ -2022,8 +2045,6 @@ Linux capabilities, που θα μπορούσαν να εισάγουν ένα
|
|||||||
καθορισμό διαθέσιμων πόρων για κάθε δοχείο εξ αρχής, δεν υπάρχει
|
καθορισμό διαθέσιμων πόρων για κάθε δοχείο εξ αρχής, δεν υπάρχει
|
||||||
κίνδυνος να προσπαθήσει κάποιο δοχείο να διεκδικήσει περισσότερους.
|
κίνδυνος να προσπαθήσει κάποιο δοχείο να διεκδικήσει περισσότερους.
|
||||||
|
|
||||||
\clearpage
|
|
||||||
|
|
||||||
\item \textbf{Αποδράσεις Δοχείων (Container Breakouts)}:
|
\item \textbf{Αποδράσεις Δοχείων (Container Breakouts)}:
|
||||||
|
|
||||||
Σε τέτοιου είδους επιθέσεις, ένας επιτιθέμενος προσπαθεί αφού απέκτησε
|
Σε τέτοιου είδους επιθέσεις, ένας επιτιθέμενος προσπαθεί αφού απέκτησε
|
||||||
@@ -2050,6 +2071,8 @@ Linux capabilities, που θα μπορούσαν να εισάγουν ένα
|
|||||||
εγκεκριμένους προμηθευτές και επιπρόσθετα να τις ελέγχουν με κατάλληλα
|
εγκεκριμένους προμηθευτές και επιπρόσθετα να τις ελέγχουν με κατάλληλα
|
||||||
εργαλεία ανίχνευσης τρωτοτήτων προτού τις χρησιμοποιήσουν.
|
εργαλεία ανίχνευσης τρωτοτήτων προτού τις χρησιμοποιήσουν.
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
|
||||||
\item \textbf{Απόκτηση μυστικών κωδικών/κλειδιών}:
|
\item \textbf{Απόκτηση μυστικών κωδικών/κλειδιών}:
|
||||||
|
|
||||||
Η απόκτηση επιχειρησιακών ή προσωπικών μυστικών ελλοχεύει πολλούς
|
Η απόκτηση επιχειρησιακών ή προσωπικών μυστικών ελλοχεύει πολλούς
|
||||||
@@ -2063,8 +2086,6 @@ Linux capabilities, που θα μπορούσαν να εισάγουν ένα
|
|||||||
αποθήκευση κωδικών. Χρήσιμη επίσης θα ήταν και η εσκεμμένη παράλειψη
|
αποθήκευση κωδικών. Χρήσιμη επίσης θα ήταν και η εσκεμμένη παράλειψη
|
||||||
της παραμέτρου \textquote{privileged}.
|
της παραμέτρου \textquote{privileged}.
|
||||||
|
|
||||||
\clearpage
|
|
||||||
|
|
||||||
\item \textbf{Ενδιάμεσου (Man-in-the-Middle - MitM)}:
|
\item \textbf{Ενδιάμεσου (Man-in-the-Middle - MitM)}:
|
||||||
|
|
||||||
Σε μια τέτοια επίθεση ένας κακόβουλος χρήστης προσπαθεί να μπει ανάμεσα
|
Σε μια τέτοια επίθεση ένας κακόβουλος χρήστης προσπαθεί να μπει ανάμεσα
|
||||||
|
|||||||
Reference in New Issue
Block a user