Ερευνητές ασφαλείας από την Google ανακάλυψαν ένα κενό ασφαλείας στον πυρήνα Linux Υπάρχει ένα θέμα ευπάθειας κλιμάκωσης δικαιωμάτων (CVE-2025-38236). Μεταξύ άλλων, το θέμα ευπάθειας επιτρέπει την παράκαμψη του μηχανισμού απομόνωσης sandbox που χρησιμοποιείται στο Google Chrome και την επίτευξη εκτέλεσης κώδικα σε επίπεδο πυρήνα κατά την εκτέλεση κώδικα στο πλαίσιο της διαδικασίας απόδοσης sandbox του Chrome (για παράδειγμα, εκμεταλλευόμενοι ένα άλλο θέμα ευπάθειας στο Chrome). Το πρόβλημα εκδηλώνεται ξεκινώντας από τον πυρήνα. Linux 6.9 και διορθώθηκε στις ενημερώσεις του πυρήνα Linux 6.1.143, 6.6.96, 6.12.36 και 6.15.5. Ένα πρωτότυπο exploit είναι διαθέσιμο για λήψη.
Η ευπάθεια προκαλείται από ένα σφάλμα υλοποίησης στη σημαία MSG_OOB, η οποία μπορεί να οριστεί για υποδοχές AF_UNIX. Η σημαία MSG_OOB ("εκτός ζώνης") επιτρέπει την προσθήκη ενός επιπλέον byte στα δεδομένα που αποστέλλονται, το οποίο ο παραλήπτης μπορεί να διαβάσει πριν λάβει τα υπόλοιπα δεδομένα. Αυτή η σημαία προστέθηκε στον πυρήνα. Linux Η έκδοση 5.15 ζητήθηκε από την Oracle και προτάθηκε για κατάργηση πέρυσι, καθώς δεν υιοθετήθηκε ευρέως.
Η υλοποίηση sandbox του Chrome επέτρεπε λειτουργίες socket UNIX και κλήσεις συστήματος send()/recv() όπου η σημαία MSG_OOB επιτρεπόταν μαζί με άλλες επιλογές και δεν φιλτράρονταν ξεχωριστά. Ένα σφάλμα στην υλοποίηση MSG_OOB επέτρεψε την εμφάνιση μιας συνθήκης use-after-free μετά την εκτέλεση μιας συγκεκριμένης ακολουθίας κλήσεων συστήματος: char dummy; int socks[2]; socketpair(AF_UNIX, SOCK_STREAM, 0, socks); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); send(socks[1], "A", 1, MSG_OOB); recv(socks[0], &dummy, 1, MSG_OOB); send(socks[0], "A", 0, MSG_OOB); recv(socks[1], &dummy, XNUMX, MSG_OOB); send(socks[XNUMX], "A", XNUMX, MSG_OOB); recv(socks[XNUMX], &dummy, XNUMX, XNUMX); recv(socks[XNUMX], &dummy, XNUMX, MSG_OOB);
Πηγή: opennet.ru
