Ο πυρήνας Linux 5.4 έλαβε ενημερώσεις κώδικα για τον περιορισμό της πρόσβασης root στα εσωτερικά στοιχεία του πυρήνα

Linus Torvalds δέχτηκε το που περιλαμβάνεται στην επερχόμενη έκδοση του πυρήνα Linux 5.4 είναι ένα σύνολο ενημερώσεων κώδικα "κλείδωμα", προτείνεται David Howells (Red Hat) και Matthew Garrett (Μάθιου Γκαρέτ, λειτουργεί στην Google) για να περιορίσει την πρόσβαση του χρήστη root στον πυρήνα. Η λειτουργικότητα που σχετίζεται με το κλείδωμα περιλαμβάνεται σε μια προαιρετικά φορτωμένη μονάδα LSM (Ενότητα ασφαλείας Linux), το οποίο τοποθετεί ένα φράγμα μεταξύ του UID 0 και του πυρήνα, περιορίζοντας ορισμένες λειτουργίες χαμηλού επιπέδου.

Εάν ένας εισβολέας επιτύχει την εκτέλεση κώδικα με δικαιώματα ρίζας, μπορεί να εκτελέσει τον κώδικά του σε επίπεδο πυρήνα, για παράδειγμα, αντικαθιστώντας τον πυρήνα χρησιμοποιώντας kexec ή μνήμη ανάγνωσης/εγγραφής μέσω /dev/kmem. Η πιο προφανής συνέπεια μιας τέτοιας δραστηριότητας μπορεί να είναι παράκαμψη UEFI Secure Boot ή ανάκτηση ευαίσθητων δεδομένων που είναι αποθηκευμένα σε επίπεδο πυρήνα.

Αρχικά, οι λειτουργίες περιορισμού ρίζας αναπτύχθηκαν στο πλαίσιο της ενίσχυσης της προστασίας της επαληθευμένης εκκίνησης και οι διανομές χρησιμοποιούν ενημερώσεις κώδικα τρίτων για να αποκλείουν την παράκαμψη της Ασφαλούς εκκίνησης UEFI για αρκετό καιρό. Ταυτόχρονα, τέτοιοι περιορισμοί δεν συμπεριλήφθηκαν στην κύρια σύνθεση του πυρήνα λόγω διαφωνίες στην εφαρμογή τους και φόβοι διακοπής των υφιστάμενων συστημάτων. Η μονάδα "lockdown" απορρόφησε ενημερώσεις κώδικα που χρησιμοποιούνται ήδη σε διανομές, οι οποίες επανασχεδιάστηκαν με τη μορφή ξεχωριστού υποσυστήματος που δεν συνδέεται με την Ασφαλή εκκίνηση του UEFI.

Η λειτουργία κλειδώματος περιορίζει την πρόσβαση στα /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, kprobes λειτουργία εντοπισμού σφαλμάτων, mmiotrace, tracefs, BPF, PCMCIA CIS (Δομή πληροφοριών κάρτας), ορισμένες διεπαφές ACPI και CPU Οι καταχωρίσεις MSR, οι κλήσεις kexec_file και kexec_load είναι αποκλεισμένες, η κατάσταση αναστολής λειτουργίας απαγορεύεται, η χρήση DMA για συσκευές PCI είναι περιορισμένη, η εισαγωγή κωδικού ACPI από τις μεταβλητές EFI απαγορεύεται,
Δεν επιτρέπονται χειρισμοί με θύρες I/O, συμπεριλαμβανομένης της αλλαγής του αριθμού διακοπής και της θύρας I/O για τη σειριακή θύρα.

Από προεπιλογή, η μονάδα κλειδώματος δεν είναι ενεργή, δημιουργείται όταν η επιλογή SECURITY_LOCKDOWN_LSM καθορίζεται στο kconfig και ενεργοποιείται μέσω της παραμέτρου του πυρήνα "lockdown=", του αρχείου ελέγχου "/sys/kernel/security/lockdown" ή των επιλογών συναρμολόγησης LOCK_DOWN_KERNEL_FORCE_*, το οποίο μπορεί να λάβει τις αξίες "ακεραιότητα" και "εμπιστευτικότητα". Στην πρώτη περίπτωση, οι λειτουργίες που επιτρέπουν την πραγματοποίηση αλλαγών στον πυρήνα που εκτελείται από το χώρο χρήστη αποκλείονται και στη δεύτερη περίπτωση, η λειτουργία που μπορεί να χρησιμοποιηθεί για την εξαγωγή ευαίσθητων πληροφοριών από τον πυρήνα είναι επίσης απενεργοποιημένη.

Είναι σημαντικό να σημειωθεί ότι το κλείδωμα περιορίζει μόνο την τυπική πρόσβαση στον πυρήνα, αλλά δεν προστατεύει από τροποποιήσεις ως αποτέλεσμα εκμετάλλευσης τρωτών σημείων. Για τον αποκλεισμό αλλαγών στον πυρήνα που εκτελείται όταν χρησιμοποιούνται exploit από το έργο Openwall αναπτύσσεται ξεχωριστή ενότητα LKRG (Linux Kernel Runtime Guard).

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο