Μια ευπάθεια στο OverlayFS επιτρέπει την κλιμάκωση των δικαιωμάτων χρήστη

ευπάθεια

Εάν γίνουν αντικείμενο εκμετάλλευσης, αυτά τα ελαττώματα μπορούν να επιτρέψουν στους εισβολείς να αποκτήσουν μη εξουσιοδοτημένη πρόσβαση σε ευαίσθητες πληροφορίες ή γενικά να προκαλέσουν προβλήματα

Δόθηκαν στη δημοσιότητα πληροφορίες για α ευπάθεια που εντοπίστηκε στον πυρήνα του Linux στην υλοποίηση του συστήματος αρχείων OverlayFS (αναφέρεται στο CVE-2023-0386).

Αποτυχία μπορεί να χρησιμοποιηθεί για να αποκτήσει πρόσβαση root σε συστήματα που έχουν εγκατεστημένο το υποσύστημα FUSE και επιτρέπουν την προσάρτηση κατατμήσεων OverlayFS από μη προνομιούχο χρήστη (ξεκινώντας με τον πυρήνα Linux 5.11 με τη συμπερίληψη ενός μη προνομιούχου χώρου ονομάτων χρήστη).

Η επίθεση γίνεται με αντιγραφή αρχείων με σημαίες setgid/setuid από ένα διαμέρισμα προσαρτημένο σε λειτουργία nosuid σε ένα διαμέρισμα OverlayFS που έχει ένα επίπεδο που σχετίζεται με το διαμέρισμα που επιτρέπει την εκτέλεση αρχείων suid.

Εντοπίστηκε ένα ελάττωμα στον πυρήνα του Linux όπου βρέθηκε μη εξουσιοδοτημένη πρόσβαση στην εκτέλεση αρχείου setuid με δυνατότητες στο υποσύστημα OverlayFS του πυρήνα Linux με τη μορφή ενός χρήστη που αντιγράφει ένα αρχείο με δυνατότητα από ένα nosuid mount σε άλλο mount. Αυτό το σφάλμα αντιστοίχισης uid επιτρέπει σε έναν τοπικό χρήστη να αυξήσει τα προνόμιά του στο σύστημα.

Τρωτό είναι παρόμοιο με το τεύχος CVE-2021-3847 που εντοπίστηκε το 2021, αλλά διαφέρει σε χαμηλότερες απαιτήσεις εκμετάλλευσης: το παλιό ζήτημα απαιτούσε χειρισμό του xattrs, ο οποίος περιορίζεται στη χρήση χώρων ονομάτων χρήστη (χώρος ονομάτων χρήστη) και το νέο τεύχος χρησιμοποιεί bit setgid /setuid που δεν αντιμετωπίζονται ειδικά στο χώρο ονομάτων χρήστη.

Ένας εισβολέας με χαμηλό προνομιούχο χρήστη σε μηχανή Linux με βάση επικάλυψης που έχει δυνατότητα αρχείου σε ένα από τα επίπεδα του μπορεί να κλιμακώσει τα προνόμιά του σε root αντιγράφοντας ένα συμβατό αρχείο από μια βάση nosuid σε μια άλλη βάση. Αυτή η ευπάθεια είναι παρόμοια με το CVE-2021-3847, αλλά απαιτεί λιγότερα δικαιώματα για να εκτελεστεί, επομένως έχει υψηλότερη προτεραιότητα.

Αλγόριθμος επίθεσης:

  • Με τη βοήθεια του υποσυστήματος FUSE, προσαρτάται ένα σύστημα αρχείων, στο οποίο υπάρχει ένα εκτελέσιμο αρχείο που ανήκει στον χρήστη root με τις σημαίες setuid / setgid, διαθέσιμο για εγγραφή σε όλους τους χρήστες. Κατά την τοποθέτηση, το FUSE ρυθμίζει τη λειτουργία σε "nosuid".
  • Διακοπή κοινής χρήσης χώρων ονομάτων χρήστη και σημείων προσάρτησης (χώρος ονομάτων χρήστη/προσάρτησης).
  • Το OverlayFS προσαρτάται με το FS που είχε δημιουργηθεί προηγουμένως στο FUSE ως το κάτω στρώμα και το επάνω επίπεδο ανάλογα με τον κατάλογο εγγραφής. Ο κατάλογος ανώτερου επιπέδου πρέπει να βρίσκεται σε ένα σύστημα αρχείων που δεν χρησιμοποιεί τη σημαία "nosuid" κατά την προσάρτηση.
  • Για ένα αρχείο suid στο διαμέρισμα FUSE, το βοηθητικό πρόγραμμα αφής αλλάζει τον χρόνο τροποποίησης, φέρνοντας το αντίγραφό του στο επάνω στρώμα του OverlayFS.
  • Κατά την αντιγραφή, ο πυρήνας δεν αφαιρεί τις σημαίες setgid/setuid, γεγονός που προκαλεί την εμφάνιση του αρχείου σε ένα διαμέρισμα που μπορεί να υποβληθεί σε επεξεργασία από το setgid/setuid.
  • Για να αποκτήσετε δικαιώματα root, απλώς εκτελέστε το αρχείο με τις σημαίες setgid/setuid από τον κατάλογο που είναι συνδεδεμένος στο ανώτερο στρώμα OverlayFS.

Περίπου τη λύση ευπάθειας, πρέπει να αναφερθεί ότι αυτό διορθώθηκε στον κλάδο πυρήνα 6.2. Εάν θέλετε να μάθετε περισσότερα σχετικά με τη δημοσίευση ενημερώσεων πακέτων σε διανομές, μπορείτε να το δείτε στις σελίδες: DebianUbuntuGentooRHELSUSEΜαλακό καπέλλοαψίδα .

Επιπλέον, μπορούμε να επισημάνουμε την αποκάλυψη των πληροφορίες από ερευνητές της ομάδας Google Project Zero σχετικά με τρία τρωτά σημεία που επιδιορθώθηκαν στον κύριο κλάδο του πυρήνα Linux 5.15, αλλά δεν μεταφέρθηκαν στα πακέτα πυρήνα RHEL 8.x/9.x και στη ροή CentOS 9.

  1. CVE-2023-1252: Πρόσβαση σε μια ήδη ελευθερωμένη περιοχή μνήμης στη δομή ovl_aio_req ενώ εκτελείτε πολλές λειτουργίες ταυτόχρονα στο OverlayFS που υλοποιείται στο σύστημα αρχείων Ext4. Δυνητικά, η ευπάθεια σάς επιτρέπει να αυξήσετε τα προνόμιά σας στο σύστημα.
  2. CVE-2023-0590: Αναφέρεται σε μια περιοχή μνήμης που έχει ήδη ελευθερωθεί στη συνάρτηση qdisc_graft(). Η επέμβαση υποτίθεται ότι περιορίζεται σε ματαίωση.
  3. CVE-2023-1249: πρόσβαση στην περιοχή μνήμης που έχει ήδη ελευθερωθεί στον κωδικό εισόδου ένδειξης σφαλμάτων λόγω αναπάντητης κλήσης mmap_lock στο file_files_note. Η επέμβαση υποτίθεται ότι περιορίζεται σε ματαίωση.