OpenBSD: μοναδικά Kernels σε κάθε επανεκκίνηση

OpenBSD: Μια νέα λειτουργία που προστέθηκε στα snapshots δοκιμών των νέων εκδόσεων του OpenBSD θα δημιουργεί ένα μοναδικό πυρήνα (Kernel) κάθε φορά που ένας χρήστης του OpenBSD επανεκκινήσει ή αναβαθμίσει τον υπολογιστή του.

Αυτή η λειτουργία ονομάζεται KARL από το Kernel Address Randomized Link, ή Τυχαία διεύθυνση του πυρήνα, και λειτουργεί με την επανασύνδεση (relinking) των εσωτερικών αρχείων πυρήνα με τυχαία σειρά, ώστε να δημιουργείται κάθε φορά ένα μοναδικό kernel blob.OpenBSD

Επί του παρόντος, στις σταθερές εκδόσεις του OpenBSD το kernel χρησιμοποιεί μια προκαθορισμένη σειρά για να πραγματοποιήσει relinking και να φορτώσει εσωτερικά αρχεία μέσα στο kernel binary. Αυτό έχει σαν αποτέλεσμα να υπάρχει ο ίδιος πυρήνα για όλους τους χρήστες.

OpenBSD με KARL και όχι ASLR

Το KARL αναπτύχθηκε από τον Theo de Raadt, και λειτουργεί δημιουργώντας ένα νέο kernel binary κατά την εγκατάσταση, την αναβάθμιση και τον χρόνο εκκίνησης. Αν ο χρήστης εκκινήσει, αναβαθμίσει ή επανεκκινήσει το μηχάνημά του, ένας νέος δημιουργημένος πυρήνας θα αντικαταστήσει το υπάρχον kernel και το λειτουργικό θα δημιουργήσει ένα νέο kernel binary το οποίο θα χρησιμοποιηθεί στην επόμενη εκκίνηση/αναβάθμιση/επανεκκίνηση.

Το KARL δεν πρέπει να συγχέεται με το ASLR ή Address Space Layout Randomization, μια που δίνει τυχαία διεύθυνση μνήμης (memory address) όταν εκτελείται μια εφαρμογή. Έτσι τα δεν μπορούν να στοχεύσουν μια συγκεκριμένη περιοχή μνήμης που γνωρίζει ο επιτιθέμενος ότι τρέχει κάποια εφαρμογή ή ο πυρήνας.

Αντίθετα, το KARL δημιουργεί kernel binaries με τυχαίες εσωτερικές δομές, έτσι ώστε τα exploits δεν μπορούν να επιτεθούν σε εσωτερικές λειτουργίες του πυρήνα, pointers, ή objects. Μια τεχνική εξήγηση είναι διαθέσιμη στο παρακάτω link.

http://undeadly.org/cgi?action=article&sid=20170701170044&mode=expanded&count=9

To χαρακτηριστικό αναπτύχθηκε τους τελευταίους δύο μήνες

Οι εργασίες για αυτό το χαρακτηριστικό άρχισαν τον Μάιο και συζητήθηκαν για πρώτη φορά στα μέσα Ιουνίου μέσω του OpenBSD technical mailing list. Το KARL προστέθηκε πρόσφατα σε εκδόσεις snapshot του OpenBSD 6.1.

Αυτό το νέο χαρακτηριστικό φαίνεται να είναι μοναδικό στο OpenBSD, αφού δεν γνωρίζουμε κάτι ανάλογο για το Linux.

Το Linux μόλις πρόσθεσε υποστήριξη για το Kernel Address Space Layout Randomization (KASLR), μια λειτουργία που κάνει port το ASLR στο ίδιο τον πυρήνα, φορτώνοντας τον πυρήνα σε μια τυχαία διευθύνση μνήμης.

Αυτή η λειτουργία ενεργοποιήθηκε από προεπιλογή στο Linux 4.12, που κυκλοφόρησε την περασμένη εβδ. Η διαφορά μεταξύ των δύο είναι ότι το KARL φορτώνει διαφορετικά kernel binaries στο ίδιο μέρος, ενώ το KASLR φορτώνει το ίδιο kernel binary σε τυχαίες θέσεις. Ίδιος στόχος, διαφορετικά μονοπάτια.

Όσο για τα Windows, το KARL δεν υποστηρίζεται, αλλά η Microsoft χρησιμοποιεί το KASLR εδώ και πολλά χρόνια.

Θα πρέπει να αναφέρουμε ότι η νέα λειτουργία του OpenBSD φαίνεται να παρέχει πολύ περισσότερη ασφάλεια από τις λύσεις που χρησιμοποιούν η Microsoft και το Linux.

Ίσως μετά από αρκετές δοκιμές δούμε το KARL και σε άλλα λειτουργικά συστήματά.

iGuRu.gr The Best Technology Site in Greecefgns

κάθε δημοσίευση, άμεσα στο inbox σας

Προστεθείτε στους 2.083 εγγεγραμμένους.

Written by giorgos

Ο Γιώργος ακόμα αναρωτιέται τι κάνει εδώ....

Αφήστε μια απάντηση

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

Το μήνυμα σας δεν θα δημοσιευτεί εάν:
1. Περιέχει υβριστικά, συκοφαντικά, ρατσιστικά, προσβλητικά ή ανάρμοστα σχόλια.
2. Προκαλεί βλάβη σε ανηλίκους.
3. Παρενοχλεί την ιδιωτική ζωή και τα ατομικά και κοινωνικά δικαιώματα άλλων χρηστών.
4. Διαφημίζει προϊόντα ή υπηρεσίες ή διαδικτυακούς τόπους .
5. Περιέχει προσωπικές πληροφορίες (διεύθυνση, τηλέφωνο κλπ).