Τοπική ευπάθεια στα nftables που επιτρέπει την κλιμάκωση των προνομίων

Το Netfilter, ένα υποσύστημα πυρήνα Linux που χρησιμοποιείται για το φιλτράρισμα και την τροποποίηση πακέτων δικτύου, έχει μια ευπάθεια (δεν έχει εκχωρηθεί CVE) που θα μπορούσε να επιτρέψει σε έναν τοπικό χρήστη να εκτελέσει κώδικα σε επίπεδο πυρήνα και να ανυψώσει τα προνόμιά του στο σύστημα. Οι ερευνητές έχουν επιδείξει ένα exploit που επέτρεπε σε έναν τοπικό χρήστη να γίνει root στο Ubuntu 22.04 με τον πυρήνα 5.15.0-39-generic. Αρχικά, οι πληροφορίες για την ευπάθεια ήταν προγραμματισμένες να δημοσιευτούν στις 15 Αυγούστου, αλλά λόγω της αντιγραφής της επιστολής με το πρωτότυπο exploit στη δημόσια λίστα αλληλογραφίας, άρθηκε το εμπάργκο στην αποκάλυψη πληροφοριών.

Το πρόβλημα είναι παρόν από την κυκλοφορία του πυρήνα 5.8 και προκαλείται από μια υπερχείλιση buffer στον κώδικα για το χειρισμό λιστών συνόλων στη λειτουργική μονάδα nf_tables λόγω έλλειψης κατάλληλων ελέγχων στη συνάρτηση nft_set_elem_init. Το σφάλμα βρίσκεται σε μια αλλαγή που επεκτείνει την περιοχή αποθήκευσης για τα στοιχεία λίστας στα 128 byte.

Η επίθεση απαιτεί πρόσβαση σε nftables, τα οποία μπορούν να αποκτηθούν σε ξεχωριστό χώρο ονομάτων δικτύου (χώροι ονομάτων δικτύου) εάν έχετε τα δικαιώματα CLONE_NEWUSER, CLONE_NEWNS ή CLONE_NEWNET (για παράδειγμα, εάν μπορείτε να εκτελέσετε ένα απομονωμένο κοντέινερ). Η επιδιόρθωση δεν είναι ακόμη διαθέσιμη. Για να αποκλείσετε την εκμετάλλευση της ευπάθειας σε κανονικά συστήματα, θα πρέπει να βεβαιωθείτε ότι είναι απενεργοποιημένη η δυνατότητα δημιουργίας χώρων ονομάτων από μη προνομιούχους χρήστες ("sudo sysctl -w kernel.unprivileged_userns_clone=0").

Πηγή: opennet.ru

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