Έχουν δημοσιευτεί διορθωτικές εκδόσεις του X.Org Server 21.1.12 και του στοιχείου DDX (Device-Dependent X) xwayland 23.2.5, το οποίο επιτρέπει την εκκίνηση του X.Org Server για την οργάνωση της εκτέλεσης των εφαρμογών X11 σε περιβάλλοντα που βασίζονται στο Wayland. Η νέα έκδοση του X.Org Server διορθώνει 4 τρωτά σημεία. Μία ευπάθεια μπορεί να αξιοποιηθεί για την κλιμάκωση των προνομίων σε συστήματα όπου ο διακομιστής X εκτελείται ως root και για την εκτέλεση απομακρυσμένου κώδικα σε διαμορφώσεις όπου χρησιμοποιείται για πρόσβαση η προώθηση συνεδρίας X11 μέσω SSH.
Τα υπόλοιπα τρία τρωτά σημεία θα μπορούσαν να οδηγήσουν σε διαρροές μνήμης. υπηρέτης ή σε σφάλμα. Αυτά τα τρία τρωτά σημεία αξιοποιούνται χρησιμοποιώντας διαφορετική σειρά byte στην πλευρά του πελάτη από ό,τι στην υπηρέτηςΑπό αυτή την άποψη, η νέα έκδοση προσφέρει τη δυνατότητα αποκλεισμού συνδέσεων από υπολογιστές-πελάτες με διαφορετική σειρά byte. Για να απενεργοποιήσετε αυτήν τη δυνατότητα, μπορείτε να χρησιμοποιήσετε την παράμετρο διαμόρφωσης "AllowByteSwappedClients" ή την επιλογή γραμμής εντολών "+byteswappedclients".
Η αλλαγή της προεπιλεγμένης τιμής συμβάλλει στην προστασία από πιθανώς μη ανακαλυφθείσες ευπάθειες που χειρίζονται τη σειρά των byte. Η ουσία τέτοιων τρωτών σημείων είναι ότι η αλλαγή της σειράς byte για τιμές με μέγεθος οδηγεί σε εσφαλμένη ερμηνεία και ανάγνωση ή εγγραφή στη μνήμη ενός μεγέθους που είναι προφανώς μεγαλύτερο από αυτό που μπορεί να φιλοξενήσει η εκχωρημένη προσωρινή μνήμη.
Από προεπιλογή, η υποστήριξη για πελάτες με διαφορετική σειρά byte εξακολουθεί να διατηρείται, αν και στην πράξη, η μετατροπή παραγγελίας byte χρησιμοποιείται εξαιρετικά σπάνια τελευταία, καθώς οι σταθμοί εργασίας στους οποίους εκτελείται ο διακομιστής X είναι συνήθως εξοπλισμένοι με επεξεργαστές με σειρά byte μικρής κλίμακας (από το λιγότερο σημαντικό byte έως το πιο σημαντικό byte) και η σύνδεση σε αυτούς X clients με μεγάλη σειρά byte (z390).
Ζητήματα που εντοπίστηκαν:
- CVE-2024-31080, CVE-2024-31081, CVE-2024-31082 - ανάγνωση δεδομένων από μια περιοχή εκτός προσωρινής μνήμης μέσω χειρισμών με τα ProcXIGetSelectedEvents, ProcXIPassiveGrabDevice και ProcAppleDRIC που μεταβιβάζει μια τιμή με μέγεθος από μια συνάρτηση client-reatePix. Αντίστοιχα, εάν υπάρχουν διαφορές στη σειρά των byte μεταξύ του πελάτη και του διακομιστή, οι συναρτήσεις επιστρέφουν περισσότερα δεδομένα στον πελάτη. Τα δύο πρώτα τεύχη εμφανίζονται από την κυκλοφορία του xorg-server-1.7.0 (2009) και το τρίτο από το xorg-server-1.15.0 (2012).
- CVE-2024-31083 - Ευπάθεια χωρίς χρήση χρήστη στη συνάρτηση ProcRenderAddGlyphs, η οποία καλεί τη συνάρτηση AllocateGlyph() για την αποθήκευση νέων γλυφών που έχουν περάσει από τον πελάτη. Η συνάρτηση AllocateGlyph() επιστρέφει μια νέα γλυφή με επαναμέτρηση 0, και ο καθορισμός μιας γλυφής ξανά δεν αυξάνει την επαναμέτρηση, γι' αυτό ο πίνακας glyph_new μπορεί να περιέχει πολλαπλές εγγραφές που δείχνουν προς την ίδια γλυφή χωρίς επαναμέτρηση. Όταν η ProcRenderAddGlyphs() ελευθερώνει τη μνήμη που έχει εκχωρηθεί για μια γλυφή, μια επιπλέον παρουσία του δείκτη στη γλυφή του οποίου η μνήμη έχει ήδη ελευθερωθεί παραμένει στον πίνακα και μπορεί να χρησιμοποιηθεί. Το πρόβλημα παρουσιάζεται στον διακομιστή X.Org και δεν επηρεάζει το xwayland.
Πηγή: opennet.ru
