880 likes | 1.04k Views
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 20 12 -201 3 Εξάμηνο: Δ ’. Ασφάλεια Υπολογιστών και Προστασία Δεδομένων Ενότητα Δ: Έλεγχος Πρόσβασης Συστήματος & Το Μοντέλο Ασφάλειας των Windows. Εμμανουήλ Μάγκος. 1. Ασφάλεια Συστήματος ( Γενικά ). Στόχοι Ασφάλειας.
E N D
Ιόνιο ΠανεπιστήμιοΤμήμα ΠληροφορικήςΑκαδημαϊκό Έτος 2012-2013Εξάμηνο: Δ’ Ασφάλεια Υπολογιστών και Προστασία Δεδομένων Ενότητα Δ: Έλεγχος Πρόσβασης Συστήματος & Το Μοντέλο Ασφάλειας των Windows Εμμανουήλ Μάγκος
1. Ασφάλεια Συστήματος (Γενικά)
Στόχοι Ασφάλειας • Confidentiality • Availability • Εμπιστευτικότητα (Confidentiality) • Πώς αποτρέπουμε την μη εξουσιοδοτημένη ανάγνωση των δεδομένων • Ακεραιότητα (Integrity), π.χ. • Δεδομένων : Αποτροπή μη εξουσιοδοτημένης εγγραφή στα δεδομένα • Αναβαθμίζεται ως πρωτεύουσα, κυρίως λόγω Ηλ. Εμπορίου • Εφαρμογών (software integrity): Πώς θα αποτρέψουμε την τροποποίηση του (ή, εγγραφή στον) κώδικα ενός προγράμματος • .. π.χ. ως αποτέλεσμα επίθεσης κακόβουλου λογισμικού • Διαθεσιμότητα (Availability) • Αδιάλειπτη παροχή υπηρεσίας σε εξουσιοδοτημένους χρήστες .. • Integrity
Σχεδιάζοντας την ασφάλεια…;Κρίσιμες Ερωτήσεις… Δεδομένα Λογισμικό Εφαρμογών Σε ποιο επίπεδο ενσωματώνουμε μηχανισμούς ασφάλειας; • Τυπικά, όσο πιο χαμηλό είναι το επίπεδο τόσο το καλύτερο… Λειτουργικό Σύστημα Υλικό • Συχνά είναι δυνατόν να παραβιάσουμε την ασφάλεια ενός επιπέδου, εξαπολύοντας επίθεση στο αμέσως χαμηλότερο..
Ασφάλεια Συστημάτων Η/Υ • Τυπικά, εξετάζουμε την ασφάλεια των συστημάτων ως προς: • .. την ασφάλεια του Λ.Σ. του Η/Υ • π.χ. εκμετάλλευση ευπάθειας του Λ.Σ. για πρόσβαση σε δεδομένα • … την ασφάλεια του λογισμικού εφαρμογών του Η/Υ • π.χ. εκμετάλλευση ευπάθειας στην εφαρμογή που εκτελείται, για πρόσβαση σε δεδομένα • Περίπτωσεις: Υπερχείλιση Καταχωρητή, SQL injection, XSS attacks, …
Ασφάλεια Συστημάτων Η/ΥΕυπάθειες Λογισμικού Εφαρμογών
Ασφάλεια Υπολογιστών & Λειτουργικά Συστήματα • Το Λ.Σ. αποτελεί τον «ακρογωνιαίο λίθο» της σχεδίασης και της ασφαλούς λειτουργίας κάθε Υπολογιστή, και κατ’ επέκταση κάθε Πληροφοριακού Συστήματος (Π.Σ). • Απειλές έναντι της Ασφάλειας ενός Λ.Σ. • Υποβάθμιση ή διακοπή λειτουργίας Λ.Σ. προσωρινά ή μόνιμα • Προσπέλαση σε διαβαθμισμένα δεδομένα τα οποία τηρούνται σε προστατευμένη περιοχή • Τροποποίηση δεδομένων από μη εξουσιοδοτημένους χρήστες. • Αντικείμενα που απαιτούν προστασία • Σύστημα αρχείων, Βιβλιοθήκες, system services, Μνήμη, Μητρώο (Registry), Πυρήνας (Kernel),…
2. To Μοντέλο Ασφάλειας των Windows
Η ασφάλεια των WindowsμV (μετά Vista εποχή) Βασικές διαφορές με τα XP • User Account Control (UAC): Εκτέλεση εφαρμογών χρηστών με μειωμένα προνόμια • Αρχή ελάχιστου προνομίου(least privilege principle) • Mandatory Integrity Control • Επίπεδα ακεραιότητας σε υποκείμενα & αντικείμενα Αλλά και: • Bitlocker drive encryption • Κρυπτογράφηση δεδομένων • Virtualization • Εφ/γές: νομίζουν πως χρησιμο-ποιούν sys-global locations • Προστασία Μνήμης
Windows: Έλεγχος Πρόσβασης σε ΑντικείμεναΥποκείμενα (Subjects και Principals) Ονοματολογία • Human-readable principal=MACHINE\principal principal@domain=DOMAIN\principal • Machine-readable • Security Identifier (SID) • Οντότητες (Principals) • Τοπικός χρήστης (local user) • Χρήστης Τομέα (domain) • Ομάδες (groups) • Η/Υ • Υποκείμενα(Subjects) • Διεργασίες & Νήματα Πληροφορίες: Μητρώο (\HKEY_USERS), profile χρηστών (\Documents and Settings)
Windows: Έλεγχος Πρόσβασης σε ΑντικείμεναΑντικείμενα (Objects) • Windows Objects • Διεργασίες, νήματα, Αρχεία, κλειδιά μητρώου, συσκευές, θύρες I/O, περιοχές μνήμης, κόμβοι δικτύου…
Ποιο είναι το security context του υποκειμένου; Ποιο είναι το ID της οντότητας; Security Identifiers (SIDs) Σε ποιες ομάδες ανήκεικαι τι προνόμια έχει; Group(s), privileges Τι είδους πρόσβαση ζητείται; Μάσκα πρόσβασης (access mask) Ποιο το security descriptor του αντικειμένου; Τι λέει η ACL του αντικειμένου Τι είδους πρόσβαση και σε ποιόν Windows: Έλεγχος Πρόσβασης σε Αντικείμενα (Εξουσιοδότηση - Authorization)
Έλεγχος πρόσβασης σε αντικείμενα DAC (Discretionary Access Control): Οι ιδιοκτήτες καθορίζουν ποιος έχει τι είδους πρόσβαση Privileged Access Control: Πρόσβαση βάσει προνομίων Mandatory Integrity Control: Πρόσβαση βάσει επιπέδων ακεραιότητας (integrity levels) Windows: Έλεγχος Πρόσβασης σε Αντικείμενα (Εξουσιοδότηση - Authorization)
DAC (Discretionary Access Control) Ο ιδιοκτήτης ενός πόρου καθορίζει ποιος έχει τι είδους πρόσβαση Σύγκριση security context υποκειμένου με security descriptor (Access Control Lists - ACLs) αντικειμένου Windows: Έλεγχος Πρόσβασης σε Αντικείμενα (Εξουσιοδότηση - Authorization)
~Access token (subject’s view) Windows: Access tokens & Security Descriptors Access Control List (object’s view)
Access token (subject’s view) Windows: Access tokens & Security Descriptors Security Descriptor(object’s view)
Δικαιώματα Πρόσβασης (Permissions)Standard, Specific & Generic access rights *
DACL: Μία λίστα από ACEs Format μιας ACE
DACL: ΑλγόριθμοςΑπόφασηςΕκτελείται από: Security Reference Monitor (SRM) • Είσοδος στον αλγόριθμο • Subject’s access token • Οbject ACL, • Requested_access_mask • GrantedAccess0 • Έξοδος του αλγορίθμου Decision =(GrantedAccess == Requested_Access_Mask)
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΣΒΑΣΗΣ • Αν το token αναφέρει τον ιδιοκτήτη του αντικειμένου • Δίνονται τα δικαιώματα READ_CONTROL, και WRITE_DAC • Αν τα δικαιώματα αρκούν, η πρόσβαση επιτρέπεται, έξοδος • Για κάθε ACE, σύγκριση του SID της ACE με SID υποκειμένου • Το SID της ACE δεν ταιριάζει με το SID στο token SKIP • Τα SIDs ταιριάζουν, η ACE είναι τύπου Access-denied το access mask της ACE αφαιρείται από GrantedAccess (& δεν θα εξεταστεί ποτέ ξανά) • Τα SIDs ταιριάζουν, η ACE είναι τύπου allow το access mask της ACE προστίθεται στην GrantedAccess. • Αν η GrantedAccess περιέχει όλα τα δικαιώματα της requested access mask η πρόσβαση επιτρέπεται, Έξοδος • Αν η DACL τέλειωσε και Requested_access_mask <> GrantedAccess, η πρόσβαση απαγορεύεται
Privileged Access Control: Χρήση όταν η DAC δεν είναι αρκετή Case: Αν o υπάλληλος παραιτηθεί, πώς ο admin αποκτά πρόσβαση σε προστατευμένα αντικείμενα; Ορισμένες λειτουργίες δεν απαι-τούν αλληλεπίδραση με αντικείμενα, ωστόσο σχετίζονται με λογαριασμό Παράκαμψη ασφάλειας για backup τερματισμός Η/Υ, αλλαγή ώρας,.. Προνόμιο: το δικαίωμα ενός λογαριασμού να επιτελέσει μια λειτουργία συστήματος Windows: Έλεγχος Πρόσβασης σε Αντικείμενα (Εξουσιοδότηση - Authorization)
Access token: Privileges (Προνόμια) Windows XP, SP2
Mandatory Integrity Control (MIC) Περίπτωση: διάκριση μεταξύ Service, που εκτελείται αφού η Alice κάνει logon στο σύστημα, Άγνωστη εφαρμογή, που η Alice “κατέβασε” από το Internet Λύση: Το security context ενός υποκειμένου, εμπλουτίζεται με ένα επιπλέον χαρακτηριστικό: Το επίπεδο ακεραιότητας (Integrity level) Υλοποίηση της αρχής least privilege Windows: Έλεγχος Πρόσβασης σε Αντικείμενα (Εξουσιοδότηση - Authorization)
Mandatory Integrity Control (MIC)Επίπεδα ακεραιότητας (Integrity Levels)
Mandatory Integrity Control (MIC) Access token (with integrity levels) • Το security contextμιας διεργασίας πλέον περιλαμβάνει: • Στοιχεία Χρήστη (username & SID) • Ομάδες (Groups), • Προνόμια (Privileges) • + Επίπεδο ακεραιότητας (Integrity level)
Mandatory Integrity Control (MIC) Επίπεδα ακεραιότητας (Integrity Levels) • Κάθε διεργασία-παιδί «κληρονομεί»το token (άρα & το level) του γονέα. Aλλά: • Αν αποκτά πρόσβαση σε αντι-κείμενοχαμηλότερου level, υποβαθμίζεται στο level αυτό • Ο γονέας μπορεί να δημιουργήσει διεργασίες με, κατώτερο level
Mandatory Integrity Control (MIC) Επίπεδα ακεραιότητας (Integrity Levels)
Mandatory Integrity Control (MIC) Restricted tokens • Ένα restricted token είναι αντίγραφο ενός token, με αλλαγές όπως: • Αφαίρεση προνομίων από την περιοχή προνομίων • Μείωση του integrity level • Απόδοση του attribute “deny-only” στο Administrator SID ή σε άλλα Group SIDs • Πρόσθεση ενός restricted SID στο token
Σενάριο: Μία διεργασία με restricted token ζητάει read access σε 3 διαφορετικά αντικείμενα H διεργασία έχει πρόσβαση, ανν το SID της και το restricted SID έχουν πρόσβαση Restricted token
Mandatory Integrity Control (MIC) Case: Protected Mode IE (PMIE)
Mandatory Integrity Control (MIC) Case: Protected Mode IE (PMIE)
Mandatory Integrity Control (MIC)Πολιτικές Ακεραιότητας (Integrity Policies) http://msdn.microsoft.com/en-us/library/bb625963.aspx
Mandatory Integrity Control (MIC)Πολιτικές Ακεραιότητας (Integrity Policies) • Στο security descriptor (ACL) ενός αντικειμένου, εκτός από το integrity level, αποθηκεύεται & ένα mandatory label policy • Τι προστασία παρέχεται στο αντικείμενο βάσει του integrity level;
Windows: Έλεγχος Πρόσβασης σε Αντικείμενα (Εξουσιοδότηση - Authorization) • Για την πρόσβαση διενεργούνται δύο έλεγχοι, με την εξής σειρά: • Mandatory integrity check • To integrity level του υποκειμένου δικαιολογεί την πρόσβαση; • Εξετάζονται: τα integrity level και το mandatory policy του αντικειμένου • Discretionary access check • Τι είδους πρόσβαση έχει ο συγκεκριμένος λογαριασμός
Ασφάλεια Windows – Άλλα Θέματα Virtualization • Πολλές εφαρμογές (προ Vista)αρέσκονταν να γράφουν σε system-global τοποθεσίες, π.χ. • %ProgramFiles% και HKEY_ LOCAL_MACHINE\Software • … αντί για τα: • %AppData%και HKEY_ CURRENT_USER\Software • Virtualization: οι εφαρμογές νομίζουν ότι χρησιμοποιούν system-global locations • File system virtualization • Registry virtualization
User Account Control (UAC)Elevation (Admin Approval Mode - AAM) Consent elevation • Σκοπός • Ο Admin εκτελεί εφαρμογές ως standard user • Όταν απαιτούνται δικαιώματα admin, δεν απαιτείται υποβο-λήusername & password • Μηχανισμός AAM • Κατά τη σύνδεση, δημιουργία δύο tokens: • Ένα, με δικαιώματα standard user & ένα, με δικαιώματα administrator
User Account Control (UAC)Elevation (Admin Approval Mode - AAM)
Elevation (Admin Approval Mode - AAM) Windows component digitally signed by Microsoft Windows component digitally signed by someone other than Microsoft Unsigned components
Ασφάλεια Windows – Άλλα ΘέματαΈλεγχοι Ασφάλειας (Security Auditing)
Στοιχεία ασφάλειας στα WindowsSecurity Reference Monitor SRM: Ασχολείται με: Επιβολή πολιτικών ασφάλειας Έλεγχο δικαιωμάτων για πρόσβαση σε αντικείμενα Θέματα προνομίων (user rights) Δημιουργία εγγραφών ελέγχου (audit messages)πρόσβασης …