drhouse
22-07-08, 16:56
Το αρθράκι αυτό αναφέρεται σε ένα NEO αμυντικό μηχανσιμό των Vista, Πως αυτός ο μηχανσιμός μας βοηθάει να σερφάρουμε ασφαλέστερα με τον Vista IE7; Πως να ρυθμίζουμε τον Vista IE7; Γιατί δεν τον έχουν τα XP; τυχόν πρόβλήματα που μπορεί να αντιμετοπίσουμε, όπως πρόβλημα με την εκτύπωση web inforamtion ...
Αποτελήται από δύο μέρη :
Α) Για απλούς χρήστες - Vista Only - Internet Explorer protected mode /WIC
Β) Περισσότερο ανεβασμένους χρήστες - Μηχανισμός Windows Integrity Control
ΜΕΡΟΣ Α, Vista Only - Internet Explorer protected mode /WIC
Κατ’ αρχήν, θα παρακαλούσα να μην παρερμηνευτεί η αναφορά μου στον Internet Exploer 7 σαν προτροπή χρήσης.
Ο Internet Explorer 7 τρέχει διαφορετικά στα Vista απ’ ότι στα Xp sp2.
Στα Vista ο ΙΕ 7, κάτω δεξιά εμφανίζει την ένδειξη Protected mode ON/OFF
40889
Όταν τρέχει πάνω από τα Vista τότε ο IE 7 τρέχει μέσα σε δύο processes (iexplorer.exe, euser.exe). Ο iexplorer.exe τρέχει σε χαμηλό (low) επιπεδο αξιοπιστίας ενώ ieuser.exe σε υψηλότερο (medium).
ΥΠ 'ΟΨΙΝ Όταν ο χρήστης σερφάρει στο internet με τον iexplorer.exe, αυτός (ο iexplorer.exe) δεν μπορεί να γράψει πληροφορίες σε κανένα σημείο του σκληρού παρά μόνο αυτά που έχουν χαμηλή αξιοπιστία όπως είναι το dir temporary internet files.Το ίδιο ισχύει και για τα adds-on, δηλαδή σε περίπτωση που φορτωθεί στον iexplorer.exe κακόβουλος κώδικας, αυτός θα τρέχει με χαμηλή αξιοπιστία και η ζημιά που θα προξενήσει θα είναι περιορισμένη.
Πότε ο iexplorer εκμεταλεύεται την αξιοπιστία των αντικειμένων;
Όταν στην κάτω δεξιά γωνία εμφανίζεται το μήνημα “Protected mode: ON” Tools -> Internet Options -> security -> Enable Protected mode.
Η διαδικασία ενεργοποίησης / απενεργοποίησης από τον απλό χρήστη είναι πολύ απλή διαδικασία, συνήθως γίνεται από μενού TOOLS -> INTERNET OPTIONS -> καρτέλα SECURITY
Αν έχουμε ένα υπολογιστή και θέλουμε άλλες φορές να έχουμε ενεργοποιημένο το Protectited mode και άλλες ότι τότε δουλεύουμε από εδώ.
Μπορεί κάποιος να αναρωτηθεί, τι λόγους έχω να κάνω συχνές εναλλαγές ανάμεσα στις δύο καταστάσεις (protected mode ON/OFF);ί
Οι λόγοι είναι αρκετοί π.χ δεν μπορώ να εκτυπώσω web pages (πληροφορίες που προέρχονται από το διαδίκτυο) στον τοπικό ή δικτυακό εκτυπωτή μου, όπως θα εξηγήσω παρακάτω (Β μέρος) με την Vista φιλοσοφία οτιδήποτε προέρχεται από το διαδίκτυο θεωρήται από το λειτουργικό ΑΝΑΞΙΟΠΙΣΤΟ και επομένως επικύνδινο.
40890
40891
Αν θέλουμε να επιβάλουμε την σχετική ρύθμιση (IE7 protected mode ΠΑΝΤΑ ΟΝ ή OFF) , θα ήταν καλύτερα να τον ασφαλίσουμε από το group policy,Administrative templates -> Windows components -> Internet Explorer -> Security Page -> Internet zone -> Turn On protected mode, με αυτή την επιλογή ο χρήστης πλέον δεν μπορεί να μεταβάλει το IE7 protected mode.
Ενεργοποιημένή επιλογή “Enable Protected Mode” σημαίνει ότι ο iexplorer.exe τρέχει με χαμηλή αξιοπιστία.
ΠΡΑΚΤΙΚΗ ΣΥΜΒΟΥΛΗ Τα sites που δεν σας επιτρέπουν πρόσβαση διότι έχετε ενεργοποιημένο το protected mode μπορείτε να τα συμπερυλάβετε στα trusted sites και να επιλέξετε την ενεργοποίηση / απενεργοποίηση του protected mode μόνο γι’ αυτές τις ζώνες.
Ο ΙΕ 7 στα XP όπως καταλαβαίνουμε δεν έχει Proected Mode ρύθμιση.
Αναφορές http://msdn.microsoft.com/en-us/library/bb250462.aspx
ΜΕΡΟΣ Β - Windows Integrity Control.
Τα Vista εισάγουν άλλο ένα ΝΕΟ μηχανισμό προστασίας (Windows Integrity Control – WIC).
Σκοπός του WIC είναι η προστασία αντικειμένων όπως :
α) αρχεία,
β) εκτυποτές,
γ) named pipes, registry keys, …
από :
α) διάφορες επιθέσεις,
β) κακόβουλο κώδικα,
γ) ακόμα και από αθώα λάθη του χρήστη.
Ο μηχανιστμός αυτός λαμβάνει υπ’ όψιν του μια ΝΕΑ παράμετρο την ΑΞΙOΠΙΣΤΙΑ (κατά την MS ΙΝΤΕΓΡΙΤΥ) που έχει το κάθε αντικείμενο, η οποία καθορίζει, πως αυτά θα αλληλεπιδρούν μεταξύ τους. Με απλά λόγια, τα αντικείμενα χαμηλής αξιοπιστίας δεν μπορουν να αλληλεπιδρούν με αλλα αντικείμενα υψηλότερης αξιοπιστίας.
ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ το ΕΠΙΠΕΔΟ ΑΞΙΟΠΙΣΤΙΑΣ επιβάλεται των NTFS permisions που σημαίνει ότι ακόμα κι όταν ένα αρχείο/διαδικασία (file/process) Χ έχει ΟΛΕΣ τις άδειες ελέγχου για ένα άλλο αντικείμενο Υ, εάν το αντικέιμενο Χ έχει χαμηλότερο επίπεδο αξιοπιστίας από αυτό του αντικειμένου Υ (που προσπαθεί να αλληλεπιδράσει), η επικοινωνία διακόπτεται από τον μηχανισμό WIC.
Processes που έχουν το ίδιο “επίπεδο αξιοπιστίας” αλληλεπιδρούν μεταξύ των όπως και στα XP.
Έτσι, ο μηχανισμός WIC, ενεπλέκεται μόνο στην περίπτωση που μια διαδικασία θέλει να αλληλεπιδράσει με μία άλλη που έχει υψηλότερο επίπεδο αξιοπιστίας. Όταν δηλαδή μια διαδικασία με χαλημό επίπεδο αξιοπιστίας επιχειρήσει να διαβάσει, γράψει, ή να εκτελέσει ένα αντικείμενο που έχει μεγαλύτερη αξιοπιστία, τότε ο μηχανισμός WIC θα εμποδίσει αυτή την προσπάθεια.
ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ Εξ’ ορισμού ο μηχανισμός WIC ελέγχει μόνο κινήσεις τύπου write αν διευθετηθεί κατάλληλα μπορεί να ελέγξει και reads, execute.
Επειδή από το Internet εγκυμονούν πολλοί κίνδυνοι, οι άνθρωποι που σχεδίασαν την ασφάλεια των Vista αποφάσισαν να αστυνομεύσουν οτιδήποτε προέρχεται / σχετίζεται με αυτό. To ίδιο έκαναν και με τα services που τώρα τρέχουν σε ξεχωριστά sessions από τους users.
Η κλίμακα ΑΞΙΟΠΙΣΤΙΑΣ (WIC) έχει έξι επίπεδα.
Για να πάρουμε μία ιδέα, αναφέρω οτιδήποτε δεδομένα σχετίζονται με Internet χαρακτηρίζονται με integrity level 2 (Low) ενώ οι κανονικοί χρήστες βρίσκονται στο integrity level 3. Με αυτό το μοντέλο η MS δεν επιτρέπει στα δεδομένα που έρχοντε από το Internet να διαγράψουν ... τροποποιήσουν το Vista system. Αυτό το μοντέλο ασφάλειας ονομάζεται “process isolation” και δεν είναι επινόηση της MS.
Ας υποθέσουμε τώρα ότι κατεβάζουμε ένα πρόγραμμα (κακκόβουλο) από το Internet. Κατά κανόνα τα κακόβουλα προγράμματα επιδιώκουν με την βοήθεια της resistry να τρέχουν κάθε φορά που ξεκινάει ο υπολογιστή. Η registry στα Vista έχει υψηλότερο integrity level από τα δεδομένα που προέρχοντε από το Internet. Όταν λοιπόν ο κακόβουλος κώδικας επιχειρήσει να γράψει στην registry θα αποτύχει ή στην χειρότερη περίπτωση θα αναλάβει o UAC (σαν δευτερος αμυντικός μηχανισμός).
Αυτή η αστυνόμευση αλληλεπίδρασης των διάφορων αντικειμένων όρίζεται από έξι επιπεδα αξιοπιστίας :
UNTRUSTED Οι ανώνυμες διαδικασίες (processes) αυτόματα ορίζονται μη αξιόπιστες.
LOW Δίνεται σε οτιδήποτε προέρχεται από το Internet.
Ο Internet Explorer τρέχει με αυτό το επίπεδο αξιοπιστίας. Αυτό το επίπεδό ασφάλειας μπορεί να αλλάξει απενεργοποιώντας to protected mode.
Τα Vista δημιουργούν μερικά αντικείμενα με low integrity control όπως είναι ο φάκελος “temporary Internet files”. Επίσης την ίδια χαμηλή αξιοπιστία τα Vista δίνουν σε μερικά κλειδιά της registry, διαφορετικά ο Internet Explorer δεν θα μπορούσε να σώσει τις ρυθμίσεις του.
MEDIUM Όλα τα αντικείμενα που το σύστημα δεν μαρκάρει αποκλειστικά με ετικέτα αξιοπιστίας εξ’ ορισμού λαμβάνουν mediun αξιοπιστία. Οι κανονικοί χρήστες και τα αρχεία των χρηστών έχουν medium αξιοπιστία. Με αυτό τον τρόπο ένα κακόβουλο πρόγραμμα που προήλθε από το Internet δεν μπορεί να βλάψει τα αρχεία του χρήστη. ΕΝΩ, το ίδιο κακόβουλο πρόγραμμα όταν εισέλθει στο σύστημα μέσω CD αποκτά ετικέτα αξιοπιστίας medium – high (εξαρτάται από τον λογαριασμό που χρησιμοποιήθηκε standard, administrator).
HIGH Οι administrator τρέχουν με αυτή την αξιοπιστία.
SYSTEM Τα services του συστήματος και ο kernel αποκτούν αυτό το επίπεδο αξιοπιστίας.
INSTALLER Πολύ ειδική περίπτωση με την υψηλότερη αξιοπιστία.
ΣΗΜΕΙΩΣΗ Στα ανώτερα επίπεδα προστασίας παίζεται λιγότερο παιχνίδι, τo περισσότερο παίζεται ανάμεσα στα επίπεδα LOW και MEDIUM . Οι κανονικοί χρήστες λειτουργούν στο medium, οι Administrotors στο High και ότιδήποτε σχετίζεται με Internet στο LOW.
ΛΑΙΚΟ ΠΑΡΑΔΕΙΓΜΑ Ας αναφέρουμε άλλο ένα παράδειγμα, και ας υποθέσουμε ότι κάποιος χρήστης λαμβάνει ένα email το οποίο έχει ένα link σε κακόβουλο κώδικα και ας υποθέσουμε ότι ο χρήστης κάνει κλικ σ’ αυτό το link, τότε ο κακόβουλος κώδικας από το web site θα προσπαθήσει να εγκατασήσει κάποιο κακόβουλο πρόγραμμα κάπου μέσα στον σκληρό δίσκο και ίσως να επιδιώξει να τροποποιήσει την registry ώστε να βρίσκεται στο προσκύνιο κάθε φόρα που ο χρήστης εκκινεί τον υπολογιστή του. Συνήθως αυτά τα προγράμματα επιχειρούν να τροποποιήσουν ή να διαγράψουν κάποιοα αρχεία ακόμα και να εκτελέσουν διάφορες processes με σκοπό να εκκινήσουν αλλα κακόβουλη δραστηριότητα.
Τi θα γίνει αν το λειτουργικό μας είναι XP;
Στα Xp, η μοναδική προστασία αυτού του είδους επιθέσεων εμποδίζεται μόνο από τις αδειες και τα δικαιώματα που έχει ο χρήστης (όλοι όμως εργαζόμαστε στα Xp σαν administrator) καθώς και από την προστασία του συστήματος και της registry.
Ti θα γίνει αν το λειτουργικό μας είνα Vista;
Στα Vista όπως έχουμε αναφέρει, οτιδήποτε που σχετίζεται με το Internet θεωρήται ΑΝΑΞΙΟΠΙΣΤΟ και χαρακτηρίζεται και τρέχει σε χαμηλό επίπεδο αξιοπιστίας, έστι ο κακόβουλος κώδικάς που προαναφέραμε στο παράδειγμα δεν θα μπορέσει να τροποποιήσει, διαγράψει η με κάποιο τρόπο να αλληλεπιδράσει με αντικείμενα του συστήματος.
Πως τα διάφορα αντικείμενα αποκτούν και αποθηκεύουν το επίπεδο αξιοπιστίας.
Στα Vista, όλα τα αντικείμενα (processes, users, files, .exe …) σχετίζονται υποχρεωτικά με την παράμετρο αξιοπιστία (integrity control) η οποία όπως προαναφέραμε υπερισχύει των προνομίων NTFS.
Εδώ θα πρέπει να ξεκαθαρίσουμε λίγο τα πράγματα, τα προνόμια NTFS δίνοντε από τον χρήστη ενώ το επίπεδο αξιοπιστίας καθορίζεται από το λειτουργικό (mandatory integrity control).
Το επίπεδο αξιοπιστίας αποθηκεύεται σε μία εγγραφή που ονομάζεται System Access Control Entry (SACE) μέσα στο αντικείμενο System Access Control List. Στα Vista το επίπεδο αξιοπιστίας αποθηκεύεται σαν νέου τύπου εγραφή access control την οποία η MS ονομάζει “Mandatory Label” που στην πραγματικότητα είνα μία ειδική SACE.
Στα Vista για να δούμε το System Access Control Entry κάποιου αντικειμένου:
Δεξί κλικ στο αντικείμενο, properies, security, advanced, continue …
Και τώρα λίγη ΠΑΡΑΝΟΙΑ, ενώ στα Vista όλα τα αντικείμενα έχουν επίπεδο αξιοπιστίας όταν προσπαθήσουμε να το δούμε μέ “Δεξί κλικ στο αντικείμενο, properies, security, advanced, continue” δεν βλέπουμε τίποτα, WOW. Η MS για εσωτερικούς λόγους δεν εμφανίζει το mandatory level SACE στo GUI->audit που προαναφέραμε αν και προσφέρει ένα command line tool.
Λίγα λόγια για το εργαλείο icacls
Στις περιπτώσεις που αντιμετωπίζουμε προβλήματα πρόσβασης κάποιου αντικειμένου όπως :
α) όταν κάποια διαδικασία αποτυγχαίνει,
β) κάποιο προγραμμα δεν τρέχει,
γ) δεν μπορούμε να γράψουμε δεδομένα σε κάποιο φάκελο ένα από τα πράγματα που πρέπει να διερευνήσουμε είναι το WIC integrity level των αντικειμέων που εμπλέκοντε.
Για να δούμε το επίπεδο αξιοπιστίας ενός αντικειμένου, εκτελούμε την εντολή icacls ακολουθούμενη από την διαδρομή του αντικειμένου: πχ icacls c:\windows\explorer.exe
C:\windows\explorer.exe NT SERVICE\TrustedInstaller: (F)
BUILTIN\Administrators: (RX)
NT AUTHORITY\SYSTEM: (RX)
BUILTIN\Users: (RX)
F - full access, F - full access, M - modify access, RX - read and execute access, R - read-only access, W - write-only access
ΣΗΜΕΙΩΣΗ Αν ο explorer είχε madatory level τότε θα εμφανιζόταν η πληροφορία Mandatory Label \Medium Mandatory Level. Αν θέλουμε να διερευνήσουμε την αλληλεπίδραση αντικειμένων και εξετάζουμε τις παραμέτρους αξιοπιστίας αυτών με το εργαλείο icacls τότε θα πρέπει να έχουμε υπ’ όψιν μας ότι η μη εμφάνιση Mandatory Label σημαίνει επίπεδο αξιοπιστίας MEDIUM, εξ’ ορισμού.
Ο χρήστης για να αλλάξει την αξιοπιστία ενός αντικειμένου θα πρέπει να έχει κατάλληλα δικαιώματα (change permisions, take ownership) και άδειες (SerelabelPrivilege).
Σε καμία περίπτωση ενας χρήστης δεν μπορεί να δώσει μεγαλύτερη αξιοπιστία από αυτή που κατέχει ο ίδιος.
Με την εντολή Icacls filename /setinegritylevel H|M|L αλλάζουμε την αξιοπιστία ενός αντικειμένου.
Πως μπορώ να δώ το επίπεδο αξιοπιστίας ενός χρήστη;
Whoami /groups /fo list
Group Name: Mandatory Label\Medium Mandatory Level
Type: Unknown SID type
SID: S-1-16-8192
Attributes: Mandatory group, Enabled by default, Enabled group
1) Mandatory Label \Medium landatory Level, σημαίνει Medium Αξιοπιστία.
2) Ο χαρακτηρισμός 8192 στο SID σχετίζεται με medium Αξιοπιστία.
Όπως όλα τα αντικείμενα χαρακτηρίζοντε από ένα επίπεδο αξιοπιστίας έτσι και τα Processes.
ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ Τροποποίηση αρχείων συστήματος.
Στα Xp, ο administrator έχει ΟΛΑ τα NTFS προνόμια για το φάκελο \WINDOWS (ορχεία συστήματος).
Στα Vista, ο φάκελος \WINDOWS δεν κληρονομεί τα προνόμια του root dir (C:\) και ο administrator έχει ΟΛΑ τα προνόμια για το \WINDOWS, εκτός από delete subfolders and files, change permissions, take ownership.
Δεν μπορούμε δηλαδή να αλλάξουμε το επίπεδο αξιοπιστίας του \WINDOWS διότι χρειαζόμαστε προνόμια change permissions και take ownership όπως προανέφερα. Επίσης στα Vista ο administrator ΔΕΝ είναι OWNER του \WINDOWS. Η MS, επίσης εκακε και άλλες αλλαγές στους υποφακέλους του \Windows που δεν είναι της στιγμής να αναφέρω.
ΠΡΑΚΤΙΚΗ ΣΥΜΒΟΥΛΗ Για όσους διερωτώνται πως θα κάμουμε troubleshooting, έχετε υπ’ όψιν ότι o administrator στα Vista διατειρεί ακόμα το προνόμιο “Take ownership”.
Συγκρισή Windows XP - Vista
Είναι γενικά αποδεκτό ότι στα Windows XP όλα αυτά τα χρόνια έχει γίνει ένα καλό crash test και ότι έχουν διορθωθεί πολλά προβλήματα με τα service packs, hot fixes critical updates …Είναι επίσης απόδεκτό ότι με τα νεαρά Vista υπάρχουν αρκετές τρύπες ασφάλειας.
Καμία λύση στα θέματα ασφάλειας δεν είναι τελεσίδική, ιδανική ... τη μία φορά δυναμώνει η ασπίδα, την άλλη το δόρυ, μετά η ασπίδα και η εναλαγές συνεχίζονται και θα συνεχίζονται ... Σίγουρα το WIC επιδέχεται βελτίωσης, π.χ. δεν υπάρχει γραφικό περιβάλλον παραμετροποίησης για να μην αναφέρω σοβαρότερα θέματα.
Θα μου επιτρέψετε λοιπόν να επαναλάβω ότι στα Vista η ασφάλεια έχει ανασχεδιασθεί και ότι έχουν προστεθεί ΠΑΜΠΟΛΛΟΙ και ανεξάρτητοι αμυντικοί μηχανισμοί (UAC, WIC, Application Isolation, Secured Services, Post-Boot protection, Code Integrity, Registry Virtualization, Data redirection, Rights Management Services .... Second line of defence, κάτι που περνάει από τον ένα μηχανισμό, θα μπορούσαμε λαικά να πουμε σκαλώνει παρακάτω ...
Για άλλη μια φορά, κατά την ταπεινή μου γνώμη, τα VISTA στο σύνολό τους είναι ΚΑΤΑ ΠΟΛΥ ΑΣΦΑΛΕΣΤΕΡΑ από τα προηγούμενα Windows XP.
Αποτελήται από δύο μέρη :
Α) Για απλούς χρήστες - Vista Only - Internet Explorer protected mode /WIC
Β) Περισσότερο ανεβασμένους χρήστες - Μηχανισμός Windows Integrity Control
ΜΕΡΟΣ Α, Vista Only - Internet Explorer protected mode /WIC
Κατ’ αρχήν, θα παρακαλούσα να μην παρερμηνευτεί η αναφορά μου στον Internet Exploer 7 σαν προτροπή χρήσης.
Ο Internet Explorer 7 τρέχει διαφορετικά στα Vista απ’ ότι στα Xp sp2.
Στα Vista ο ΙΕ 7, κάτω δεξιά εμφανίζει την ένδειξη Protected mode ON/OFF
40889
Όταν τρέχει πάνω από τα Vista τότε ο IE 7 τρέχει μέσα σε δύο processes (iexplorer.exe, euser.exe). Ο iexplorer.exe τρέχει σε χαμηλό (low) επιπεδο αξιοπιστίας ενώ ieuser.exe σε υψηλότερο (medium).
ΥΠ 'ΟΨΙΝ Όταν ο χρήστης σερφάρει στο internet με τον iexplorer.exe, αυτός (ο iexplorer.exe) δεν μπορεί να γράψει πληροφορίες σε κανένα σημείο του σκληρού παρά μόνο αυτά που έχουν χαμηλή αξιοπιστία όπως είναι το dir temporary internet files.Το ίδιο ισχύει και για τα adds-on, δηλαδή σε περίπτωση που φορτωθεί στον iexplorer.exe κακόβουλος κώδικας, αυτός θα τρέχει με χαμηλή αξιοπιστία και η ζημιά που θα προξενήσει θα είναι περιορισμένη.
Πότε ο iexplorer εκμεταλεύεται την αξιοπιστία των αντικειμένων;
Όταν στην κάτω δεξιά γωνία εμφανίζεται το μήνημα “Protected mode: ON” Tools -> Internet Options -> security -> Enable Protected mode.
Η διαδικασία ενεργοποίησης / απενεργοποίησης από τον απλό χρήστη είναι πολύ απλή διαδικασία, συνήθως γίνεται από μενού TOOLS -> INTERNET OPTIONS -> καρτέλα SECURITY
Αν έχουμε ένα υπολογιστή και θέλουμε άλλες φορές να έχουμε ενεργοποιημένο το Protectited mode και άλλες ότι τότε δουλεύουμε από εδώ.
Μπορεί κάποιος να αναρωτηθεί, τι λόγους έχω να κάνω συχνές εναλλαγές ανάμεσα στις δύο καταστάσεις (protected mode ON/OFF);ί
Οι λόγοι είναι αρκετοί π.χ δεν μπορώ να εκτυπώσω web pages (πληροφορίες που προέρχονται από το διαδίκτυο) στον τοπικό ή δικτυακό εκτυπωτή μου, όπως θα εξηγήσω παρακάτω (Β μέρος) με την Vista φιλοσοφία οτιδήποτε προέρχεται από το διαδίκτυο θεωρήται από το λειτουργικό ΑΝΑΞΙΟΠΙΣΤΟ και επομένως επικύνδινο.
40890
40891
Αν θέλουμε να επιβάλουμε την σχετική ρύθμιση (IE7 protected mode ΠΑΝΤΑ ΟΝ ή OFF) , θα ήταν καλύτερα να τον ασφαλίσουμε από το group policy,Administrative templates -> Windows components -> Internet Explorer -> Security Page -> Internet zone -> Turn On protected mode, με αυτή την επιλογή ο χρήστης πλέον δεν μπορεί να μεταβάλει το IE7 protected mode.
Ενεργοποιημένή επιλογή “Enable Protected Mode” σημαίνει ότι ο iexplorer.exe τρέχει με χαμηλή αξιοπιστία.
ΠΡΑΚΤΙΚΗ ΣΥΜΒΟΥΛΗ Τα sites που δεν σας επιτρέπουν πρόσβαση διότι έχετε ενεργοποιημένο το protected mode μπορείτε να τα συμπερυλάβετε στα trusted sites και να επιλέξετε την ενεργοποίηση / απενεργοποίηση του protected mode μόνο γι’ αυτές τις ζώνες.
Ο ΙΕ 7 στα XP όπως καταλαβαίνουμε δεν έχει Proected Mode ρύθμιση.
Αναφορές http://msdn.microsoft.com/en-us/library/bb250462.aspx
ΜΕΡΟΣ Β - Windows Integrity Control.
Τα Vista εισάγουν άλλο ένα ΝΕΟ μηχανισμό προστασίας (Windows Integrity Control – WIC).
Σκοπός του WIC είναι η προστασία αντικειμένων όπως :
α) αρχεία,
β) εκτυποτές,
γ) named pipes, registry keys, …
από :
α) διάφορες επιθέσεις,
β) κακόβουλο κώδικα,
γ) ακόμα και από αθώα λάθη του χρήστη.
Ο μηχανιστμός αυτός λαμβάνει υπ’ όψιν του μια ΝΕΑ παράμετρο την ΑΞΙOΠΙΣΤΙΑ (κατά την MS ΙΝΤΕΓΡΙΤΥ) που έχει το κάθε αντικείμενο, η οποία καθορίζει, πως αυτά θα αλληλεπιδρούν μεταξύ τους. Με απλά λόγια, τα αντικείμενα χαμηλής αξιοπιστίας δεν μπορουν να αλληλεπιδρούν με αλλα αντικείμενα υψηλότερης αξιοπιστίας.
ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ το ΕΠΙΠΕΔΟ ΑΞΙΟΠΙΣΤΙΑΣ επιβάλεται των NTFS permisions που σημαίνει ότι ακόμα κι όταν ένα αρχείο/διαδικασία (file/process) Χ έχει ΟΛΕΣ τις άδειες ελέγχου για ένα άλλο αντικείμενο Υ, εάν το αντικέιμενο Χ έχει χαμηλότερο επίπεδο αξιοπιστίας από αυτό του αντικειμένου Υ (που προσπαθεί να αλληλεπιδράσει), η επικοινωνία διακόπτεται από τον μηχανισμό WIC.
Processes που έχουν το ίδιο “επίπεδο αξιοπιστίας” αλληλεπιδρούν μεταξύ των όπως και στα XP.
Έτσι, ο μηχανισμός WIC, ενεπλέκεται μόνο στην περίπτωση που μια διαδικασία θέλει να αλληλεπιδράσει με μία άλλη που έχει υψηλότερο επίπεδο αξιοπιστίας. Όταν δηλαδή μια διαδικασία με χαλημό επίπεδο αξιοπιστίας επιχειρήσει να διαβάσει, γράψει, ή να εκτελέσει ένα αντικείμενο που έχει μεγαλύτερη αξιοπιστία, τότε ο μηχανισμός WIC θα εμποδίσει αυτή την προσπάθεια.
ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ Εξ’ ορισμού ο μηχανισμός WIC ελέγχει μόνο κινήσεις τύπου write αν διευθετηθεί κατάλληλα μπορεί να ελέγξει και reads, execute.
Επειδή από το Internet εγκυμονούν πολλοί κίνδυνοι, οι άνθρωποι που σχεδίασαν την ασφάλεια των Vista αποφάσισαν να αστυνομεύσουν οτιδήποτε προέρχεται / σχετίζεται με αυτό. To ίδιο έκαναν και με τα services που τώρα τρέχουν σε ξεχωριστά sessions από τους users.
Η κλίμακα ΑΞΙΟΠΙΣΤΙΑΣ (WIC) έχει έξι επίπεδα.
Για να πάρουμε μία ιδέα, αναφέρω οτιδήποτε δεδομένα σχετίζονται με Internet χαρακτηρίζονται με integrity level 2 (Low) ενώ οι κανονικοί χρήστες βρίσκονται στο integrity level 3. Με αυτό το μοντέλο η MS δεν επιτρέπει στα δεδομένα που έρχοντε από το Internet να διαγράψουν ... τροποποιήσουν το Vista system. Αυτό το μοντέλο ασφάλειας ονομάζεται “process isolation” και δεν είναι επινόηση της MS.
Ας υποθέσουμε τώρα ότι κατεβάζουμε ένα πρόγραμμα (κακκόβουλο) από το Internet. Κατά κανόνα τα κακόβουλα προγράμματα επιδιώκουν με την βοήθεια της resistry να τρέχουν κάθε φορά που ξεκινάει ο υπολογιστή. Η registry στα Vista έχει υψηλότερο integrity level από τα δεδομένα που προέρχοντε από το Internet. Όταν λοιπόν ο κακόβουλος κώδικας επιχειρήσει να γράψει στην registry θα αποτύχει ή στην χειρότερη περίπτωση θα αναλάβει o UAC (σαν δευτερος αμυντικός μηχανισμός).
Αυτή η αστυνόμευση αλληλεπίδρασης των διάφορων αντικειμένων όρίζεται από έξι επιπεδα αξιοπιστίας :
UNTRUSTED Οι ανώνυμες διαδικασίες (processes) αυτόματα ορίζονται μη αξιόπιστες.
LOW Δίνεται σε οτιδήποτε προέρχεται από το Internet.
Ο Internet Explorer τρέχει με αυτό το επίπεδο αξιοπιστίας. Αυτό το επίπεδό ασφάλειας μπορεί να αλλάξει απενεργοποιώντας to protected mode.
Τα Vista δημιουργούν μερικά αντικείμενα με low integrity control όπως είναι ο φάκελος “temporary Internet files”. Επίσης την ίδια χαμηλή αξιοπιστία τα Vista δίνουν σε μερικά κλειδιά της registry, διαφορετικά ο Internet Explorer δεν θα μπορούσε να σώσει τις ρυθμίσεις του.
MEDIUM Όλα τα αντικείμενα που το σύστημα δεν μαρκάρει αποκλειστικά με ετικέτα αξιοπιστίας εξ’ ορισμού λαμβάνουν mediun αξιοπιστία. Οι κανονικοί χρήστες και τα αρχεία των χρηστών έχουν medium αξιοπιστία. Με αυτό τον τρόπο ένα κακόβουλο πρόγραμμα που προήλθε από το Internet δεν μπορεί να βλάψει τα αρχεία του χρήστη. ΕΝΩ, το ίδιο κακόβουλο πρόγραμμα όταν εισέλθει στο σύστημα μέσω CD αποκτά ετικέτα αξιοπιστίας medium – high (εξαρτάται από τον λογαριασμό που χρησιμοποιήθηκε standard, administrator).
HIGH Οι administrator τρέχουν με αυτή την αξιοπιστία.
SYSTEM Τα services του συστήματος και ο kernel αποκτούν αυτό το επίπεδο αξιοπιστίας.
INSTALLER Πολύ ειδική περίπτωση με την υψηλότερη αξιοπιστία.
ΣΗΜΕΙΩΣΗ Στα ανώτερα επίπεδα προστασίας παίζεται λιγότερο παιχνίδι, τo περισσότερο παίζεται ανάμεσα στα επίπεδα LOW και MEDIUM . Οι κανονικοί χρήστες λειτουργούν στο medium, οι Administrotors στο High και ότιδήποτε σχετίζεται με Internet στο LOW.
ΛΑΙΚΟ ΠΑΡΑΔΕΙΓΜΑ Ας αναφέρουμε άλλο ένα παράδειγμα, και ας υποθέσουμε ότι κάποιος χρήστης λαμβάνει ένα email το οποίο έχει ένα link σε κακόβουλο κώδικα και ας υποθέσουμε ότι ο χρήστης κάνει κλικ σ’ αυτό το link, τότε ο κακόβουλος κώδικας από το web site θα προσπαθήσει να εγκατασήσει κάποιο κακόβουλο πρόγραμμα κάπου μέσα στον σκληρό δίσκο και ίσως να επιδιώξει να τροποποιήσει την registry ώστε να βρίσκεται στο προσκύνιο κάθε φόρα που ο χρήστης εκκινεί τον υπολογιστή του. Συνήθως αυτά τα προγράμματα επιχειρούν να τροποποιήσουν ή να διαγράψουν κάποιοα αρχεία ακόμα και να εκτελέσουν διάφορες processes με σκοπό να εκκινήσουν αλλα κακόβουλη δραστηριότητα.
Τi θα γίνει αν το λειτουργικό μας είναι XP;
Στα Xp, η μοναδική προστασία αυτού του είδους επιθέσεων εμποδίζεται μόνο από τις αδειες και τα δικαιώματα που έχει ο χρήστης (όλοι όμως εργαζόμαστε στα Xp σαν administrator) καθώς και από την προστασία του συστήματος και της registry.
Ti θα γίνει αν το λειτουργικό μας είνα Vista;
Στα Vista όπως έχουμε αναφέρει, οτιδήποτε που σχετίζεται με το Internet θεωρήται ΑΝΑΞΙΟΠΙΣΤΟ και χαρακτηρίζεται και τρέχει σε χαμηλό επίπεδο αξιοπιστίας, έστι ο κακόβουλος κώδικάς που προαναφέραμε στο παράδειγμα δεν θα μπορέσει να τροποποιήσει, διαγράψει η με κάποιο τρόπο να αλληλεπιδράσει με αντικείμενα του συστήματος.
Πως τα διάφορα αντικείμενα αποκτούν και αποθηκεύουν το επίπεδο αξιοπιστίας.
Στα Vista, όλα τα αντικείμενα (processes, users, files, .exe …) σχετίζονται υποχρεωτικά με την παράμετρο αξιοπιστία (integrity control) η οποία όπως προαναφέραμε υπερισχύει των προνομίων NTFS.
Εδώ θα πρέπει να ξεκαθαρίσουμε λίγο τα πράγματα, τα προνόμια NTFS δίνοντε από τον χρήστη ενώ το επίπεδο αξιοπιστίας καθορίζεται από το λειτουργικό (mandatory integrity control).
Το επίπεδο αξιοπιστίας αποθηκεύεται σε μία εγγραφή που ονομάζεται System Access Control Entry (SACE) μέσα στο αντικείμενο System Access Control List. Στα Vista το επίπεδο αξιοπιστίας αποθηκεύεται σαν νέου τύπου εγραφή access control την οποία η MS ονομάζει “Mandatory Label” που στην πραγματικότητα είνα μία ειδική SACE.
Στα Vista για να δούμε το System Access Control Entry κάποιου αντικειμένου:
Δεξί κλικ στο αντικείμενο, properies, security, advanced, continue …
Και τώρα λίγη ΠΑΡΑΝΟΙΑ, ενώ στα Vista όλα τα αντικείμενα έχουν επίπεδο αξιοπιστίας όταν προσπαθήσουμε να το δούμε μέ “Δεξί κλικ στο αντικείμενο, properies, security, advanced, continue” δεν βλέπουμε τίποτα, WOW. Η MS για εσωτερικούς λόγους δεν εμφανίζει το mandatory level SACE στo GUI->audit που προαναφέραμε αν και προσφέρει ένα command line tool.
Λίγα λόγια για το εργαλείο icacls
Στις περιπτώσεις που αντιμετωπίζουμε προβλήματα πρόσβασης κάποιου αντικειμένου όπως :
α) όταν κάποια διαδικασία αποτυγχαίνει,
β) κάποιο προγραμμα δεν τρέχει,
γ) δεν μπορούμε να γράψουμε δεδομένα σε κάποιο φάκελο ένα από τα πράγματα που πρέπει να διερευνήσουμε είναι το WIC integrity level των αντικειμέων που εμπλέκοντε.
Για να δούμε το επίπεδο αξιοπιστίας ενός αντικειμένου, εκτελούμε την εντολή icacls ακολουθούμενη από την διαδρομή του αντικειμένου: πχ icacls c:\windows\explorer.exe
C:\windows\explorer.exe NT SERVICE\TrustedInstaller: (F)
BUILTIN\Administrators: (RX)
NT AUTHORITY\SYSTEM: (RX)
BUILTIN\Users: (RX)
F - full access, F - full access, M - modify access, RX - read and execute access, R - read-only access, W - write-only access
ΣΗΜΕΙΩΣΗ Αν ο explorer είχε madatory level τότε θα εμφανιζόταν η πληροφορία Mandatory Label \Medium Mandatory Level. Αν θέλουμε να διερευνήσουμε την αλληλεπίδραση αντικειμένων και εξετάζουμε τις παραμέτρους αξιοπιστίας αυτών με το εργαλείο icacls τότε θα πρέπει να έχουμε υπ’ όψιν μας ότι η μη εμφάνιση Mandatory Label σημαίνει επίπεδο αξιοπιστίας MEDIUM, εξ’ ορισμού.
Ο χρήστης για να αλλάξει την αξιοπιστία ενός αντικειμένου θα πρέπει να έχει κατάλληλα δικαιώματα (change permisions, take ownership) και άδειες (SerelabelPrivilege).
Σε καμία περίπτωση ενας χρήστης δεν μπορεί να δώσει μεγαλύτερη αξιοπιστία από αυτή που κατέχει ο ίδιος.
Με την εντολή Icacls filename /setinegritylevel H|M|L αλλάζουμε την αξιοπιστία ενός αντικειμένου.
Πως μπορώ να δώ το επίπεδο αξιοπιστίας ενός χρήστη;
Whoami /groups /fo list
Group Name: Mandatory Label\Medium Mandatory Level
Type: Unknown SID type
SID: S-1-16-8192
Attributes: Mandatory group, Enabled by default, Enabled group
1) Mandatory Label \Medium landatory Level, σημαίνει Medium Αξιοπιστία.
2) Ο χαρακτηρισμός 8192 στο SID σχετίζεται με medium Αξιοπιστία.
Όπως όλα τα αντικείμενα χαρακτηρίζοντε από ένα επίπεδο αξιοπιστίας έτσι και τα Processes.
ΣΗΜΑΝΤΙΚΗ ΣΗΜΕΙΩΣΗ Τροποποίηση αρχείων συστήματος.
Στα Xp, ο administrator έχει ΟΛΑ τα NTFS προνόμια για το φάκελο \WINDOWS (ορχεία συστήματος).
Στα Vista, ο φάκελος \WINDOWS δεν κληρονομεί τα προνόμια του root dir (C:\) και ο administrator έχει ΟΛΑ τα προνόμια για το \WINDOWS, εκτός από delete subfolders and files, change permissions, take ownership.
Δεν μπορούμε δηλαδή να αλλάξουμε το επίπεδο αξιοπιστίας του \WINDOWS διότι χρειαζόμαστε προνόμια change permissions και take ownership όπως προανέφερα. Επίσης στα Vista ο administrator ΔΕΝ είναι OWNER του \WINDOWS. Η MS, επίσης εκακε και άλλες αλλαγές στους υποφακέλους του \Windows που δεν είναι της στιγμής να αναφέρω.
ΠΡΑΚΤΙΚΗ ΣΥΜΒΟΥΛΗ Για όσους διερωτώνται πως θα κάμουμε troubleshooting, έχετε υπ’ όψιν ότι o administrator στα Vista διατειρεί ακόμα το προνόμιο “Take ownership”.
Συγκρισή Windows XP - Vista
Είναι γενικά αποδεκτό ότι στα Windows XP όλα αυτά τα χρόνια έχει γίνει ένα καλό crash test και ότι έχουν διορθωθεί πολλά προβλήματα με τα service packs, hot fixes critical updates …Είναι επίσης απόδεκτό ότι με τα νεαρά Vista υπάρχουν αρκετές τρύπες ασφάλειας.
Καμία λύση στα θέματα ασφάλειας δεν είναι τελεσίδική, ιδανική ... τη μία φορά δυναμώνει η ασπίδα, την άλλη το δόρυ, μετά η ασπίδα και η εναλαγές συνεχίζονται και θα συνεχίζονται ... Σίγουρα το WIC επιδέχεται βελτίωσης, π.χ. δεν υπάρχει γραφικό περιβάλλον παραμετροποίησης για να μην αναφέρω σοβαρότερα θέματα.
Θα μου επιτρέψετε λοιπόν να επαναλάβω ότι στα Vista η ασφάλεια έχει ανασχεδιασθεί και ότι έχουν προστεθεί ΠΑΜΠΟΛΛΟΙ και ανεξάρτητοι αμυντικοί μηχανισμοί (UAC, WIC, Application Isolation, Secured Services, Post-Boot protection, Code Integrity, Registry Virtualization, Data redirection, Rights Management Services .... Second line of defence, κάτι που περνάει από τον ένα μηχανισμό, θα μπορούσαμε λαικά να πουμε σκαλώνει παρακάτω ...
Για άλλη μια φορά, κατά την ταπεινή μου γνώμη, τα VISTA στο σύνολό τους είναι ΚΑΤΑ ΠΟΛΥ ΑΣΦΑΛΕΣΤΕΡΑ από τα προηγούμενα Windows XP.