Οι περισσότεροι νέοι υπολογιστές έχουν αποστείλει με το Έκδοση 64-bit των Windows - και τα Windows 7 και 8 - εδώ και χρόνια. Οι εκδόσεις 64 bit των Windows δεν αφορούν μόνο την αξιοποίηση πρόσθετης μνήμης. Είναι επίσης πιο ασφαλείς από τις εκδόσεις 32-bit.
Τα λειτουργικά συστήματα 64-bit δεν είναι απαλλαγμένα από κακόβουλα προγράμματα, αλλά έχουν περισσότερες δυνατότητες ασφαλείας. Μερικά από αυτά ισχύουν επίσης για εκδόσεις 64-bit άλλων λειτουργικών συστημάτων, όπως το Linux. Οι χρήστες Linux θα αποκτήσουν πλεονεκτήματα ασφάλειας με εναλλαγή σε μια έκδοση 64-bit της διανομής τους Linux .
Τυχαιοποίηση διάταξης χώρου διευθύνσεων
Το ASLR είναι ένα χαρακτηριστικό ασφαλείας που προκαλεί την τυχαία διάταξη των τοποθεσιών δεδομένων ενός προγράμματος στη μνήμη. Πριν από το ASLR, οι θέσεις δεδομένων ενός προγράμματος στη μνήμη θα μπορούσαν να είναι προβλέψιμες, γεγονός που έκανε τις επιθέσεις σε ένα πρόγραμμα πολύ πιο εύκολο. Με το ASLR, ένας εισβολέας πρέπει να μαντέψει τη σωστή θέση στη μνήμη όταν προσπαθεί να εκμεταλλευτεί μια ευπάθεια σε ένα πρόγραμμα. Μια λανθασμένη εικασία μπορεί να οδηγήσει σε διακοπή του προγράμματος, επομένως ο εισβολέας δεν θα μπορεί να προσπαθήσει ξανά.
Αυτή η δυνατότητα ασφάλειας χρησιμοποιείται επίσης σε εκδόσεις 32 bit των Windows και σε άλλα λειτουργικά συστήματα, αλλά είναι πολύ πιο ισχυρή σε εκδόσεις 64 bit των Windows. Ένα σύστημα 64-bit έχει πολύ μεγαλύτερο χώρο διευθύνσεων από ένα σύστημα 32-bit, καθιστώντας το ASLR πολύ πιο αποτελεσματικό.
Υποχρεωτική υπογραφή προγράμματος οδήγησης
Η έκδοση 64-bit των Windows επιβάλλει την υποχρεωτική υπογραφή προγράμματος οδήγησης. Όλος ο κωδικός προγράμματος οδήγησης στο σύστημα πρέπει να έχει ψηφιακή υπογραφή. Αυτό περιλαμβάνει προγράμματα οδήγησης συσκευών λειτουργίας πυρήνα και προγράμματα οδήγησης λειτουργίας χρήστη, όπως προγράμματα οδήγησης εκτυπωτή.
Η υποχρεωτική υπογραφή προγράμματος οδήγησης εμποδίζει την εκτέλεση μη υπογεγραμμένων προγραμμάτων οδήγησης που παρέχονται από κακόβουλο λογισμικό στο σύστημα. Οι δημιουργοί κακόβουλου λογισμικού θα πρέπει κατά κάποιο τρόπο να παρακάμψουν τη διαδικασία υπογραφής μέσω rootkit χρόνου εκκίνησης ή να καταφέρουν να υπογράψουν τα μολυσμένα προγράμματα οδήγησης με έγκυρο πιστοποιητικό που έχει κλαπεί από νόμιμο προγραμματιστή προγράμματος οδήγησης. Αυτό καθιστά πιο δύσκολο για τους μολυσμένους οδηγούς να τρέχουν στο σύστημα.
Η υπογραφή προγράμματος οδήγησης θα μπορούσε επίσης να εφαρμοστεί σε εκδόσεις 32 bit των Windows, αλλά δεν είναι - πιθανότατα για συνεχή συμβατότητα με παλιά προγράμματα οδήγησης 32 bit που ενδέχεται να μην έχουν υπογραφεί.
Για να απενεργοποιήσετε την υπογραφή προγράμματος οδήγησης κατά την ανάπτυξη σε εκδόσεις 64-bit των Windows, θα πρέπει επισυνάψτε ένα πρόγραμμα εντοπισμού σφαλμάτων πυρήνα ή χρησιμοποιήστε μια ειδική επιλογή εκκίνησης που δεν διατηρείται κατά την επανεκκίνηση του συστήματος.
Προστασία Patch πυρήνα
Το KPP, επίσης γνωστό ως PatchGuard, είναι ένα χαρακτηριστικό ασφαλείας που βρίσκεται μόνο σε εκδόσεις 64-bit των Windows. Το PatchGuard αποτρέπει το λογισμικό, ακόμη και τα προγράμματα οδήγησης που εκτελούνται σε λειτουργία πυρήνα, από την επιδιόρθωση του πυρήνα των Windows. Αυτό δεν ήταν πάντα υποστηριζόμενο, αλλά είναι τεχνικά δυνατό σε εκδόσεις 32 bit των Windows. Ορισμένα προγράμματα προστασίας από ιούς 32-bit έχουν εφαρμόσει τα μέτρα προστασίας από ιούς χρησιμοποιώντας την επιδιόρθωση του πυρήνα.
Το PatchGuard εμποδίζει τα προγράμματα οδήγησης συσκευών να διορθώσουν τον πυρήνα. Για παράδειγμα, το PatchGuard εμποδίζει τα rootkits να τροποποιήσουν τον πυρήνα των Windows για να ενσωματωθούν στο λειτουργικό σύστημα. Εάν εντοπιστεί μια προσπάθεια διόρθωσης του πυρήνα, τα Windows θα τερματιστούν αμέσως με μπλε οθόνη ή επανεκκίνηση.
Αυτή η προστασία θα μπορούσε να εφαρμοστεί στην έκδοση 32-bit των Windows, αλλά δεν ήταν - πιθανότατα για συνεχιζόμενη συμβατότητα με παλαιό λογισμικό 32-bit που εξαρτάται από αυτήν την πρόσβαση.
Προστασία εκτέλεσης δεδομένων
Το DEP επιτρέπει σε ένα λειτουργικό σύστημα να επισημαίνει ορισμένες περιοχές της μνήμης ως "μη εκτελέσιμες" ρυθμίζοντας ένα "bit NX". Οι περιοχές μνήμης που υποτίθεται ότι διατηρούν μόνο δεδομένα δεν θα είναι εκτελέσιμες.
Για παράδειγμα, σε ένα σύστημα χωρίς DEP, ένας εισβολέας θα μπορούσε να χρησιμοποιήσει κάποιο είδος υπερχείλισης buffer για να γράψει κώδικα σε μια περιοχή της μνήμης μιας εφαρμογής. Αυτός ο κωδικός θα μπορούσε τότε να εκτελεστεί. Με το DEP, ο εισβολέας θα μπορούσε να γράψει κώδικα σε μια περιοχή της μνήμης της εφαρμογής - αλλά αυτή η περιοχή θα επισημανθεί ως μη εκτελέσιμη και δεν θα μπορούσε να εκτελεστεί, κάτι που θα σταματούσε την επίθεση.
Τα λειτουργικά συστήματα 64-bit διαθέτουν DEP με βάση το υλικό. Ενώ αυτό υποστηρίζεται επίσης σε εκδόσεις 32 bit των Windows, εάν διαθέτετε μια σύγχρονη CPU, οι προεπιλεγμένες ρυθμίσεις είναι πιο αυστηρές και το DEP είναι πάντα ενεργοποιημένο για προγράμματα 64-bit, ενώ είναι απενεργοποιημένο από προεπιλογή για προγράμματα 32-bit για λόγους συμβατότητας.
Ο διάλογος διαμόρφωσης DEP στα Windows είναι λίγο παραπλανητικός. Οπως και Τεκμηρίωση της Microsoft δηλώνει, το DEP χρησιμοποιείται πάντα για όλες τις διαδικασίες 64-bit:
«Οι ρυθμίσεις διαμόρφωσης συστήματος DEP ισχύουν μόνο για εφαρμογές και διαδικασίες 32-bit όταν εκτελούνται σε εκδόσεις 32-bit ή 64-bit των Windows. Σε εκδόσεις 64-bit των Windows, εάν είναι διαθέσιμο DEP που υποστηρίζεται από υλικό, εφαρμόζεται πάντα σε διαδικασίες 64-bit και χώρους μνήμης πυρήνα και δεν υπάρχουν ρυθμίσεις διαμόρφωσης συστήματος για να την απενεργοποιήσετε. "
WOW64
Οι εκδόσεις 64-bit των Windows εκτελούν λογισμικό Windows 32-bit, αλλά το κάνουν μέσω ενός επιπέδου συμβατότητας γνωστού ως WOW64 (Windows 32-bit στα Windows 64-bit). Αυτό το επίπεδο συμβατότητας επιβάλλει ορισμένους περιορισμούς σε αυτά τα προγράμματα 32-bit, τα οποία ενδέχεται να αποτρέψουν τη σωστή λειτουργία του κακόβουλου λογισμικού 32-bit. Το κακόβουλο λογισμικό 32-bit δεν θα μπορεί επίσης να εκτελεστεί σε λειτουργία πυρήνα - μόνο τα προγράμματα 64-bit μπορούν να το κάνουν σε λειτουργικό σύστημα 64-bit - επομένως αυτό μπορεί να αποτρέψει τη σωστή λειτουργία ορισμένων παλαιότερων κακόβουλων προγραμμάτων 32 bit. Για παράδειγμα, εάν έχετε ένα παλιό CD ήχου με το rootkit της Sony, δεν θα μπορεί να εγκατασταθεί σε μια έκδοση 64-bit των Windows.
Οι εκδόσεις 64-bit των Windows προσφέρουν επίσης υποστήριξη για παλιά προγράμματα 16-bit. Εκτός από την αποτροπή της εκτέλεσης των αρχαίων ιών 16-bit, αυτό θα αναγκάσει επίσης τις εταιρείες να αναβαθμίσουν τα αρχαία τους προγράμματα 16-bit που θα μπορούσαν να είναι ευάλωτα και χωρίς δέσμευση.
Λαμβάνοντας υπόψη το πόσο διαδεδομένες εκδόσεις των Windows 64-bit είναι τώρα, το νέο κακόβουλο λογισμικό πιθανότατα θα μπορεί να εκτελεστεί σε Windows 64-bit. Ωστόσο, η έλλειψη συμβατότητας μπορεί να συμβάλει στην προστασία από παλιά κακόβουλα προγράμματα.
Εκτός αν χρησιμοποιείτε παρωχημένα παλιά προγράμματα 16-bit, αρχαίο υλικό που προσφέρει μόνο προγράμματα οδήγησης 32-bit ή έναν υπολογιστή με αρκετά παλιά CPU 32-bit, θα πρέπει να χρησιμοποιείτε την έκδοση 64-bit των Windows. Εάν δεν είστε βέβαιοι ποια έκδοση χρησιμοποιείτε, αλλά διαθέτετε έναν σύγχρονο υπολογιστή με Windows 7 ή 8, πιθανότατα χρησιμοποιείτε την έκδοση 64 bit.
Φυσικά, καμία από αυτές τις λειτουργίες ασφαλείας δεν είναι αλάνθαστη και μια έκδοση 64-bit των Windows εξακολουθεί να είναι ευάλωτη σε κακόβουλο λογισμικό. Ωστόσο, οι εκδόσεις 64-bit των Windows είναι σίγουρα πιο ασφαλείς.
Πιστωτική εικόνα: William Hook στο Flickr